From ee168310ec4227174ace489bf5f81f8c2f91cde0 Mon Sep 17 00:00:00 2001 From: Bdale Garbee Date: Mon, 1 Nov 2010 17:20:21 -0600 Subject: [PATCH] Imported Upstream version 1.24 --- COPYING | 18 +- ChangeLog | 1040 +- ChangeLog.1 | 2 +- Makefile.am | 4 +- Makefile.in | 178 +- NEWS | 120 +- README | 7 +- THANKS | 2 +- aclocal.m4 | 21 +- build-aux/c++defs.h | 82 +- build-aux/config.guess | 14 +- build-aux/config.sub | 61 +- build-aux/depcomp | 62 +- build-aux/mdate-sh | 23 +- build-aux/texinfo.tex | 743 +- build-aux/warn-on-use.h | 40 +- config.h.in | 474 +- configure | 10946 +++++++++++++------- configure.ac | 10 +- doc/Makefile.am | 5 +- doc/Makefile.in | 176 +- doc/dumpdir.texi | 8 +- doc/fdl.texi | 110 +- doc/gendocs_template | 8 +- doc/intern.texi | 5 +- doc/mastermenu.el | 4 +- doc/{getdate.texi => parse-datetime.texi} | 26 +- doc/snapshot.texi | 1 - doc/sparse.texi | 1 - doc/stamp-vti | 8 +- doc/tar-snapshot-edit.texi | 1 - doc/tar.info | 775 +- doc/tar.info-1 | 161 +- doc/tar.info-2 | 1048 +- doc/tar.texi | 750 +- doc/value.texi | 2 - doc/version.texi | 8 +- gnu/Makefile.am | 334 +- gnu/Makefile.in | 556 +- gnu/anytostr.c | 56 + gnu/areadlink-with-size.c | 106 - gnu/areadlink.c | 133 + gnu/areadlinkat.c | 147 + gnu/argp-help.c | 10 +- gnu/argp-namefrob.h | 2 +- gnu/at-func2.c | 284 + gnu/btowc.c | 3 +- gnu/canonicalize-lgpl.c | 381 + gnu/canonicalize.c | 292 - gnu/canonicalize.h | 43 - gnu/chdir-long.c | 2 +- gnu/cloexec.c | 85 + gnu/cloexec.h | 40 + gnu/close-stream.c | 6 +- gnu/config.charset | 42 +- gnu/dirent.in.h | 24 +- gnu/errno.in.h | 7 + gnu/error.c | 32 +- gnu/exclude.c | 24 +- gnu/fcntl.in.h | 13 + gnu/fdopendir.c | 96 +- gnu/fdutimensat.c | 59 + gnu/file-set.c | 76 - gnu/file-set.h | 14 - gnu/filenamecat-lgpl.c | 90 + gnu/{same.h => filenamecat.h} | 18 +- gnu/float+.h | 6 +- gnu/float.in.h | 1 + gnu/fseeko.c | 5 +- gnu/ftruncate.c | 92 - gnu/futimens.c | 39 + gnu/getcwd.c | 35 +- gnu/getopt.c | 43 +- gnu/getopt.in.h | 1 + gnu/getopt_int.h | 69 +- gnu/gettext.h | 2 +- gnu/hash-pjw.h | 25 - gnu/hash-triple.c | 79 - gnu/hash-triple.h | 24 - gnu/hash.c | 110 +- gnu/hash.h | 2 + gnu/imaxtostr.c | 4 +- gnu/inttostr.c | 58 +- gnu/inttostr.h | 5 +- gnu/inttypes.in.h | 8 +- gnu/langinfo.in.h | 12 + gnu/lchown.c | 3 +- gnu/link.c | 205 + gnu/linkat.c | 316 + gnu/localcharset.c | 7 +- gnu/malloc.c | 7 +- gnu/malloca.c | 8 +- gnu/mkdir.c | 3 +- gnu/mkfifo.c | 60 + gnu/mkfifoat.c | 57 + gnu/mknod.c | 76 + gnu/mknodat.c | 59 + gnu/nl_langinfo.c | 10 + gnu/obstack.h | 8 +- gnu/offtostr.c | 4 +- gnu/open.c | 3 +- gnu/openat-proc.c | 2 +- gnu/openat.c | 2 +- gnu/openat.h | 18 +- gnu/{getdate.c => parse-datetime.c} | 187 +- gnu/{getdate.h => parse-datetime.h} | 2 +- gnu/{getdate.y => parse-datetime.y} | 19 +- gnu/priv-set.c | 9 +- gnu/priv-set.h | 2 +- gnu/readlinkat.c | 49 + gnu/realloc.c | 7 +- gnu/regcomp.c | 22 +- gnu/regex.h | 20 +- gnu/regex_internal.c | 4 +- gnu/regex_internal.h | 2 + gnu/rename.c | 475 + gnu/renameat.c | 159 + gnu/rmdir.c | 48 - gnu/same.c | 125 - gnu/save-cwd.c | 4 +- gnu/savedir.c | 25 +- gnu/savedir.h | 8 +- gnu/setenv.c | 13 +- gnu/stdarg.in.h | 1 + gnu/stdbool.in.h | 3 + gnu/stddef.in.h | 1 + gnu/stdint.in.h | 16 +- gnu/stdio-impl.h | 11 +- gnu/stdio-write.c | 2 - gnu/stdio.in.h | 131 +- gnu/stdlib.in.h | 98 +- gnu/strerror.c | 9 + gnu/string.in.h | 211 +- gnu/strings.in.h | 1 + gnu/strtol.c | 20 +- gnu/{hash-pjw.c => symlink.c} | 49 +- gnu/symlinkat.c | 78 + gnu/sys_stat.in.h | 19 +- gnu/sys_time.in.h | 3 +- gnu/sysexits.in.h | 9 +- gnu/time.in.h | 122 +- gnu/time_r.c | 4 +- gnu/timespec.h | 32 +- gnu/uinttostr.c | 4 +- gnu/umaxtostr.c | 4 +- gnu/unistd.in.h | 234 +- gnu/{unitypes.h => unitypes.in.h} | 0 gnu/{uniwidth.h => uniwidth.in.h} | 0 gnu/uniwidth/width.c | 4 +- gnu/unlink.c | 12 +- gnu/utimens.c | 28 +- gnu/utimens.h | 10 +- gnu/utimensat.c | 138 + gnu/vasnprintf.c | 616 +- gnu/verify.h | 41 +- gnu/wchar.in.h | 9 +- gnu/wctype.in.h | 36 +- gnu/wcwidth.c | 7 +- gnu/xalloc.h | 43 +- gnu/xmalloc.c | 4 +- lib/Makefile.am | 3 +- lib/Makefile.in | 174 +- lib/paxerror.c | 6 - lib/paxlib.h | 5 +- lib/rtapelib.c | 8 +- m4/argp.m4 | 28 +- m4/asm-underscore.m4 | 48 + m4/bison.m4 | 6 +- m4/btowc.m4 | 44 +- m4/chown.m4 | 3 +- m4/cloexec.m4 | 10 + m4/codeset.m4 | 12 +- m4/dirent_h.m4 | 8 +- m4/dirfd.m4 | 14 +- m4/environ.m4 | 16 +- m4/errno_h.m4 | 7 +- m4/error.m4 | 19 +- m4/fchdir.m4 | 4 +- m4/fcntl-o.m4 | 10 +- m4/fcntl_h.m4 | 6 +- m4/fdopendir.m4 | 9 +- m4/filenamecat.m4 | 19 + m4/float_h.m4 | 4 +- m4/fnmatch.m4 | 4 +- m4/fseeko.m4 | 31 +- m4/ftruncate.m4 | 46 - m4/futimens.m4 | 61 + m4/getcwd-path-max.m4 | 4 +- m4/getopt.m4 | 67 +- m4/getpagesize.m4 | 5 +- m4/gettext.m4 | 58 +- m4/gnulib-common.m4 | 67 +- m4/gnulib-comp.m4 | 528 +- m4/iconv.m4 | 97 +- m4/include_next.m4 | 36 +- m4/intlmacosx.m4 | 13 +- m4/intmax_t.m4 | 13 +- m4/inttostr.m4 | 7 +- m4/inttypes-pri.m4 | 14 +- m4/inttypes.m4 | 4 +- m4/inttypes_h.m4 | 17 +- m4/langinfo_h.m4 | 39 +- m4/lib-ld.m4 | 19 +- m4/lib-link.m4 | 51 +- m4/libunistring-base.m4 | 141 + m4/link-follow.m4 | 81 + m4/link.m4 | 38 + m4/linkat.m4 | 99 + m4/locale-fr.m4 | 9 +- m4/locale-ja.m4 | 11 +- m4/locale-zh.m4 | 11 +- m4/lseek.m4 | 14 +- m4/lstat.m4 | 43 +- m4/malloc.m4 | 45 +- m4/mbrtowc.m4 | 97 +- m4/mbsinit.m4 | 12 +- m4/mbsrtowcs.m4 | 28 +- m4/memchr.m4 | 19 +- m4/mkfifo.m4 | 45 + m4/mkfifoat.m4 | 24 + m4/mknod.m4 | 50 + m4/mktime.m4 | 7 +- m4/open.m4 | 17 +- m4/openat.m4 | 19 +- m4/{getdate.m4 => parse-datetime.m4} | 8 +- m4/po.m4 | 2 +- m4/printf.m4 | 736 +- m4/priv-set.m4 | 3 +- m4/progtest.m4 | 19 +- m4/readlinkat.m4 | 21 + m4/realloc.m4 | 31 +- m4/regex.m4 | 18 +- m4/rename.m4 | 158 + m4/renameat.m4 | 28 + m4/rmdir.m4 | 47 +- m4/same.m4 | 15 - m4/setenv.m4 | 18 +- m4/size_max.m4 | 14 +- m4/ssize_t.m4 | 12 +- m4/stat.m4 | 4 +- m4/stdarg.m4 | 22 +- m4/stdbool.m4 | 128 +- m4/stddef_h.m4 | 4 +- m4/stdint.m4 | 14 +- m4/stdint_h.m4 | 15 +- m4/stdio_h.m4 | 13 +- m4/stdlib_h.m4 | 29 +- m4/strdup.m4 | 23 +- m4/string_h.m4 | 18 +- m4/strings_h.m4 | 6 +- m4/strndup.m4 | 14 +- m4/strnlen.m4 | 22 +- m4/symlink.m4 | 38 + m4/symlinkat.m4 | 21 + m4/sys_stat_h.m4 | 6 +- m4/sys_time_h.m4 | 6 +- m4/time_h.m4 | 32 +- m4/time_r.m4 | 50 +- m4/unistd_h.m4 | 26 +- m4/unlink.m4 | 79 +- m4/utimensat.m4 | 56 + m4/vasnprintf.m4 | 14 +- m4/wchar_h.m4 | 6 +- m4/wchar_t.m4 | 12 +- m4/wcrtomb.m4 | 76 +- m4/wctype_h.m4 | 18 +- m4/wcwidth.m4 | 27 +- m4/wint_t.m4 | 12 +- po/LINGUAS | 1 + po/Makevars | 2 +- po/bg.gmo | Bin 62133 -> 61781 bytes po/bg.po | 952 +- po/ca.gmo | Bin 0 -> 59646 bytes po/ca.po | 2767 +++++ po/cs.gmo | Bin 59460 -> 60055 bytes po/cs.po | 946 +- po/da.gmo | Bin 12130 -> 55982 bytes po/da.po | 2560 ++--- po/de.gmo | Bin 53993 -> 59785 bytes po/de.po | 1160 ++- po/el.gmo | Bin 15177 -> 14878 bytes po/el.po | 942 +- po/es.gmo | Bin 25462 -> 25164 bytes po/es.po | 952 +- po/et.gmo | Bin 44042 -> 54699 bytes po/et.po | 1342 ++- po/eu.gmo | Bin 35166 -> 34901 bytes po/eu.po | 948 +- po/fi.gmo | Bin 34816 -> 34577 bytes po/fi.po | 948 +- po/fr.gmo | Bin 56283 -> 62196 bytes po/fr.po | 1133 +- po/ga.gmo | Bin 55515 -> 55221 bytes po/ga.po | 948 +- po/gl.gmo | Bin 11179 -> 10990 bytes po/gl.po | 942 +- po/hr.gmo | Bin 11047 -> 10878 bytes po/hr.po | 943 +- po/hu.gmo | Bin 61818 -> 61925 bytes po/hu.po | 950 +- po/id.gmo | Bin 57026 -> 57602 bytes po/id.po | 942 +- po/it.gmo | Bin 53212 -> 58935 bytes po/it.po | 1193 +-- po/ja.gmo | Bin 54408 -> 54950 bytes po/ja.po | 950 +- po/ko.gmo | Bin 4108 -> 4121 bytes po/ko.po | 937 +- po/ky.gmo | Bin 62855 -> 62502 bytes po/ky.po | 948 +- po/ms.gmo | Bin 10123 -> 9953 bytes po/ms.po | 942 +- po/nb.gmo | Bin 4547 -> 4558 bytes po/nb.po | 932 +- po/nl.gmo | Bin 53111 -> 59125 bytes po/nl.po | 1253 ++- po/pl.gmo | Bin 59052 -> 59664 bytes po/pl.po | 946 +- po/pt.gmo | Bin 3731 -> 3744 bytes po/pt.po | 931 +- po/pt_BR.gmo | Bin 11199 -> 11024 bytes po/pt_BR.po | 942 +- po/ro.gmo | Bin 24393 -> 24113 bytes po/ro.po | 942 +- po/ru.gmo | Bin 69467 -> 76181 bytes po/ru.po | 1189 +-- po/sk.gmo | Bin 10798 -> 10626 bytes po/sk.po | 946 +- po/sl.gmo | Bin 42569 -> 42317 bytes po/sl.po | 949 +- po/sv.gmo | Bin 56245 -> 56844 bytes po/sv.po | 969 +- po/tar.pot | 920 +- po/tr.gmo | Bin 48484 -> 48205 bytes po/tr.po | 948 +- po/uk.gmo | Bin 76297 -> 76457 bytes po/uk.po | 934 +- po/vi.gmo | Bin 62654 -> 63276 bytes po/vi.po | 953 +- po/zh_CN.gmo | Bin 52610 -> 53149 bytes po/zh_CN.po | 946 +- po/zh_TW.gmo | Bin 48900 -> 48656 bytes po/zh_TW.po | 948 +- rmt/Makefile.in | 172 +- rmt/rmt.c | 227 +- scripts/Makefile.in | 172 +- scripts/backup-specs | 6 +- scripts/dump-remind.in | 16 +- src/Makefile.am | 2 +- src/Makefile.in | 174 +- src/arith.h | 2 +- src/buffer.c | 351 +- src/checkpoint.c | 25 +- src/common.h | 105 +- src/compare.c | 44 +- src/create.c | 469 +- src/delete.c | 4 +- src/exit.c | 2 +- src/extract.c | 958 +- src/incremen.c | 178 +- src/list.c | 95 +- src/misc.c | 259 +- src/names.c | 206 +- src/sparse.c | 124 +- src/suffix.c | 7 +- src/system.c | 41 +- src/tar.c | 435 +- src/tar.h | 24 +- src/transform.c | 86 +- src/unlink.c | 14 +- src/update.c | 34 +- src/warning.c | 5 +- src/xheader.c | 11 +- tests/Makefile.am | 21 +- tests/Makefile.in | 193 +- tests/append01.at | 5 +- tests/append02.at | 4 +- tests/atlocal.in | 7 +- tests/backup01.at | 4 +- tests/chtype.at | 4 +- tests/comprec.at | 2 +- tests/delete03.at | 4 +- tests/exclude.at | 4 +- tests/exclude06.at | 47 + tests/extrac01.at | 2 +- tests/extrac03.at | 2 +- tests/extrac04.at | 2 +- tests/extrac05.at | 6 +- tests/extrac06.at | 8 +- tests/extrac07.at | 8 +- tests/extrac08.at | 4 +- tests/extrac09.at | 48 + tests/extrac10.at | 44 + tests/extrac11.at | 77 + tests/extrac12.at | 39 + tests/extrac13.at | 53 + tests/extrac14.at | 36 + tests/extrac15.at | 44 + tests/filerem01.at | 3 +- tests/filerem02.at | 9 +- tests/genfile.c | 17 +- tests/gzip.at | 11 +- tests/incr01.at | 6 +- tests/incr02.at | 4 +- tests/incr03.at | 11 +- tests/incr06.at | 2 - tests/label02.at | 2 +- tests/label03.at | 87 + tests/label04.at | 51 + tests/label05.at | 48 + tests/link01.at | 2 +- tests/link02.at | 7 +- tests/link03.at | 8 +- tests/link04.at | 64 + tests/listed01.at | 1 - tests/listed02.at | 8 +- tests/listed03.at | 47 + tests/long01.at | 3 +- tests/longv7.at | 1 - tests/multiv01.at | 4 +- tests/multiv02.at | 6 +- tests/multiv03.at | 5 +- tests/multiv05.at | 5 +- tests/multiv06.at | 1 - tests/multiv07.at | 4 +- tests/multiv08.at | 48 + tests/options.at | 1 - tests/options02.at | 1 - tests/package.m4 | 4 +- tests/pipe.at | 2 +- tests/remfiles01.at | 5 +- tests/remfiles03.at | 43 + tests/rename01.at | 4 +- tests/rename02.at | 8 +- tests/rename03.at | 6 +- tests/rename04.at | 2 - tests/rename05.at | 6 +- tests/same-order01.at | 5 +- tests/same-order02.at | 6 +- tests/shortfile.at | 1 - tests/shortupd.at | 1 - tests/sigpipe.at | 39 + tests/sparse01.at | 3 +- tests/sparse02.at | 2 +- tests/sparsemv.at | 4 +- tests/sparsemvp.at | 5 +- tests/spmvp00.at | 2 +- tests/spmvp10.at | 2 +- tests/star/README | 6 +- tests/star/gtarfail2.at | 2 - tests/star/multi-fail.at | 1 - tests/star/pax-big-10g.at | 2 - tests/star/quicktest.sh | 8 +- tests/star/ustar-big-2g.at | 1 - tests/star/ustar-big-8g.at | 1 - tests/testsuite | 6487 ++++++++---- tests/testsuite.at | 22 +- tests/update01.at | 1 - tests/update02.at | 1 - tests/volsize.at | 2 - tests/volume.at | 1 - tests/xform-h.at | 12 +- tests/xform01.at | 43 + 463 files changed, 49699 insertions(+), 31372 deletions(-) rename doc/{getdate.texi => parse-datetime.texi} (95%) create mode 100644 gnu/anytostr.c delete mode 100644 gnu/areadlink-with-size.c create mode 100644 gnu/areadlink.c create mode 100644 gnu/areadlinkat.c create mode 100644 gnu/at-func2.c create mode 100644 gnu/canonicalize-lgpl.c delete mode 100644 gnu/canonicalize.c delete mode 100644 gnu/canonicalize.h create mode 100644 gnu/cloexec.c create mode 100644 gnu/cloexec.h create mode 100644 gnu/fdutimensat.c delete mode 100644 gnu/file-set.c delete mode 100644 gnu/file-set.h create mode 100644 gnu/filenamecat-lgpl.c rename gnu/{same.h => filenamecat.h} (64%) delete mode 100644 gnu/ftruncate.c create mode 100644 gnu/futimens.c delete mode 100644 gnu/hash-pjw.h delete mode 100644 gnu/hash-triple.c delete mode 100644 gnu/hash-triple.h create mode 100644 gnu/link.c create mode 100644 gnu/linkat.c create mode 100644 gnu/mkfifo.c create mode 100644 gnu/mkfifoat.c create mode 100644 gnu/mknod.c create mode 100644 gnu/mknodat.c rename gnu/{getdate.c => parse-datetime.c} (96%) rename gnu/{getdate.h => parse-datetime.h} (92%) rename gnu/{getdate.y => parse-datetime.y} (98%) create mode 100644 gnu/readlinkat.c create mode 100644 gnu/rename.c create mode 100644 gnu/renameat.c delete mode 100644 gnu/same.c rename gnu/{hash-pjw.c => symlink.c} (52%) create mode 100644 gnu/symlinkat.c rename gnu/{unitypes.h => unitypes.in.h} (100%) rename gnu/{uniwidth.h => uniwidth.in.h} (100%) create mode 100644 gnu/utimensat.c create mode 100644 m4/asm-underscore.m4 create mode 100644 m4/cloexec.m4 create mode 100644 m4/filenamecat.m4 delete mode 100644 m4/ftruncate.m4 create mode 100644 m4/futimens.m4 create mode 100644 m4/libunistring-base.m4 create mode 100644 m4/link-follow.m4 create mode 100644 m4/link.m4 create mode 100644 m4/linkat.m4 create mode 100644 m4/mkfifo.m4 create mode 100644 m4/mkfifoat.m4 create mode 100644 m4/mknod.m4 rename m4/{getdate.m4 => parse-datetime.m4} (92%) create mode 100644 m4/readlinkat.m4 create mode 100644 m4/rename.m4 create mode 100644 m4/renameat.m4 delete mode 100644 m4/same.m4 create mode 100644 m4/symlink.m4 create mode 100644 m4/symlinkat.m4 create mode 100644 m4/utimensat.m4 create mode 100644 po/ca.gmo create mode 100644 po/ca.po create mode 100644 tests/exclude06.at create mode 100644 tests/extrac09.at create mode 100644 tests/extrac10.at create mode 100644 tests/extrac11.at create mode 100644 tests/extrac12.at create mode 100644 tests/extrac13.at create mode 100644 tests/extrac14.at create mode 100644 tests/extrac15.at create mode 100644 tests/label03.at create mode 100644 tests/label04.at create mode 100644 tests/label05.at create mode 100644 tests/link04.at create mode 100644 tests/listed03.at create mode 100644 tests/multiv08.at create mode 100644 tests/remfiles03.at create mode 100644 tests/sigpipe.at create mode 100644 tests/xform01.at diff --git a/COPYING b/COPYING index 4432540..94a9ed0 100644 --- a/COPYING +++ b/COPYING @@ -1,12 +1,11 @@ - - GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. - Preamble + Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. @@ -69,7 +68,7 @@ patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. - TERMS AND CONDITIONS + TERMS AND CONDITIONS 0. Definitions. @@ -77,7 +76,7 @@ modification follow. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. - + "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. @@ -510,7 +509,7 @@ actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. - + If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties @@ -619,9 +618,9 @@ an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. - END OF TERMS AND CONDITIONS + END OF TERMS AND CONDITIONS - How to Apply These Terms to Your New Programs + How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it @@ -673,4 +672,3 @@ may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . - diff --git a/ChangeLog b/ChangeLog index 23bef2d..55d521a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,1001 @@ +2010-10-25 Sergey Poznyakoff + + Version 1.24 + * configure.ac, NEWS: Version 1.24 + * bootstrap: Restore tar-specific code lost during last + sync from gnulib (241b72ffad). + * src/misc.c (chdir_do): Remove unused automatic variable. + +2010-10-16 Paul Eggert + + tar: use more-accurate diagnostic when intermediate mkdir fails + Without this change, if tar tried to extract a file A/B/C, noticed + that A/B didn't exist, attempted to mkdir A/B, and the mkdir + failed, it did not diagnose the mkdir failure, but simply reported + the failure to open A/B/C. This sometimes led to confusion + because it wasn't clear what tar was trying to do, in particular + that tar tried to mkdir A/B. With this patch, tar issues two + diagnostics in this case: one for A/B and the other for A/B/C. + Problem reported by Hauke Laging in + . + * gnulib.modules: Remove faccessat. + * src/extract.c (make_directories): New arg INTERDIR_MADE. + Diagnose mkdir failure. Return 0 on success, nonzero on failure, + as opposed to nonzero iff some directory was created. All callers + changed. Simplify the code when mkdir fails, by checking whether + the desired file exists unless errno==EEXIST: this is more robust. + * tests/extrac15.at: New test, to check this. + * tests/Makefile.am (TESTSUITE_AT): Add it. + * tests/testsuite.at: Include it. + + tests: port to NFS file servers with clock skew + Several of the tests assumed that a newly created file cannot + have a time stamp dated in the future. This assumption is not + true when files are served by a remote host whose clock is + slightly in advance of ours. Fix the problems that I observed + when running "make check" a couple of times on such a server. + + * tests/backup01.at: Use --warning=no-timestamp to suppress + clock-skew warnings. + * tests/chtype.at, tests/comprec.at, tests/exclude06.at: + * tests/extrac01.at, tests/extrac03.at, tests/extrac05.at: + * tests/extrac06.at, tests/extrac08.at, tests/extrac13.at: + * tests/extrac14.at, tests/incr01.at, tests/incr03.at, + tests/link01.at: + * tests/multiv01.at, tests/multiv02.at, tests/multiv03.at: + * tests/pipe.at, tests/rename02.at, tests/rename03.at: + * tests/rename05.at, tests/same-order01.at, tests/same-order02.at: + * tests/sparse01.at: + Likewise. + +2010-10-12 Paul Eggert + + gnulib: sync from latest gnulib, notably bootstrap and + parse-datetime + * bootstrap: Sync from gnulib. + * doc/.gitignore: Rename getdate.texi to parse-datetime.texi. + * doc/Makefile.am (tar_TEXINFOS): Likewise. + * doc/tar.texi (Top): Adjust to renaming of getdate to + parse-datetime. + * gnulib.modules: Likewise. Also, remove ftruncate (now + obsolete). + And add inttostr (we missed this dependency). + * src/tar.c: Include parse-datetime.h, not getdate.h. All calls + to get_date replaced with parse_datetime. + +2010-09-24 Paul Eggert + + tar: -x -C symlink fix + * src/misc.c (chdir_do): Don't use O_NOFOLLOW when opening the + argument to -C. This is for consistency with "tar -c -C FOO", and + matches the new documentation. + * tests/extrac14.at: New file. + * tests/Makefile.am (TESTSUITE_AT): Add it. + * tests/testsuite.at: Include it. + + tar: --dereference consistency + This closes another race condition, that occurs when overwriting a + symlink with a regular file. + * NEWS (--dereference consistency): New section. + * doc/tar.texi (Option Summary): Describe new --deference + behavior. + (dereference): Likewise. Remove discussion that I didn't follow, + even before --dereference was changed. + * src/common.h (deref_stat, set_file_atime): Adjust signatures. + * src/compare.c (diff_file, diff_multivol): Respect + open_read_flags + instead of rolling our own flags. This implements the new + behavior + for --dereference. + (diff_file, diff_dumpdir): Likewise, for fstatat_flags. + * src/create.c: Adjust to set_file_atime signature change. + * src/extract.c (mark_after_links, file_newer_p, extract_dir): + Likewise. + * src/incremen.c (try_purge_directory): Likewise. + * src/misc.c (maybe_backup_file): Likewise. + * src/extract.c (file_newer_p): New arg STP. All callers changed. + (maybe_recoverable): New arg REGULAR. All callers changed. + Handle the case of overwriting a symlink with a regular file, + when --overwrite is specified but --dereference is not. + (open_output_file): Add O_CLOEXEC, O_NOCTTY, O_NONBLOCK for + consistency with file creation. Add O_NOFOLLOW if + overwriting_old_files && ! dereference_option. + * src/incremen.c (update_parent_directory): Use fstat, not + fstatat; + there's less to go wrong. + * src/misc.c (deref_stat): Remove DEREF arg. All callers changed. + Instead, use fstatat_flags. + (set_file_atime): Remove ATFLAG arg. All callers changed. + Instead, use fstatat_flags. + * src/names.c, src/update.c: Adjust to deref_stat signature + change. + * src/tar.c (get_date_or_file): Use stat, not deref_stat, as this + is not a file to be archived. + * tests/Makefile.am (TESTSUITE_AT): Add extrac13.at. + * tests/extrac13.at: New file. + * tests/testsuite.at: Include it. + +2010-09-20 Paul Eggert + + tar: do not crash with --listed-incremental + Problem reported by Frantisek Hanzlik in + via Kamil Dudka in + . + I don't understand this code either, but Sergey can take a look at + this patch, and perhaps install a better one, when he has + the time. + * src/incremen.c (append_incremental_renames): Don't actually + append + anything to DIR if DIR is null. + +2010-09-19 Paul Eggert + + tar: prefer openat-style functions + This change replaces traditional functions like 'open' with the + POSIX.1-2008 functions like 'openat'. Mostly this is an internal + refactoring change, in preparation for further changes to close + some races. + * gnulib.modules: Add faccessat, linkat, mkfifoat, renameat, + symlinkat. + Remove save-cwd. + * src/Makefile.am (tar_LDADD): Add $(LIB_EACCESS). + * tests/Makefile.am (LDADD): Likewise. + * src/common.h (chdir_fd): New extern var. + * src/compare.c (diff_file, diff_multivol): Use openat instead + of open. + * src/create.c (create_archive, restore_parent_fd): Likewise. + * src/extract.c (create_placeholder_file): Likewise. + * src/names.c (collect_and_sort_names): Likewise. + * src/update.c (append_file): Likewise. + * src/compare.c (diff_symlink): Use readlinkat instead of + readlink. + * src/compare.c (diff_file): Use chdir_fd instead of AT_FDCWD. + * src/create.c (subfile_open, dump_file0): Likewise. + * src/extract.c (fd_chmod, fd_chown, fd_stat, set_stat): + (repair_delayed_set_stat, apply_nonancestor_delayed_set_stat): + Likewise. + * src/extract.c (mark_after_links, file_newer_p, extract_dir): + (extract_link, apply_delayed_links): + Use fstatat rather than stat or lstat. + * src/misc.c (maybe_backup_file, deref_stat): Likewise. + * src/extract.c (make_directories): Use mkdirat rather than mkdir. + Use faccessat rather than access. This fixes a minor permissions + bug when tar is running setuid (who would want to do that?!). + (open_output_file): Use openat rather than open. + In the process, this removes support for Masscomp's O_CTG files, + which aren't compatible with openat's signature. Masscomp! Wow! + That's a blast from the past. As far as I know, that operating + system hasn't been supported for more than 20 years. + (extract_link, apply_delayed_links): + Use linkat rather than link. + (extract_symlink, apply_delayed_links): + Use symlinkat rather than symlink. + (extract_node): Use mknodat rather than mknod. + (extract_fifo): Use mkfifoat rather than mkfifo. + (apply_delayed_links): Use unlinkat rather than unlink or rmdir. + * src/misc.c (safer_rmdir, remove_any_file): Likewise. + * src/unlink.c (flush_deferred_unlinks): Likewise. + * src/extract.c (rename_directory): Use renameat rather than + rename. + * src/misc.c (maybe_backup_file, undo_last_backup): Likewise. + * src/misc.c: Don't include ; no longer needed now + that we're using openat etc. + (struct wd): Add member fd. Remove members err and fd. All uses + changed. + (CHDIR_CACHE_SIZE): New constant. + (wdcache, wdcache_count, chdir_fd): New vars. + (chdir_do): Use openat rather than save_cwd. Keep the cache up + to date. This code won't scale well, but is good enough for now. + * src/update.c (update_archive): Use openat + fdopendir + + streamsavedir rather than savedir. + + This file is a placeholder. It will be replaced with the actual + ChangeLog + by make dist. Run make ChangeLog if you wish to create it + earlier. + +2010-09-18 Paul Eggert + + tar: add utimens.h includes + * src/extract.c: Include , needed for fdutimens + prototype. + * src/misc.c: Likewise. + + tar: switch to gnulib fdutimensat module + * gnulib.modules: Add fdutimensat. + * src/common.h (fd_utimensat): Remove decl. + * src/extract.c (set_stat): Call fdutimensat, not fd_utimensat. + * src/misc.c (set_file_atime): Likewise. + (fd_utimensat): Remove. + +2010-09-17 Paul Eggert + + tar: extract permissions for . last + * src/common.h (must_be_dot_or_slash): New decl. + * src/extract.c (mark_after_links): New function, taking code + that used to be in create_placeholder_file. + (create_placeholder_file): Use it. + (delay_set_stat): Always delay setting status for . and /. + * src/misc.c (must_be_dot_or_slash): Now extern. + * tests/extrac12.at: New file. + * tests/Makefile.am (TESTSUITE_AT): Add it. + * tests/testsuite.at: Likewise. + + tar: don't check for getdtablesize; use AC_CHECK_FUNCS_ONCE + * configure.ac: Don't check for getdtablesize; no longer needed. + Use AC_CHECK_FUNCS_ONCE rather than AC_CHECK_FUNCS, for + efficiency. + + tar: extract symlink attributes, close some symlink-related races + * NEWS: Describe symlink-extraction improvements. + * src/extract.c (enum permstatus): Remove. + (fchmod, fchown): Define dummy replacement macros if the system + does not supply them. + (implemented): New function. + (struct delayed_set_stat): Remove members invert_permissions, + permstatus. They were too confusing, and tried to do too much + in too-little space. Instead, add members current_mode, + current_mode_mask, interdir, atflag. All users changed. + (struct delayed_link): Add members mode, atime, mtime, to support + platforms such as BSD where symlinks have these attributes. + All users changed. + (fd_chmod): Renamed from fdchmod. New argument atflag. Check for + operation not supported at run-time, not at configure-time. Put + fd argument first. All callers changed. + (fd_chown): Likewise, renaming from fdchown. + (fd_stat): Likewise, renaming from fdstat. + (set_mode): Remove args stat_info, cur_info, invert_permissions, + permstatus. Add args mode, mode_mask, current_mode, + current_mode_mask, + atflag. All callers changed. Close some races. Use an easier-to + understand method for computing permissions. Work around POSIX + incompatibility in Linux fchmodat. Support extraction of symlink + modes, if the OS allows it. + (set_stat): Remove args cur_info, invert_permissions, permstatus. + Add args current_mode, current_mode_mask, interdir, atflag. + All callers changed. Close some races. Support extraction of + attributes on symlinks, if the OS allows it. + (delay_set_stat): Remove args invert_permissions, permstatus. + Add args current_mode, current_mode_mask, mode, atflag. + The ST arg can be null now, indicating that it's an intermediate + directory. All callers changed. + (repair_delayed_set_stat, apply_nonancestor_delayed_set_stat): + Close some races. + (extract_dir): Also be paranoid if only --same-permissions, due + to semantics of setgid and setuid directories on some hosts. + This closes a race on those hosts. Simplify calculation of + delay_set_stat arguments; the old code was truly strange and + probably wrong in some border cases. + (extract_dir, extract_file, extract_node, extract_fifo): Don't + rely on + unspecified behavior in mode arg of open, mknod, etc. Instead, + mask out those bits when creating the file, and add them later via + fchmod or chmodat. + (open_output_file): file_name is now const. Add arg current_mode, + current_mode_mask. All callers changed. When overwriting + old files, + refuse to overwrite something that is not a regular file, since + we're extracting a regular file. + (extract_file): Remove the FIXME comment. Whatever the protection + issues were, they should be fixed now. As a result of all + the other + API changes, we now use fchmod etc. rather than chmod etc., + closing + some races. + (create_placeholder_file, apply_delayed_links): Record desired + mode and times for symlinks, for OSes that support that. + +2010-09-16 Paul Eggert + + tar: tar -x without --incremental no longer sets atime again + * src/extract.c (set_stat): Use UTIME_OMIT rather than UTIME_NOW. + The UTIME_NOW was there only to emulate the previous behavior of + using the current time, and the previous behavior was there only + because before we started assuming POSIX.1-2008 there was no + portable way to get the effect of UTIME_NOW. + + tar: another --atime-preserve race fix + * src/common.h (set_file_atime): Add parentfd arg. + * src/compare.c (diff_file): Use it. + * src/create.c (dump_file0): Likewise. This closes yet another + race condition with symbolic links. + * src/misc.c (set_file_atime): Add parentfd arg. + + tar: --atime-preserve fixes for races etc. + This patch fixes a race condition in the --atime-preserve=replace + option, which might cause tar to improperly follow a symbolic + link. + + It also drops the use of the _FIOSATIME ioctl of Solaris 2.x + and later, which loses resolution on time stamps. Modern Solaris + systems support full-resolution time stamps in the kernel, and + it's not worth the hassle of testing this call, useful only in + no-longer-supported Solaris variants. + + Also, it undoes a change I recently introduced to the --compare + option, which caused it to not follow symbolic links unless the + --dereference option was also used. Quite possibly this change is + a good idea, but the old behavior was documented and the change + should not have been installed casually. + + * configure.ac: Don't check for stropts.h and sys/filio.h. + * gnulib.modules: Add futimens, utimensat. Remove futimens. + * src/common.h (fd_utimensat): New decl. + * src/compare.c (diff_file, diff_multivol): + Don't use open_read_flags: those are for --create only. + * src/create.c (dump_file0): Adjust to set_file_atime changes. + Pass fstatat_flags to set_file_atime, so that symbolic links are + not followed inadvertantly. + * src/extract.c: Don't include utimens.h. + (set_stat): Use fd_utimensat ant UTIME_NOW rather than fdutimens. + * src/misc.c: Don't include utimens.h, stropts.h, sys/filio.h. + (fd_utimensat): New function. + (set_file_atime): Use it. New arg atflag, controlling symlink + handling. All callers changed. + +2010-09-14 Paul Eggert + + * configure.ac: tar: close some race conditions when extracting + * configure.ac: Check for fchmod and fchown. Don't check + for utimes. + * src/extract.c (fdchmod, fdchown, fdstat): New functions. + (set_mode, set_stat): New arg FD. All callers changed. + This avoids some race conditions between closing a regular file + and setting its metadata, and it's a bit faster. + +2010-09-13 Paul Eggert + + tar: don't worry about fdopendir closing its argument + * NEWS: Don't mention dirfd; no longer needed. + * gnulib.modules: Remove dirfd. + * src/create.c (get_directory_entries): Remove the code dealing + with dirfd failures, as the new fdopendir replacement doesn't + close its argument so we don't need to call dirfd. See + + and gnulib commit 970c9038e4cca46e1b037ae0a6d574dfae6a7327. + + * NEWS: Fix wording typo in previous change. + Reported by Jim Meyering. + + tar: live within system-supplied limits on file descriptors + * NEWS: Note the change. Mention dirfd and fdopendir. + * gnulib.modules: Add dirfd and fdopendir. The code was already + using fdopendir; dirfd is a new need. + * src/common.h (open_searchdir_flags, get_directory_entries): + (subfile_open, restore_parent_fd, tar_stat_close): New decls. + (check_exclusion_tags): Adjust signature to match code change. + * src/create.c (IMPOSTOR_ERRNO): New constant. + (check_exclusion_tags): First arg is now a struct tar_stat_info + const *, not an fd. All callers changed. + (dump_regular_file, dump_file0): A zero fd represents an unused + slot, so play it safe if the fd member is zero here. A negative + fd represents the negation of an errno value, so play it safe and + do not assign -1 to fd merely because an open fails. + (open_failure_recover, get_directory_entries, restore_parent_fd): + (subfile_open): New functions. These help to recover from file + descriptor exhaustion. + (dump_dir, dump_file0): Use them. + (dump_file0): Use tar_stat_close instead of rolling our own close. + * src/incremen.c (scan_directory): Use get_directory_entries, + subfile_open, etc., to recover from file descriptor exhaustion. + * src/names.c (add_hierarchy_to_namelist): Likewise. + (collect_and_sort_names): A negative fd represents the negation + of an errno value, so play it safe and do not assign -1 to fd. + * src/tar.c (decode_options): Set open_searchdir_flags. + Add O_CLOEXEC to all the open flags. + (tar_stat_close): New function, which knows how to deal with + new convention for directory streams and file descriptors. + Diagnose 'close' failures. + (tar_stat_destroy): Use it. + * src/tar.h (struct tar_stat_info): New member dirstream. + fd now has the negative of an errno value, not merely -1, if + the file could not be opened, so that failures to reopen + directories + are better-diagnosed later. + * tests/Makefile.am (TESTSUITE_AT): Add extrac11.at. + * tests/testsuite.at: Likewise. + * tests/extrac11.at: New file. + +2010-09-08 Paul Eggert + + tar: improve documentation of reliability and security issues + * doc/tar.texi (Reliability and security, Reliability): + (Permissions problems, Data corruption and repair, Race + conditions): + (Security, Privacy, Integrity, Live untrusted data): + (Security rules of thumb): New nodes. + +2010-09-06 Paul Eggert + + tar: more reliable directory traversal when creating archives + * NEWS: Document this. + * gnulib.modules: Add openat, readlinkat. + * src/common.h (open_read_flags, fstatat_flags): New global + variables. + (cachedir_file_p, dump_file, check_exclusion_tags, + scan_directory): + Adjust to new signatures, described below. + (name_fill_directory): Remove. + * src/compare.c (diff_file, diff_multivol): Use open_read_flags. + * src/create.c (struct exclusion_tag): Exclusion predicates + now take + a file descriptor, not a file name. + (add_exclusion_tag): Likewise. All uses changed. + (cachedir_file_p): Likewise. + (check_exclusion_tags): The directory is now a file descriptor, + not a file name. All uses changed. Use openat for better + traversal. + (file_dumpable_p): Arg is now a struct stat, not a struct + tar_stat_info. All uses changed. Check the arg's file types too. + (dump_dir0, dump_dir, dump_file0, dump_file): Omit top_level and + parent_device args, since st->parent tells us that now. All uses + changed. + (dump_dir): Likewise. Also, omit fd arg for similar reasons. + Apply fdsavedir to a dup of the file descriptor, since we need a + file descriptor for openat etc. as well, and fdsavedir (perhaps + unwisely) consumes its file descriptor when successful. + Do not consume st->fd when successful; this simplifies the caller. + (create_archive): Allocate a file descriptor when retraversing + a directory, during incremental dumps. + (dump_file0): Use fstatat, openat, and readlinkat for better + traversal. + When opening a file, use the result of fstat on the file + descriptor + rather than the fstatat on the directory entry, to avoid some race + conditions. No need to reopen the directory since we now + no longer + close it. Change "did we open the file?" test from 0 <= fd to + 0 < fd since fd == 0 now represents uninitialized. + (dump_file): Now accepts struct tar_stat_info describing parent, + not parent_device. Also, accept basename and fullname of entry. + All uses changed. + * src/incremen.c (update_parent_directory): Accept struct + tar_stat_info for parent, not name. All callers changed. + Use fstatat for safer directory traversal. + (procdir): Accept struct tar_stat_info, not struct stat and + dev_t, for info about directory. All callers changed. + (scan_directory): Accept struct tar_stat_info, not name, + device, and cmdline, for info about directory. All callers + changed. Do not consume the file descriptor, since caller + might need it. Use fstatat and openat for safer directory + traversal; also, use fstat after opening to double-check. + (name_fill_directory): Remove. + * src/names.c (add_hierarchy_to_namelist): Accept struct + tar_stat_info instead of device and cmdline. All callers changed. + When descending into a subdirectory, use openat and fstat for + safer directory traversal. + (collect_and_sort_names): Use open and fstat for safer directory + traversal. Set up struct tar_stat_info for callee's new API. + * src/tar.c (decode_options): Initialize open_read_flags + and fstatat_flags. + (tar_stat_destroy): Close st->fd if it is positive (not zero!). + * src/tar.h (struct tar_stat_info): New members parent, fd. + * src/update.c (update_archive): Adjust to dump_file's API change. + * tests/filerem02.at: Ignore stderr since its contents now depend + on the file system implementation. + +2010-09-05 Paul Eggert + + tar: remove lint discovered by Sun C compiler + * src/common.h (WARN_ALL): Don't mask with 0xffffffff; on a 32-bit + host, 0xffffffff is of type 'unsigned int', which makes WARN_ALL + an unsigned int value that is too large to fit into an int, and + the C standard says that this has undefined behavior. The mask is + not needed, so omit it. + +2010-09-04 Paul Eggert + + tar: restore macros that are used in some cases + * src/tar.c (LOW_DENSITY_NUM, MID_DENSITY_NUM, HIGH_DENSITY_NUM): + Restore these macros, undoing the previous change to this file. + The macros are used after all, in some cases. Sorry about that. + +2010-09-03 Paul Eggert + + tar: remove unused macros + * src/create.c (UINTMAX_TO_CHARS): Remove; no longer used. + * src/tar.c (LOW_DENSITY_NUM, MID_DENSITY_NUM, HIGH_DENSITY_NUM): + Likewise. + * src/incremen.c (DIR_IS_NEW): Comment out; not used. + Mark this with a FIXME, since it looks like it should be used. + +2010-08-27 Sergey Poznyakoff + + Fix --remove-files in update/append mode. + * src/update.c (update_archive): Call finish_deferred_unlinks when + done. + +2010-08-26 Paul Eggert + + tar: avoid assumptions about root access and chmod -w in test + cases + * tests/extrac07.at, tests/extrac09.at, tests/listed03.at: Use + AT_UNPRIVILEGED_PREREQ, since this test requires non-root + privileges. + * tests/extrac07.at: Don't use "chmod -w", as POSIX says it's not + portable to start a chmod permissions-list with "-" as it may be + confused with an option. Use "chmod a-w" instead. + + tar: fix bug with -C and delayed setting of metadata + * src/common.h (chdir_current): New decl. + * src/extract.c (struct delayed_set_stat, struct delayed_link): + New member change_dir. + (delay_set_stat, create_placeholder_file): Set it. + (apply_nonancestor_delayed_set_stat, apply_delayed_links): Use it. + (extract_link): Check that the links are all relative to the same + directory. + (extract_archive): Restore the current directory after + apply_nonancestor_delayed_set_stat has possibly changed it. + * src/misc.c (chdir_current): New external var; this used to + be the private static variable 'previous' inside chdir_dir. + All uses changed. + * tests/Makefile.am (TESTSUITE_AT): New test extrac10.at. + * tests/extrac10.at: New file. + * tests/testsuite.at: Include it. + +2010-08-25 Sergey Poznyakoff + + Don't apply file transformations to volume names. + * src/list.c (decode_header): Don't apply file transformations + to volume names. + * tests/xform01.at: New testcase. + * tests/xform-h.at (xform): Rename macro to xformtest. Use + pushdef/popdef. + * tests/Makefile.am, tests/testsuite.at: Add xform01.at + +2010-08-25 Paul Eggert + + tar: optimize -c --sparse when file is entirely sparse + * src/sparse.c (sparse_scan_file): If the file is entirely sparse, + that is, if ST_NBLOCKS is zero, don't bother scanning for nonzero + blocks. Idea by Kit Westneat, communicated by Bernd Schubert in + . + Also, omit unnecessary lseek at start of file. + + tar: don't assume size of a sparse file chunk fits in size_t + * src/tar.h (struct sp_array): Change numbytes from size_t + to off_t. + All uses changed. + * scripts/xsparse.c (struct sp_array): Likewise. + Include , for SIZE_MAX. + (expand_sparse): Don't try to allocate a buffer bigger than + SIZE_MAX bytes. + * src/common.h (SIZE_TO_CHARS, size_to_chars, SIZE_FROM_HEADER): + (size_from_header): Remove decls. + * src/create.c (size_to_chars): Remove. + * src/list.c (size_from_header): Remove. + * src/sparse.c (sparse_extract_region, check_data_region): + (oldgnu_add_sparse, oldgnu_store_sparse_info, pax_decode_header): + Don't assume chunk sizes fit in size_t. + (oldgnu_add_sparse): Check for off_t overflow. + * src/xheader.c (sparse_numbytes_decoder, sparse_map_decoder): + Likewise. + + tar: use ctime, not mtime, when checking placeholders + * src/extract.c (struct delayed_link): Rename member mtime + to ctime. + All uses changed to use ctime rather than mtime. + +2010-08-24 Paul Eggert + + tar: add comment to link04.at test + * tests/link04.at: Add explanatory comment at head. + + tar: fix 1.23 Solaris regression related to PRIV_SYS_LINKDIR + The idea was suggested by Petr Sumbera in the thread starting + here: + http://lists.gnu.org/archive/html/bug-tar/2010-08/msg00000.html + * src/extract.c (set_mode): Save the errno of the chmod that + failed, for the benefit of chmod_error_details. Do not bother + retrying chmod unless the mode suggests setuid is the issue. + (extract_archive): Remove redundant call to + priv_set_remove_linkdir. + * src/system.c: Include priv-set.h. + (sys_spawn_shell, sys_child_open_for_compress): + (sys_child_open_for_uncompress, sys_exec_command): + (sys_exec_info_script, sys_exec_checkpoint_script): + Invoke priv_set_restore_linkdir before execv or execlp, so that + the subprocess has the same privileges that tar originally did. + + tar: handle files that occur multiple times but have link count 1 + This patch was inspired by the following patch that addressed a + similar problem in GNU coreutils du: + http://git.savannah.gnu.org/gitweb/?p=coreutils.git;h=efe53cc72b599979ea292754ecfe8abf7c839d22 + * src/common.h (name_count): New decl. + * src/create.c (trivial_link_count): New static var. + (create_archive): Initialize it. + (dump_hard_link, file_count_links): Use it, so that files with + link count 1 are handled correctly when they are found multiple + times. + * src/names.c (allocated_entries): Renamed from allocated_names, + since the identifier's name was misleading. All uses changed. + (entries): Renamed from names. All uses changed. + (scanned): Renamed from name_index. All uses changed. + (name_count): New var. + (name_add_name): Increment it. + * tests/link04.at: New file. + * tests/testsuite.at: Add it. + * tests/Makefile.am (TESTSUITE_AT): Likewise. + +2010-08-23 Paul Eggert + + tar: use nlink_t for link counts + * src/create.c (struct link): nlink is now of type nlink_t, + not size_t. + + tar: don't export names that aren't used elsewhere + * src/common.h (file_dumpable_p, gid_to_chars, major_to_chars): + (minor_to_chars, mode_to_chars, uid_to_chars, uintmax_to_chars): + (string_to_chars, dumpdir_creat0, dumpdir_create, dumpdir_free): + (dumpdir_locate, dumpdir_next, dumpdir_first, gid_from_header): + (major_from_header, minor_from_header, mode_from_header): + (time_from_header, uid_from_header, quote_copy_string, + request_stdin): + (xheader_init, transform_header_name): + Remove declarations; these are no longer exported from their + modules. + (GID_TO_CHARS, MAJOR_TO_CHARS, MINOR_TO_CHARS, MODE_TO_CHARS): + (UID_TO_CHARS, UINTMAX_TO_CHARS, UNAME_TO_CHARS, GNAME_TO_CHARS): + Move to src/create.c, since no other module uses these. + (GID_FROM_HEADER, MAJOR_FROM_HEADER, MINOR_FROM_HEADER): + (MODE_FROM_HEADER, TIME_FROM_HEADER, UID_FROM_HEADER): + Move to src/extract.c, since no other module uses these. + (dumpdir_t, dumpdir_iter_t): Remove; no longer used. + * src/create.c (gid_to_chars, major_to_chars, minor_to_chars): + (mode_to_chars, uid_to_chars, uintmax_to_chars, string_to_chars): + (file_dumpable_p): Now static. + * src/incremen.c (dumpdir_create0, dumpdir_create, dumpdir_free): + (dumpdir_locate, dumpdir_next, dumpdir_first): Now static. + (scan_directory, write_directory_file_entry): + Use struct dumpdir_iter * rather than dumpdir_iter_t. + * src/list.c (gid_from_header, major_from_header, + minor_from_header): + (mode_from_header, time_from_header, uid_from_header): + (transform_member_name): Now static. + * src/misc.c (quote_copy_string): #if 0 out, as it's not used + anywhere. + * src/system.c (wait_for_grandchild): Now static. + * src/tar.c (request_stdin): Now static. + * src/xheader.c (xheader_init): Now static. + + tar: fix misspelled identifier "set_comression_program_by_suffix" + * src/suffix.c (set_compression_program_by_suffix): Renamed from + set_comression_program_by_suffix. + * src/buffer.c, src/common.h, src/tar.c: All uses changed. + +2010-08-20 Paul Eggert + + tar: change interdir_made from int to bool + * src/extract.c (maybe_recoverable, create_placeholder_file): + Change interdir_made from int * to bool *, since the flag has just + two values 0 and 1. All uses changed. This does not affect tar's + behavior. + + tar: remove trailing white space from source files + * ChangeLog.1, ChangeLog.CVS, Makefile.am, NEWS, README: + * README-hacking, directory, doc/Makefile.am, doc/dumpdir.texi: + * doc/gendocs_template, doc/intern.texi, doc/mastermenu.el: + * doc/snapshot.texi, doc/sparse.texi, doc/tar-snapshot-edit.texi: + * doc/value.texi, lib/Makefile.am, scripts/backup-specs: + * scripts/dump-remind.in, scripts/tar-snapshot-edit, + scripts/tarcat: + * scripts/xsparse.c, src/arith.h, src/buffer.c, src/compare.c: + * src/create.c, src/delete.c, src/exit.c, src/suffix.c, src/tar.c: + * src/tar.h, src/update.c, src/warning.c, src/xheader.c: + * tests/append01.at, tests/append02.at, tests/atlocal.in: + * tests/delete03.at, tests/exclude.at, tests/exclude06.at: + * tests/extrac04.at, tests/extrac05.at, tests/extrac06.at: + * tests/extrac07.at, tests/filerem01.at, tests/filerem02.at: + * tests/incr01.at, tests/incr02.at, tests/incr03.at, + tests/incr06.at: + * tests/label02.at, tests/label03.at, tests/label04.at: + * tests/label05.at, tests/link02.at, tests/link03.at: + * tests/listed01.at, tests/listed02.at, tests/long01.at: + * tests/longv7.at, tests/multiv01.at, tests/multiv02.at: + * tests/multiv03.at, tests/multiv05.at, tests/multiv06.at: + * tests/multiv07.at, tests/multiv08.at, tests/options.at: + * tests/options02.at, tests/remfiles03.at, tests/rename01.at: + * tests/rename02.at, tests/rename03.at, tests/rename04.at: + * tests/rename05.at, tests/same-order01.at, tests/same-order02.at: + * tests/shortfile.at, tests/shortupd.at, tests/sparse01.at: + * tests/sparse02.at, tests/sparsemv.at, tests/sparsemvp.at: + * tests/star/README, tests/star/gtarfail2.at: + * tests/star/multi-fail.at: + * tests/star/pax-big-10g.at, tests/star/quicktest.sh: + * tests/star/ustar-big-2g.at, tests/star/ustar-big-8g.at: + * tests/update01.at, tests/update02.at, tests/volsize.at: + * tests/volume.at: + Remove trailing spaces and tabs from lines, and remove + trailing empty lines from files. This makes it a bit easier + to share code among coreutils and other projects that do this. + +2010-08-19 Paul Eggert + + tar: update licenses to latest versions from www.gnu.org + * COPYING: Update to latest version; this is just minor + formatting. + * doc/fdl.texi: Update from GFDL 1.2 to 1.3. + * doc/tar.texi: Adjust to new format of fdl.texi. Omit trailing + white space. + +2010-07-18 Paul Eggert + + * src/misc.c (struct wd): Fix comment to match code. + +2010-07-18 Paul R. Eggert + + tar: no need to report getcwd error if never using the result + * src/misc.c (struct wd): Rename 'saved' to 'err', with new + semantics. + (chdir_arg, chdir_do): Adjust to new semantics. Do not report an + error merely because save_cwd fails; report an error only if + save_cwd's result is needed later. + * tests/extrac09.at: New file, to test for bug that was fixed. + * tests/testsuite.at: Include it. + * tests/Makefile.am (TESTSUITE_AT): Add it. + + tar: go back to absolutifying filenames in normalize_filename + for now + * src/misc.c (normalize_filename): For now, go back to making + filenames absolute, even though this causes 'tar' to fail when + getcwd fails. However, do not attempt to resolve ".." as this + does not work with symlinks. Also, do the right thing with + leading file system prefixes and on hosts where // != /. + +2010-07-17 Sergey Poznyakoff + + Allow for size suffixes in -L and --record-size options. + * src/tar.c (TAR_SIZE_SUFFIXES): New define. + (parse_opt): Allow for size suffixes in arguments to + -L and --record-size options. + * NEWS, doc/tar.texi: Update. + +2010-07-15 Paul R. Eggert + + tar: don't crash if getcwd fails + * src/extract.c: Don't include xgetcwd.h. + (extract_dir): stat "." rather than statting getcwd's output. + * src/misc.c (normalize_filename_x): Rewrite so as not to resolve + /../, which can't be done reliably in the presence of symlinks. + Don't reject valid names such as ".". + (normalize_filename): Don't make it absolute; that way, we don't + have to invoke xgetcwd which might fail. Don't bother to realloc + at the end, since that uses time and now saves little space. + (chdir_do): Don't crash if xgetcwd fails. + * tests/Makefile.am (TESTSUITE_AT): Add listed03.at. + * tests/listed03.at: New file. + * tests/testsuite.at: Include listed03.at. + +2010-07-11 Sergey Poznyakoff + + Keep a detailed map of archive members stored in the record + buffer. + A separate map (bufmap) provides information for creating + multi-volume continuation headers. + + * src/buffer.c (bufmap): New struct. + (bufmap_head, bufmap_tail, inhibit_map): New variables. + (mv_begin_write): New function. + (mv_begin): Rename to mv_begin_read. Rewrite using mv_begin_write. + All callers changed. + (mv_total_size): Remove. + (bufmap_locate, bufmap_free, bufmap_reset): New functions. + (_flush_write): Update bufmap. + (close_archive): Free bufmap. + (add_chunk_header): Take a bufmap argument. + (gnu_add_multi_volume_header): Likewise. + (add_multi_volume_header): Likewise. + (_gnu_flush_write): Rewrite using bufmap. + (real_s_name, real_s_totsize) + (real_s_sizeleft) + (save_name, save_totsize, save_sizeleft): Removed. All + uses updated. + (mv_size_left): Update bufmap_head. + (mv_end): Rewrite. + (multi_volume_sync): Remove. + + * src/common.h (mv_begin_write): New prototype. + (mv_begin): Rename to mv_begin_read. + * src/create.c: Use mv_begin_write instead of mv_begin. + Remove calls to mv_size_left and mv_end. + * src/sparse.c: Likewise. + + * tests/multiv07.at: Close stdin. + * tests/spmvp00.at: Update AT_KEYWORDS. + * tests/spmvp10.at: Likewise. + + * tests/multiv08.at: New testcase. + * tests/Makefile.am, tests/testsuite.at: Add multiv08.at. + + Version 1.23.90 + * NEWS, configure.ac: Version 1.23.90 + * doc/tar.texi: Document the use of lbzip2. + +2010-06-28 Sergey Poznyakoff + + Fix exclusion of long file names when extracting from pax format + archives. + * src/list.c (read_and): Call decode_header before attempting + name_match. + (list_archive): Remove call to decode_header. + + * src/compare.c (diff_archive): Remove call to decode_header. + * src/extract.c (extract_archive): Likewise. + + * test/exclude06.at: New test case. + * tests/testsuite.at: Include exclude06.at. + * tests/Makefile.am (TESTSUITE_AT): Add exclude06.at. + + Minor fix. + * src/buffer.c (magic): Split the character constant to help + cc recognize character boundaries (7 is a valid hex character). + +2010-06-27 Sergey Poznyakoff + + Minor fix. + * src/buffer.c (magic): Fix xz magic. + +2010-06-16 Paul Eggert + + Remove some lint, found by gcc -W etc. + * src/common.h (label_notfound): New decl. + * src/buffer.c (set_volume_start_time, compress_type): + (guess_seekable_archive, open_compressed_archive, init_buffer): + (_flush_write, archive_is-dev, increase_volume_number): + (change_tape_menu, try_new_volume, add_chunk_header): + (multi_volume_sync): + Declare as 'static' if it's not exported. + Use function prototype (void) rather than old-style (). + * src/checkpoint.c (expand_checkpoint_string): Likewise. + * src/incremen.c (dirlist_replace_prefix, makedumpdir, + read_incr_db_2): + Likewise. + * src/list.c (print_volume_label): Likewise. + * src/misc.c (normalize_filename_x): Likewise. + * src/names.c (make_name, free_name, check_name_alloc, + name_next_elt): + Likewise. + * src/tar.c (tar_list_quoting_style, add_exclude_array): + (set_stat_signal): Likewise. + * src/transform.c (new_transform, + _single_transform_name_to_obstack): + (_transform_name_to_obstack): Likewise. + * src/unlink.c (dunlink_alloc): Likewise. + + * src/buffer.c (struct zip_magic): Use const when appropriate. + * src/incremen.c (obstack_code_rename, + write_directory_file_entry): + Likewise. + * src/sparse.c (COPY_STRING): Likewise. + * src/system.c (dec_to_env, time_to_env, oct_to_env, str_to_env): + (chr_to_env): Likewise. + * src/tar.c (tar_list_quoting_style, set_stat_signal): Likewise. + + * src/extract.c (extract_node): Don't return garbage. + + * src/names.c: Remove old-style declarations of getgrnam etc. + All modern systems declare these, and it's not worth the hassle + of ignoring the warnings on modern systems for old-style decls. + +2010-05-17 Sergey Poznyakoff + + Bugfix. + * src/incremen.c (make_directory): Retain the slash if it is the + only character in a filename. + +2010-04-02 Sergey Poznyakoff + + Recode NEWS back to UTF-8 + +2010-04-01 Sergey Poznyakoff + + Fix the gzip.at test case. + * tests/gzip.at: Suppress gzip error output, as it can differ + depending on its version etc. Bug reported by Ludovic Courtès. + +2010-03-28 Sergey Poznyakoff + + New option --full-time. + * src/common.h (full_time_option): New global. + * src/tar.c (FULL_TIME_OPTION): New constant. + (options): New option --full-time. + (parse_opt): Handle the --full-time option. + * src/list.c (simple_print_header): Pass full_time_option + as the 2nd argument to tartime. + * doc/tar.texi: Update. + * NEWS: Update. + +2010-03-27 Sergey Poznyakoff + + Minor fixes in the testsuite. + * tests/extrac07.at: Fix a typo (invalid number + of arguments before format list). + * tests/link02.at: Use `ln' instead of `link'. + * tests/link03.at: Likewise. + + Fix coredump. + * src/names.c (collect_and_sort_names): Remove + entry from the table before freeing it. + + Fix dead loop on extracting existing symlinks with the -k option. + * src/extract.c (create_placeholder_file) + (extract_link, extract_symlink) + (extract_node, extract_fifo): Handle all possible + return values from maybe_recoverable. This complements + 8f390db92fc. Reported by Ico Doornekamp . + * NEWS: Update. + +2010-03-20 Sergey Poznyakoff + + Fix undesired error exit on receiving SIGPIPE. + * src/tar.c: Do not ignore SIGPIPE. + * tests/sigpipe.at: New testcase. + * tests/Makefile.am, tests/testsuite.at: Add sigpipe.at + * tests/remfiles01.at: Fix error code expectation. + * NEWS: Update. + +2010-03-17 Sergey Poznyakoff + + Fix --remove-files. + Tar --remove-files relied on canonicalize_file_name, + which replaces symlinks in file name components with + the directories they point to. Due to this, tar + effectively ignored existence of symbolic links and + was unable to remove a directory that contained any + (Alexander Kozlov , 2010-03-15). + + * gnulib.modules: Remove canonicalize. + * src/misc.c (normalize_filename): Rewrite + from scratch. The function operates only on + its input string, it makes no attempt to test + components for existence or to resolve symbolic + links. + * tests/Makefile.am (TESTSUITE_AT): Add remfiles03.at. + * tests/testsuite.at: Likewise. + * tests/remfiles03.at: New test case. + * NEWS: Update. + +2010-03-12 Sergey Poznyakoff + + Bugfixes. + * src/buffer.c (check_label_pattern): Initialize result. + * tests/remfiles01.at: Skip if run with root privileges. + +2010-03-11 Sergey Poznyakoff + + Fix `--test-label' and `--label -r' behavior. + * doc/tar.texi (Including a Label in the Archive): Revise + the section. + * NEWS: Update + + * src/buffer.c (open_archive): Check volume label on + ACCESS_UPDATE as well. + * src/list.c (test_archive_label): Rewrite to match the + documentation. + * src/names.c (regex_usage_warning): Return int. + (names_notfound): Rewrite the conditional. + (label_notfound): New function. + + * tests/label03.at: New testcase. + * tests/label04.at: New testcase. + * tests/label05.at: New testcase. + * tests/Makefile.am: Add new testcases. + * tests/testsuite.at: Likewise. + + Doc fixes. + * doc/tar.texi: Consistently use lowercase `see' within sentences. + More fixes spotted by Denis Excoffier. + * THANKS: Update. + + Shut up a gcc warning message. + * src/tar.c (tar_help_filter): Use a separate const + variable to hold returns from gettext. Reported by + Peter Breitenlohner. + + Bugfix. + * src/names.c (collect_and_sort_names): Initialize prev_name. + Reported by Dmitry V. Levin. + 2010-03-10 Sergey Poznyakoff Version 1.23 @@ -775,7 +1773,7 @@ 2009-03-04 Sergey Poznyakoff Add xz support. - + * src/buffer.c, src/suffix.c: Add support for xz compression. * src/tar.c: New option --xz, for compression/decompression using xz. Re-assign -J as a short equivalent of --xz. @@ -804,8 +1802,8 @@ 2008-11-25 Sergey Poznyakoff Do not try to drain the input pipe before closing the - archive. - + archive. + * src/buffer.c (close_archive): Remove call to sys_drain_input_pipe. Pass hit_eof as the second argument to sys_wait_for_child. @@ -833,7 +1831,7 @@ * src/extract.c (extract_link, extract_symlink): Remove calls to transform_member_name. It is done in read_header. * src/list.c (decode_xform): Reflect change in data type of 2nd - argument. + argument. (transform_member_name): 2nd arg is int. (decode_header): Transform file name and link target names. * src/tar.c: Remove --transform-symlinks. @@ -843,7 +1841,7 @@ set global flags using `flags=' syntax. (_transform_name_to_obstack, transform_name_fp) (transform_name): Take an additional argument, specifying scope - flags. + flags. 2008-10-19 Sergey Poznyakoff @@ -856,7 +1854,7 @@ * tests/sparsemvp.at: Likewise. * tests/volsize.at: Likewise. * NEWS: Update. - + 2008-10-16 Sergey Poznyakoff * src/common.h (transform_symlinks_option): New global. @@ -869,11 +1867,11 @@ * doc/tar.texi: Document --transform-symlinks * NEWS: Update. * THANKS: Update. - + * src/names.c (name_gather): Use xzalloc. * src/buffer.c (short_read): Move record size detection before the loop. - + 2008-10-07 Sergey Poznyakoff * src/tar.c (options): Add --lzop option. @@ -881,7 +1879,7 @@ 2008-10-05 Xavier Hienne (tiny change) * src/checkpoint.c (checkpoint_compile_action): Add missing - `else'. + `else'. 2008-09-24 Sergey Poznyakoff @@ -927,7 +1925,7 @@ * tests/atlocal.in (decho): New function. * tests/multiv06.at: Use decho instead of echo2. * tests/incremental.at: Raise wait interval to 2 seconds. - + 2008-07-24 Sergey Poznyakoff * src/tar.c (decode_options): Do not allow volume length less @@ -963,21 +1961,21 @@ tests/longv7.at, tests/lustar01.at, tests/lustar02.at, tests/shortfile.at: Update to match new diagnostic wording (see 2008-05-06). - + * NEWS: Update. 2008-06-14 Sergey Poznyakoff * doc/tar.texi (exclude): Document support for new VCS. * THANKS: Update. - * NEWS: Update. + * NEWS: Update. * tests/multiv05.at: Fix typos. * tests/volsize.at: Remove a TZ dependency. - + 2008-06-14 Dan Drake (tiny change) * src/tar.c (exclude_vcs_files): Support for Bazaar, Mercurial and - Darcs. + Darcs. 2008-05-06 Sergey Poznyakoff @@ -1001,23 +1999,23 @@ * tests/incr03.at, tests/incr04.at, tests/rename02.at, tests/rename03.at: Insert calls to sleep between creation of files and adding them to the archive. - + 2008-03-31 Sergey Poznyakoff * src/create.c (dump_file0): Count links only for actually dumped - files. + files. 2008-03-27 Sergey Poznyakoff * NEWS: Document --no-check-device and --check-device. * doc/rendition.texi: Change the way FIXME-*refs are handled in - !PROOF. + !PROOF. * doc/intern.texi, doc/tar.texi: Update. * doc/untabify.el: New file. * doc/Makefile.am (EXTRA_DIST): Add untabify.el (untabify, final, check-format, check-refs, check-fixmes) (check-unrevised, all-check-docs, check-docs): New rules. - + * src/common.h (check_device_option): New global. * src/incremen.c (procdir): Use boolean and instead of bitwise one. Patch by Jean-Louis Martineau. @@ -1026,7 +2024,7 @@ --check-device. Proposed by Jean-Louis Martineau. (parse_opt): Hanlde new options. (decode_options): Initialize check_device_option to true. - + * THANKS: Update 2008-03-06 Sergey Poznyakoff @@ -1037,7 +2035,7 @@ * po/.cvsignore: Update * src/system.c: Remove include setenv.h. * tests/atlocal.in (STAR_DATA_URL): Update. - * tests/star/README: Update URL. + * tests/star/README: Update URL. 2008-02-09 Sergey Poznyakoff @@ -1073,7 +2071,7 @@ Exit with nonzero status if a close fails on an archive. Problem (and initial trivial fix) * src/buffer.c (close_archive, new_volume): close_error, not - close_warn. + close_warn. 2007-12-05 Sergey Poznyakoff diff --git a/ChangeLog.1 b/ChangeLog.1 index 726fe72..75c8814 100644 --- a/ChangeLog.1 +++ b/ChangeLog.1 @@ -1,4 +1,4 @@ -Currently there is just one ChangeLog file for tar, but +Currently there is just one ChangeLog file for tar, but there used to be separate ChangeLog files for each subdirectory. This file records what used to be in those separate files. diff --git a/Makefile.am b/Makefile.am index df8ea4c..af332d7 100644 --- a/Makefile.am +++ b/Makefile.am @@ -22,7 +22,7 @@ ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = ChangeLog.1 Make.rules SUBDIRS = doc gnu lib rmt src scripts po tests -dist-hook: +dist-hook: $(MAKE) changelog_dir=$(distdir) ChangeLog -rm -f $(distdir).cpio find $(distdir) | cpio -Hcrc -o | \ @@ -36,5 +36,3 @@ include Make.rules gen_start_date = 2009-03-06 prev_change_log = ChangeLog.CVS changelog_dir = . - - diff --git a/Makefile.in b/Makefile.in index 17bd117..dd4e196 100644 --- a/Makefile.in +++ b/Makefile.in @@ -95,11 +95,11 @@ subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/argmatch.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/backupfile.m4 \ - $(top_srcdir)/m4/bison.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/canonicalize.m4 \ + $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/backupfile.m4 $(top_srcdir)/m4/bison.m4 \ + $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/canonicalize.m4 \ $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/chown.m4 \ - $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/cloexec.m4 \ $(top_srcdir)/m4/close-stream.m4 $(top_srcdir)/m4/close.m4 \ $(top_srcdir)/m4/closeout.m4 $(top_srcdir)/m4/codeset.m4 \ $(top_srcdir)/m4/d-ino.m4 $(top_srcdir)/m4/dirent-safer.m4 \ @@ -112,17 +112,17 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/fchdir.m4 $(top_srcdir)/m4/fclose.m4 \ $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopendir.m4 \ - $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpending.m4 \ - $(top_srcdir)/m4/fseeko.m4 $(top_srcdir)/m4/ftruncate.m4 \ + $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \ + $(top_srcdir)/m4/fpending.m4 $(top_srcdir)/m4/fseeko.m4 \ + $(top_srcdir)/m4/futimens.m4 \ $(top_srcdir)/m4/getcwd-abort-bug.m4 \ $(top_srcdir)/m4/getcwd-path-max.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdate.m4 $(top_srcdir)/m4/getdelim.m4 \ - $(top_srcdir)/m4/getdtablesize.m4 $(top_srcdir)/m4/getline.m4 \ - $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \ - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gettime.m4 \ - $(top_srcdir)/m4/gettimeofday.m4 $(top_srcdir)/m4/glibc21.m4 \ - $(top_srcdir)/m4/gnulib-common.m4 \ + $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ + $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ + $(top_srcdir)/m4/getpagesize.m4 $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \ + $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ $(top_srcdir)/m4/gnulib-comp.m4 $(top_srcdir)/m4/hash.m4 \ $(top_srcdir)/m4/human.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \ @@ -132,54 +132,61 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/lchown.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \ - $(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-zh.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \ - $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/malloc.m4 \ - $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/mbchar.m4 \ - $(top_srcdir)/m4/mbiter.m4 $(top_srcdir)/m4/mbrtowc.m4 \ - $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbsrtowcs.m4 \ - $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/memchr.m4 \ - $(top_srcdir)/m4/mempcpy.m4 $(top_srcdir)/m4/memrchr.m4 \ - $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkdtemp.m4 \ + $(top_srcdir)/m4/libunistring-base.m4 \ + $(top_srcdir)/m4/link-follow.m4 $(top_srcdir)/m4/link.m4 \ + $(top_srcdir)/m4/linkat.m4 $(top_srcdir)/m4/localcharset.m4 \ + $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ + $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \ + $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ + $(top_srcdir)/m4/mbchar.m4 $(top_srcdir)/m4/mbiter.m4 \ + $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ + $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ + $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ + $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mkdir.m4 \ + $(top_srcdir)/m4/mkdtemp.m4 $(top_srcdir)/m4/mkfifo.m4 \ + $(top_srcdir)/m4/mkfifoat.m4 $(top_srcdir)/m4/mknod.m4 \ $(top_srcdir)/m4/mktime.m4 $(top_srcdir)/m4/mmap-anon.m4 \ $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/modechange.m4 \ $(top_srcdir)/m4/multiarch.m4 $(top_srcdir)/m4/nl_langinfo.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/paxutils.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/priv-set.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/quote.m4 \ - $(top_srcdir)/m4/quotearg.m4 $(top_srcdir)/m4/rawmemchr.m4 \ - $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rmdir.m4 \ + $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/parse-datetime.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/paxutils.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/priv-set.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \ + $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/readlink.m4 \ + $(top_srcdir)/m4/readlinkat.m4 $(top_srcdir)/m4/realloc.m4 \ + $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rename.m4 \ + $(top_srcdir)/m4/renameat.m4 $(top_srcdir)/m4/rmdir.m4 \ $(top_srcdir)/m4/rmt.m4 $(top_srcdir)/m4/rpmatch.m4 \ $(top_srcdir)/m4/rtapelib.m4 $(top_srcdir)/m4/safe-read.m4 \ - $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/same.m4 \ - $(top_srcdir)/m4/save-cwd.m4 $(top_srcdir)/m4/savedir.m4 \ - $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/sleep.m4 $(top_srcdir)/m4/snprintf.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/stpcpy.m4 $(top_srcdir)/m4/strcase.m4 \ - $(top_srcdir)/m4/strchrnul.m4 $(top_srcdir)/m4/strdup.m4 \ - $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/string_h.m4 \ - $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strndup.m4 \ - $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoimax.m4 \ - $(top_srcdir)/m4/strtol.m4 $(top_srcdir)/m4/strtoll.m4 \ - $(top_srcdir)/m4/strtoul.m4 $(top_srcdir)/m4/strtoull.m4 \ - $(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/sys_stat_h.m4 \ - $(top_srcdir)/m4/sys_time_h.m4 $(top_srcdir)/m4/sysexits.m4 \ - $(top_srcdir)/m4/system.m4 $(top_srcdir)/m4/tempname.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/unistd-safer.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlink.m4 $(top_srcdir)/m4/unlinkdir.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/utimbuf.m4 \ - $(top_srcdir)/m4/utimens.m4 $(top_srcdir)/m4/utimes.m4 \ + $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/save-cwd.m4 \ + $(top_srcdir)/m4/savedir.m4 $(top_srcdir)/m4/setenv.m4 \ + $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ + $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \ + $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ + $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ + $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ + $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ + $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ + $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ + $(top_srcdir)/m4/strtoimax.m4 $(top_srcdir)/m4/strtol.m4 \ + $(top_srcdir)/m4/strtoll.m4 $(top_srcdir)/m4/strtoul.m4 \ + $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/strtoumax.m4 \ + $(top_srcdir)/m4/symlink.m4 $(top_srcdir)/m4/symlinkat.m4 \ + $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \ + $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/system.m4 \ + $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd-safer.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \ + $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/utimbuf.m4 $(top_srcdir)/m4/utimens.m4 \ + $(top_srcdir)/m4/utimensat.m4 $(top_srcdir)/m4/utimes.m4 \ $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/vasprintf.m4 \ $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/vsnprintf.m4 \ $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/wchar_h.m4 \ @@ -253,7 +260,7 @@ am__relativize = \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" -DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 \ +DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 $(distdir).tar.xz \ $(distdir).shar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print @@ -264,6 +271,7 @@ ALLOCA_H = @ALLOCA_H@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ +ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOM4TE = @AUTOM4TE@ @@ -361,6 +369,7 @@ GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ +GNULIB_GRANTPT = @GNULIB_GRANTPT@ GNULIB_IMAXABS = @GNULIB_IMAXABS@ GNULIB_IMAXDIV = @GNULIB_IMAXDIV@ GNULIB_LCHMOD = @GNULIB_LCHMOD@ @@ -416,10 +425,12 @@ GNULIB_POPEN = @GNULIB_POPEN@ GNULIB_PREAD = @GNULIB_PREAD@ GNULIB_PRINTF = @GNULIB_PRINTF@ GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ +GNULIB_PTSNAME = @GNULIB_PTSNAME@ GNULIB_PUTC = @GNULIB_PUTC@ GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ GNULIB_PUTENV = @GNULIB_PUTENV@ GNULIB_PUTS = @GNULIB_PUTS@ +GNULIB_PWRITE = @GNULIB_PWRITE@ GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ GNULIB_READLINK = @GNULIB_READLINK@ @@ -444,6 +455,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ GNULIB_STRDUP = @GNULIB_STRDUP@ GNULIB_STRERROR = @GNULIB_STRERROR@ +GNULIB_STRNCAT = @GNULIB_STRNCAT@ GNULIB_STRNDUP = @GNULIB_STRNDUP@ GNULIB_STRNLEN = @GNULIB_STRNLEN@ GNULIB_STRPBRK = @GNULIB_STRPBRK@ @@ -460,11 +472,16 @@ GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@ GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ GNULIB_SYMLINK = @GNULIB_SYMLINK@ GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ +GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ GNULIB_TIMEGM = @GNULIB_TIMEGM@ +GNULIB_TIME_R = @GNULIB_TIME_R@ +GNULIB_TMPFILE = @GNULIB_TMPFILE@ +GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@ GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ GNULIB_UNLINK = @GNULIB_UNLINK@ GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ +GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ GNULIB_UNSETENV = @GNULIB_UNSETENV@ GNULIB_USLEEP = @GNULIB_USLEEP@ GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ @@ -482,20 +499,23 @@ GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ GNULIB_WCTOB = @GNULIB_WCTOB@ GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ GNULIB_WRITE = @GNULIB_WRITE@ +GNULIB__EXIT = @GNULIB__EXIT@ GREP = @GREP@ HAVE_ALPHASORT = @HAVE_ALPHASORT@ HAVE_ATOLL = @HAVE_ATOLL@ HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_CALLOC_POSIX = @HAVE_CALLOC_POSIX@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ HAVE_CHOWN = @HAVE_CHOWN@ HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ +HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ +HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ +HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ @@ -503,7 +523,6 @@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR = @HAVE_DECL_STRERROR@ HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ @@ -519,12 +538,15 @@ HAVE_DUP2 = @HAVE_DUP2@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_FACCESSAT = @HAVE_FACCESSAT@ +HAVE_FCHDIR = @HAVE_FCHDIR@ HAVE_FCHMODAT = @HAVE_FCHMODAT@ HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ HAVE_FCNTL = @HAVE_FCNTL@ HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ +HAVE_FSEEKO = @HAVE_FSEEKO@ HAVE_FSTATAT = @HAVE_FSTATAT@ HAVE_FSYNC = @HAVE_FSYNC@ +HAVE_FTELLO = @HAVE_FTELLO@ HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ HAVE_FUTIMENS = @HAVE_FUTIMENS@ HAVE_GETDOMAINNAME = @HAVE_GETDOMAINNAME@ @@ -536,25 +558,29 @@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ -HAVE_GETUSERSHELL = @HAVE_GETUSERSHELL@ +HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ +HAVE_ISWBLANK = @HAVE_ISWBLANK@ HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ +HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ +HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ HAVE_LCHMOD = @HAVE_LCHMOD@ HAVE_LCHOWN = @HAVE_LCHOWN@ HAVE_LINK = @HAVE_LINK@ HAVE_LINKAT = @HAVE_LINKAT@ +HAVE_LOCALTIME_R = @HAVE_LOCALTIME_R@ HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MALLOC_POSIX = @HAVE_MALLOC_POSIX@ HAVE_MBRLEN = @HAVE_MBRLEN@ HAVE_MBRTOWC = @HAVE_MBRTOWC@ HAVE_MBSINIT = @HAVE_MBSINIT@ HAVE_MBSLEN = @HAVE_MBSLEN@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ +HAVE_MEMCHR = @HAVE_MEMCHR@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ @@ -564,18 +590,21 @@ HAVE_MKNOD = @HAVE_MKNOD@ HAVE_MKNODAT = @HAVE_MKNODAT@ HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ +HAVE_MKSTEMP = @HAVE_MKSTEMP@ HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ +HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ HAVE_OPENAT = @HAVE_OPENAT@ HAVE_OS_H = @HAVE_OS_H@ HAVE_PIPE2 = @HAVE_PIPE2@ HAVE_PREAD = @HAVE_PREAD@ +HAVE_PTSNAME = @HAVE_PTSNAME@ +HAVE_PWRITE = @HAVE_PWRITE@ HAVE_RANDOM_H = @HAVE_RANDOM_H@ HAVE_RANDOM_R = @HAVE_RANDOM_R@ HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ HAVE_READLINK = @HAVE_READLINK@ HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOC_POSIX = @HAVE_REALLOC_POSIX@ HAVE_REALPATH = @HAVE_REALPATH@ HAVE_RENAMEAT = @HAVE_RENAMEAT@ HAVE_RPMATCH = @HAVE_RPMATCH@ @@ -592,6 +621,7 @@ HAVE_STRCASECMP = @HAVE_STRCASECMP@ HAVE_STRCASESTR = @HAVE_STRCASESTR@ HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ HAVE_STRPBRK = @HAVE_STRPBRK@ +HAVE_STRPTIME = @HAVE_STRPTIME@ HAVE_STRSEP = @HAVE_STRSEP@ HAVE_STRTOD = @HAVE_STRTOD@ HAVE_STRTOLL = @HAVE_STRTOLL@ @@ -608,8 +638,11 @@ HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ +HAVE_TIMEGM = @HAVE_TIMEGM@ +HAVE_TTYNAME_R = @HAVE_TTYNAME_R@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ +HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_UNSETENV = @HAVE_UNSETENV@ HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -624,6 +657,7 @@ HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ HAVE_WINT_T = @HAVE_WINT_T@ HAVE__BOOL = @HAVE__BOOL@ +HAVE__EXIT = @HAVE__EXIT@ INCLUDE_NEXT = @INCLUDE_NEXT@ INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ INSTALL = @INSTALL@ @@ -642,6 +676,8 @@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ +LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ LIB_SETSOCKOPT = @LIB_SETSOCKOPT@ LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ @@ -708,21 +744,24 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ POSUB = @POSUB@ +PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@ +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ PU_RMT_PROG = @PU_RMT_PROG@ RANLIB = @RANLIB@ REPLACE_BTOWC = @REPLACE_BTOWC@ +REPLACE_CALLOC = @REPLACE_CALLOC@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ +REPLACE_DIRFD = @REPLACE_DIRFD@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_FCHDIR = @REPLACE_FCHDIR@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ @@ -745,6 +784,7 @@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ +REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ REPLACE_LCHOWN = @REPLACE_LCHOWN@ REPLACE_LINK = @REPLACE_LINK@ @@ -752,6 +792,7 @@ REPLACE_LINKAT = @REPLACE_LINKAT@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ +REPLACE_MALLOC = @REPLACE_MALLOC@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ @@ -777,7 +818,9 @@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PUTENV = @REPLACE_PUTENV@ +REPLACE_PWRITE = @REPLACE_PWRITE@ REPLACE_READLINK = @REPLACE_READLINK@ +REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -789,17 +832,21 @@ REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRDUP = @REPLACE_STRDUP@ REPLACE_STRERROR = @REPLACE_STRERROR@ +REPLACE_STRNCAT = @REPLACE_STRNCAT@ REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRPTIME = @REPLACE_STRPTIME@ +REPLACE_STRNLEN = @REPLACE_STRNLEN@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ REPLACE_STRSTR = @REPLACE_STRSTR@ REPLACE_STRTOD = @REPLACE_STRTOD@ REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TMPFILE = @REPLACE_TMPFILE@ +REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ REPLACE_UNLINK = @REPLACE_UNLINK@ REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ REPLACE_UNSETENV = @REPLACE_UNSETENV@ @@ -869,6 +916,7 @@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ +gltests_WITNESS = @gltests_WITNESS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -1180,7 +1228,6 @@ dist-bzip2: distdir dist-lzma: distdir tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma $(am__remove_distdir) - dist-xz: distdir tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz $(am__remove_distdir) @@ -1200,6 +1247,7 @@ dist-zip: distdir dist dist-all: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 + tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__remove_distdir) @@ -1398,7 +1446,7 @@ uninstall-am: tags-recursive uninstall uninstall-am -dist-hook: +dist-hook: $(MAKE) changelog_dir=$(distdir) ChangeLog -rm -f $(distdir).cpio find $(distdir) | cpio -Hcrc -o | \ diff --git a/NEWS b/NEWS index 3254266..66d9c88 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,98 @@ -GNU tar NEWS - User visible changes. 2010-03-10 +GNU tar NEWS - User visible changes. 2010-10-24 Please send GNU tar bug reports to + +version 1.24 - Sergey Poznyakoff, 2010-10-24 + +* The --full-time option. + +New command line option `--full-time' instructs tar to output file +time stamps to the full resolution. + +* Bugfixes. + +** More reliable directory traversal when creating archives + +Tar now checks for inconsistencies caused when a file system is +modified while tar is creating an archive. In the new approach, tar +maintains a cache of file descriptors to directories, so it uses more +file descriptors than before, but it adjusts to system limits on +the number of file descriptors. Tar also takes more care when +a file system is modified while tar is extracting from an archive. + +The new checks are implemented via the openat and related calls +standardized by POSIX.1-2008. On an older system where these calls do +not exist or do not return useful results, tar emulates the calls at +some cost in efficiency and reliability. + +** Symbolic link attributes + +When extracting symbolic links, tar now restores attributes such as +last-modified time and link permissions, if the operating system +supports this. For example, recent versions of the Linux kernel +support setting times on symlinks, and some BSD kernels also support +symlink permissions. + +** --dereference consistency + +The --dereference (-h) option now applies to files that are copied +into or out of archives, independently of other options. For example, +if F is a symbolic link and archive.tar contains a regular-file member +also named F, "tar --overwrite -x -f archive.tar F" now overwrites F +itself, rather than the file that F points to. (To overwrite the file +that F points to, add the --dereference (-h) option.) Formerly, +--dereference was intended to apply only when using the -c option, but +the implementation was not consistent. + +Also, the --dereference option no longer affects accesses to other +files, such as archives and time stamp files. Symbolic links to these +files are always followed. Previously, the links were usually but not +always followed. + +** Spurious error diagnostics on broken pipe. + +When receiving SIGPIPE, tar would exit with error status and +"write error" diagnostics. In particular, this occurred if +invoked as in the example below: + + tar tf archive.tar | head -n 1 + +** --remove-files + +`Tar --remove-files' failed to remove a directory which contained +symlinks to another files within that directory. + +** --test-label behavior + +In case of a mismatch, `tar --test-label LABEL' exits with code 1, +not 2 as it did in previous versions. + +The `--verbose' option used with `--test-label' provides additional +diagnostics. + +Several volume labels may be specified in a command line, e.g.: + + tar --test-label -f archive 'My volume' 'New volume' 'Test volume' + +In this case, tar exits with code 0 if any one of the arguments +matches the actual volume label. + +** --label used with --update + +The `--label' option can be used with `--update' to prevent accidental +update of an archive: + + tar -rf archive --label 'My volume' . + +This did not work in previous versions, in spite of what the docs said. + +** --record-size and --tape-length (-L) options + +Usual size suffixes are allowed for these options. For example, +-L10k stands for a 10 kilobyte tape length. + +** Fix dead loop on extracting existing symlinks with the -k option. + version 1.23 - Sergey Poznyakoff, 2010-03-10 @@ -80,7 +172,7 @@ the Epoch or a `Time reference' (see below). * Time references in --pax-option argument. Any value from the --pax-option argument that is enclosed in a pair -of curly braces represents a time reference. The string between the +of curly braces represents a time reference. The string between the braces is understood either as a textual time representation, as described in chapter 7, "Date input formats", of the Tar manual, or as a name of an existing file, starting with `/' or `.'. In the latter @@ -114,14 +206,14 @@ version 1.22 - Sergey Poznyakoff, 2009-03-05 * Support for xz compression -Tar uses xz for compression if one of the following conditions is met: +Tar uses xz for compression if one of the following conditions is met: 1. The option --xz or -J (see below) is used. 2. The xz binary is set as compressor using --use-compress-program option. 3. The file name of the archive being created ends in `.xz' and auto-compress option (-a) is used. -Xz is used for decompression if one of the following conditions is met: +Xz is used for decompression if one of the following conditions is met: 1. The option --xz or -J is used. 2. The xz binary is set as compressor using --use-compress-program option. @@ -174,7 +266,7 @@ control type of archive members affected by them. The flags are: - s Apply transformation to symbolic link targets. - - h + - h Apply transformation to hard link targets. Corresponding upper-case letters negate the meaning, so that @@ -196,10 +288,10 @@ can be changed using `flags=' statement before the expressions, e.g.: ** The --null option disabled handling of tar options in list files. This is fixed. -** Fixed record size autodetection. If detected record size differs from -the expected value (either default, or set on the command line), tar -always prints a warning if verbosity level is set to 1 or greater, -i.e. if either -t or -v option is given. +** Fixed record size autodetection. If the detected record size differs from +the expected value (either default one, or the one set from the +command line), tar always prints a warning if verbosity level is set +to 1 or greater, i.e. if either -t or -v option is given. @@ -253,7 +345,7 @@ during both creation and extraction. Tar 1.19 used them only during extraction. For a detailed description, see chapter 6.7 "Modifying File and Member -Names". +Names". * Info (end-of-volume) scripts @@ -280,8 +372,8 @@ control systems, e.g. "CVS/", ".svn/", etc. The following options now work with incremental archives as well: - --exclude-caches - --exclude-caches-all + --exclude-caches + --exclude-caches-all --exclude-tag --exclude-tag-all --exclude-tag-under @@ -292,14 +384,14 @@ Previous versions always stored absolute file names in rename records, even if -P was not used. This is fixed: rename records contain file names processed in accordance with the command line settings. - + * Fix --version output. * Recognition of broken archives. When supplied an archive smaller than 512 bytes in reading mode (-x, -t), the previous version of tar silently ignored it, exiting with -code 0. It is fixed. Tar now issues the following diagnostic message: +code 0. It is fixed. Tar now issues the following diagnostic message: 'This does not look like a tar archive', and exits with code 2. * Fix double-dot recognition in archive member names in case of duplicate '/.'. diff --git a/README b/README index f07050c..bf65e82 100644 --- a/README +++ b/README @@ -180,19 +180,19 @@ the `lchown' call will be used if available, but that's all. GNU `tar' is able to create archive in the following formats: *** The format of UNIX version 7 - *** POSIX.1-1988 format, also known as "ustar format" + *** POSIX.1-1988 format, also known as "ustar format" *** POSIX.1-2001 format, also known as "pax format" *** Old GNU format (described below) In addition to those, GNU `tar' is also able to read archives -produced by `star' archiver. +produced by `star' archiver. A so called `Old GNU' format is based on an early draft of the POSIX 1003.1 `ustar' standard which is different from the final standard. It defines its extensions (such as incremental backups and handling of the long file names) in a way incompatible with any existing tar archive format, therefore the use of old GNU -format is strongly discouraged. +format is strongly discouraged. Please read the file NEWS for more information about POSIX compliance and new `tar' features. @@ -248,4 +248,3 @@ mode: outline paragraph-separate: "[ ]*$" version-control: never End: - diff --git a/THANKS b/THANKS index 525981c..0364c50 100644 --- a/THANKS +++ b/THANKS @@ -133,7 +133,7 @@ David Steiner dsteiner@ispa.uni-osnabrueck.de David Taylor taylor@think.com Dean Gaudet dgaudet@watdragon.uwaterloo.ca Demizu Noritoshi nori-d@is.aist-nara.ac.jp -Denis Excoffier denis.excoffier@airbus.com +Denis Excoffier denis.excoffier@free.fr Denis Fortin fortin@acm.org Dennis Pixton dennis@math.binghamton.edu Dick Streefland dicks@tasking.nl diff --git a/aclocal.m4 b/aclocal.m4 index 27de172..93aa9ab 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1032,6 +1032,7 @@ m4_include([m4/00gnulib.m4]) m4_include([m4/alloca.m4]) m4_include([m4/argmatch.m4]) m4_include([m4/argp.m4]) +m4_include([m4/asm-underscore.m4]) m4_include([m4/backupfile.m4]) m4_include([m4/bison.m4]) m4_include([m4/btowc.m4]) @@ -1039,6 +1040,7 @@ m4_include([m4/canonicalize.m4]) m4_include([m4/chdir-long.m4]) m4_include([m4/chown.m4]) m4_include([m4/clock_time.m4]) +m4_include([m4/cloexec.m4]) m4_include([m4/close-stream.m4]) m4_include([m4/close.m4]) m4_include([m4/closeout.m4]) @@ -1064,15 +1066,15 @@ m4_include([m4/fcntl.m4]) m4_include([m4/fcntl_h.m4]) m4_include([m4/fdopendir.m4]) m4_include([m4/fileblocks.m4]) +m4_include([m4/filenamecat.m4]) m4_include([m4/float_h.m4]) m4_include([m4/fnmatch.m4]) m4_include([m4/fpending.m4]) m4_include([m4/fseeko.m4]) -m4_include([m4/ftruncate.m4]) +m4_include([m4/futimens.m4]) m4_include([m4/getcwd-abort-bug.m4]) m4_include([m4/getcwd-path-max.m4]) m4_include([m4/getcwd.m4]) -m4_include([m4/getdate.m4]) m4_include([m4/getdelim.m4]) m4_include([m4/getdtablesize.m4]) m4_include([m4/getline.m4]) @@ -1100,6 +1102,10 @@ m4_include([m4/lchown.m4]) m4_include([m4/lib-ld.m4]) m4_include([m4/lib-link.m4]) m4_include([m4/lib-prefix.m4]) +m4_include([m4/libunistring-base.m4]) +m4_include([m4/link-follow.m4]) +m4_include([m4/link.m4]) +m4_include([m4/linkat.m4]) m4_include([m4/localcharset.m4]) m4_include([m4/locale-fr.m4]) m4_include([m4/locale-ja.m4]) @@ -1120,6 +1126,9 @@ m4_include([m4/mempcpy.m4]) m4_include([m4/memrchr.m4]) m4_include([m4/mkdir.m4]) m4_include([m4/mkdtemp.m4]) +m4_include([m4/mkfifo.m4]) +m4_include([m4/mkfifoat.m4]) +m4_include([m4/mknod.m4]) m4_include([m4/mktime.m4]) m4_include([m4/mmap-anon.m4]) m4_include([m4/mode_t.m4]) @@ -1129,6 +1138,7 @@ m4_include([m4/nl_langinfo.m4]) m4_include([m4/nls.m4]) m4_include([m4/open.m4]) m4_include([m4/openat.m4]) +m4_include([m4/parse-datetime.m4]) m4_include([m4/pathmax.m4]) m4_include([m4/paxutils.m4]) m4_include([m4/po.m4]) @@ -1139,15 +1149,17 @@ m4_include([m4/quote.m4]) m4_include([m4/quotearg.m4]) m4_include([m4/rawmemchr.m4]) m4_include([m4/readlink.m4]) +m4_include([m4/readlinkat.m4]) m4_include([m4/realloc.m4]) m4_include([m4/regex.m4]) +m4_include([m4/rename.m4]) +m4_include([m4/renameat.m4]) m4_include([m4/rmdir.m4]) m4_include([m4/rmt.m4]) m4_include([m4/rpmatch.m4]) m4_include([m4/rtapelib.m4]) m4_include([m4/safe-read.m4]) m4_include([m4/safe-write.m4]) -m4_include([m4/same.m4]) m4_include([m4/save-cwd.m4]) m4_include([m4/savedir.m4]) m4_include([m4/setenv.m4]) @@ -1179,6 +1191,8 @@ m4_include([m4/strtoll.m4]) m4_include([m4/strtoul.m4]) m4_include([m4/strtoull.m4]) m4_include([m4/strtoumax.m4]) +m4_include([m4/symlink.m4]) +m4_include([m4/symlinkat.m4]) m4_include([m4/sys_stat_h.m4]) m4_include([m4/sys_time_h.m4]) m4_include([m4/sysexits.m4]) @@ -1195,6 +1209,7 @@ m4_include([m4/unlinkdir.m4]) m4_include([m4/unlocked-io.m4]) m4_include([m4/utimbuf.m4]) m4_include([m4/utimens.m4]) +m4_include([m4/utimensat.m4]) m4_include([m4/utimes.m4]) m4_include([m4/vasnprintf.m4]) m4_include([m4/vasprintf.m4]) diff --git a/build-aux/c++defs.h b/build-aux/c++defs.h index 24b8d5d..c41e242 100644 --- a/build-aux/c++defs.h +++ b/build-aux/c++defs.h @@ -128,6 +128,24 @@ _GL_EXTERN_C int _gl_cxxalias_dummy #endif +/* _GL_CXXALIAS_RPL_CAST_1 (func, rpl_func, rettype, parameters); + is like _GL_CXXALIAS_RPL_1 (func, rpl_func, rettype, parameters); + except that the C function rpl_func may have a slightly different + declaration. A cast is used to silence the "invalid conversion" error + that would otherwise occur. */ +#if defined __cplusplus && defined GNULIB_NAMESPACE +# define _GL_CXXALIAS_RPL_CAST_1(func,rpl_func,rettype,parameters) \ + namespace GNULIB_NAMESPACE \ + { \ + rettype (*const func) parameters = \ + reinterpret_cast(::rpl_func); \ + } \ + _GL_EXTERN_C int _gl_cxxalias_dummy +#else +# define _GL_CXXALIAS_RPL_CAST_1(func,rpl_func,rettype,parameters) \ + _GL_EXTERN_C int _gl_cxxalias_dummy +#endif + /* _GL_CXXALIAS_SYS (func, rettype, parameters); declares a C++ alias called GNULIB_NAMESPACE::func that redirects to the system provided function func, if GNULIB_NAMESPACE @@ -178,34 +196,78 @@ are used to silence the "cannot find a match" and "invalid conversion" errors that would otherwise occur. */ #if defined __cplusplus && defined GNULIB_NAMESPACE + /* The outer cast must be a reinterpret_cast. + The inner cast: When the function is defined as a set of overloaded + functions, it works as a static_cast<>, choosing the designated variant. + When the function is defined as a single variant, it works as a + reinterpret_cast<>. The parenthesized cast syntax works both ways. */ # define _GL_CXXALIAS_SYS_CAST2(func,rettype,parameters,rettype2,parameters2) \ namespace GNULIB_NAMESPACE \ { \ static rettype (*func) parameters = \ reinterpret_cast( \ - reinterpret_cast(::func)); \ + (rettype2(*)parameters2)(::func)); \ } \ _GL_EXTERN_C int _gl_cxxalias_dummy #else -# define _GL_CXXALIAS_SYS_CAST(func,rettype,parameters) \ +# define _GL_CXXALIAS_SYS_CAST2(func,rettype,parameters,rettype2,parameters2) \ _GL_EXTERN_C int _gl_cxxalias_dummy #endif /* _GL_CXXALIASWARN (func); causes a warning to be emitted when ::func is used but not when - GNULIB_NAMESPACE::func is used. */ + GNULIB_NAMESPACE::func is used. func must be defined without overloaded + variants. */ #if defined __cplusplus && defined GNULIB_NAMESPACE # define _GL_CXXALIASWARN(func) \ - _GL_CXXALIASWARN1 (func, GNULIB_NAMESPACE) -# define _GL_CXXALIASWARN1(func,namespace) \ - _GL_CXXALIASWARN2 (func, namespace) -# define _GL_CXXALIASWARN2(func,namespace) \ - _GL_WARN_ON_USE (func, \ - "The symbol ::" #func " refers to the system function. " \ - "Use " #namespace "::" #func " instead.") + _GL_CXXALIASWARN_1 (func, GNULIB_NAMESPACE) +# define _GL_CXXALIASWARN_1(func,namespace) \ + _GL_CXXALIASWARN_2 (func, namespace) +/* To work around GCC bug , + we enable the warning only when not optimizing. */ +# if !__OPTIMIZE__ +# define _GL_CXXALIASWARN_2(func,namespace) \ + _GL_WARN_ON_USE (func, \ + "The symbol ::" #func " refers to the system function. " \ + "Use " #namespace "::" #func " instead.") +# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING +# define _GL_CXXALIASWARN_2(func,namespace) \ + extern __typeof__ (func) func +# else +# define _GL_CXXALIASWARN_2(func,namespace) \ + _GL_EXTERN_C int _gl_cxxalias_dummy +# endif #else # define _GL_CXXALIASWARN(func) \ _GL_EXTERN_C int _gl_cxxalias_dummy #endif +/* _GL_CXXALIASWARN1 (func, rettype, parameters_and_attributes); + causes a warning to be emitted when the given overloaded variant of ::func + is used but not when GNULIB_NAMESPACE::func is used. */ +#if defined __cplusplus && defined GNULIB_NAMESPACE +# define _GL_CXXALIASWARN1(func,rettype,parameters_and_attributes) \ + _GL_CXXALIASWARN1_1 (func, rettype, parameters_and_attributes, \ + GNULIB_NAMESPACE) +# define _GL_CXXALIASWARN1_1(func,rettype,parameters_and_attributes,namespace) \ + _GL_CXXALIASWARN1_2 (func, rettype, parameters_and_attributes, namespace) +/* To work around GCC bug , + we enable the warning only when not optimizing. */ +# if !__OPTIMIZE__ +# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ + _GL_WARN_ON_USE_CXX (func, rettype, parameters_and_attributes, \ + "The symbol ::" #func " refers to the system function. " \ + "Use " #namespace "::" #func " instead.") +# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING +# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ + extern __typeof__ (func) func +# else +# define _GL_CXXALIASWARN1_2(func,rettype,parameters_and_attributes,namespace) \ + _GL_EXTERN_C int _gl_cxxalias_dummy +# endif +#else +# define _GL_CXXALIASWARN1(func,rettype,parameters_and_attributes) \ + _GL_EXTERN_C int _gl_cxxalias_dummy +#endif + #endif /* _GL_CXXDEFS_H */ diff --git a/build-aux/config.guess b/build-aux/config.guess index c2246a4..4c8f032 100755 --- a/build-aux/config.guess +++ b/build-aux/config.guess @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 # Free Software Foundation, Inc. -timestamp='2009-12-30' +timestamp='2010-09-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 @@ -92,7 +92,7 @@ if test $# != 0; then exit 1 fi -trap 'exit 1' 1 2 15 +trap 'exit 1' HUP INT TERM # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires @@ -106,7 +106,7 @@ trap 'exit 1' 1 2 15 set_cc_for_build=' trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; +trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" HUP INT PIPE TERM ; : ${TMPDIR=/tmp} ; { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || @@ -552,7 +552,7 @@ EOF echo rs6000-ibm-aix3.2 fi exit ;; - *:AIX:*:[456]) + *:AIX:*:[4567]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 @@ -968,6 +968,9 @@ EOF sparc:Linux:*:* | sparc64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; + tile*:Linux:*:*) + echo ${UNAME_MACHINE}-tilera-linux-gnu + exit ;; vax:Linux:*:*) echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; @@ -1231,6 +1234,9 @@ EOF *:QNX:*:4*) echo i386-pc-qnx exit ;; + NEO-?:NONSTOP_KERNEL:*:*) + echo neo-tandem-nsk${UNAME_RELEASE} + exit ;; NSE-?:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; diff --git a/build-aux/config.sub b/build-aux/config.sub index c2d1257..320e303 100755 --- a/build-aux/config.sub +++ b/build-aux/config.sub @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 # Free Software Foundation, Inc. -timestamp='2010-01-22' +timestamp='2010-09-11' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -124,8 +124,9 @@ esac # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in - nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ - uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ + nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ + linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ + knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os @@ -282,6 +283,7 @@ case $basic_machine in | moxie \ | mt \ | msp430 \ + | nds32 | nds32le | nds32be \ | nios | nios2 \ | ns16k | ns32k \ | or32 \ @@ -295,7 +297,7 @@ case $basic_machine in | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | spu | strongarm \ - | tahoe | thumb | tic4x | tic80 | tron \ + | tahoe | thumb | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ | ubicom32 \ | v850 | v850e \ | we32k \ @@ -303,6 +305,15 @@ case $basic_machine in | z8k | z80) basic_machine=$basic_machine-unknown ;; + c54x) + basic_machine=tic54x-unknown + ;; + c55x) + basic_machine=tic55x-unknown + ;; + c6x) + basic_machine=tic6x-unknown + ;; m6811 | m68hc11 | m6812 | m68hc12 | picochip) # Motorola 68HC11/12. basic_machine=$basic_machine-unknown @@ -334,7 +345,7 @@ case $basic_machine in | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* \ | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ @@ -368,6 +379,7 @@ case $basic_machine in | mmix-* \ | mt-* \ | msp430-* \ + | nds32-* | nds32le-* | nds32be-* \ | nios-* | nios2-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | orion-* \ @@ -482,6 +494,15 @@ case $basic_machine in basic_machine=powerpc-ibm os=-cnk ;; + c54x-*) + basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c55x-*) + basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c6x-*) + basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; c90) basic_machine=c90-cray os=-unicos @@ -841,6 +862,12 @@ case $basic_machine in np1) basic_machine=np1-gould ;; + neo-tandem) + basic_machine=neo-tandem + ;; + nse-tandem) + basic_machine=nse-tandem + ;; nsr-tandem) basic_machine=nsr-tandem ;; @@ -1075,18 +1102,6 @@ case $basic_machine in basic_machine=t90-cray os=-unicos ;; - tic54x | c54x*) - basic_machine=tic54x-unknown - os=-coff - ;; - tic55x | c55x*) - basic_machine=tic55x-unknown - os=-coff - ;; - tic6x | c6x*) - basic_machine=tic6x-unknown - os=-coff - ;; # This must be matched before tile*. tilegx*) basic_machine=tilegx-unknown @@ -1301,7 +1316,8 @@ case $os in | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ + | -mingw32* | -linux-gnu* | -linux-android* \ + | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ @@ -1484,6 +1500,15 @@ case $basic_machine in c4x-* | tic4x-*) os=-coff ;; + tic54x-*) + os=-coff + ;; + tic55x-*) + os=-coff + ;; + tic6x-*) + os=-coff + ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 diff --git a/build-aux/depcomp b/build-aux/depcomp index df8eea7..c3163be 100755 --- a/build-aux/depcomp +++ b/build-aux/depcomp @@ -1,10 +1,10 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2009-04-28.21; # UTC +scriptversion=2010-10-07.20; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free -# Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010 +# Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -90,10 +90,18 @@ if test "$depmode" = msvcmsys; then # This is just like msvisualcpp but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 - cygpath_u="sed s,\\\\\\\\,/,g" + cygpath_u='sed s,\\\\,/,g' depmode=msvisualcpp fi +if test "$depmode" = msvc7msys; then + # This is just like msvc7 but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u='sed s,\\\\,/,g' + depmode=msvc7 +fi + case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what @@ -405,6 +413,52 @@ tru64) rm -f "$tmpdepfile" ;; +msvc7) + if test "$libtool" = yes; then + showIncludes=-Wc,-showIncludes + else + showIncludes=-showIncludes + fi + "$@" $showIncludes > "$tmpdepfile" + stat=$? + grep -v '^Note: including file: ' "$tmpdepfile" + if test "$stat" = 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + echo "$object : \\" > "$depfile" + # The first sed program below extracts the file names and escapes + # backslashes for cygpath. The second sed program outputs the file + # name when reading, but also accumulates all include files in the + # hold buffer in order to output them again at the end. This only + # works with sed implementations that can handle large buffers. + sed < "$tmpdepfile" -n ' +/^Note: including file: *\(.*\)/ { + s//\1/ + s/\\/\\\\/g + p +}' | $cygpath_u | sort -u | sed -n ' +s/ /\\ /g +s/\(.*\)/ \1 \\/p +s/.\(.*\) \\/\1:/ +H +$ { + s/.*/ / + G + p +}' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +msvc7msys) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. diff --git a/build-aux/mdate-sh b/build-aux/mdate-sh index c477512..60dc485 100755 --- a/build-aux/mdate-sh +++ b/build-aux/mdate-sh @@ -1,7 +1,7 @@ #!/bin/sh # Get modification time of a file or directory and pretty-print it. -scriptversion=2010-02-22.21; # UTC +scriptversion=2010-08-21.06; # UTC # Copyright (C) 1995, 1996, 1997, 2003, 2004, 2005, 2007, 2009, 2010 # Free Software Foundation, Inc. @@ -29,6 +29,15 @@ scriptversion=2010-02-22.21; # UTC # bugs to or send patches to # . +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +fi + case $1 in '') echo "$0: No file. Try \`$0 --help' for more information." 1>&2 @@ -51,6 +60,13 @@ EOF ;; esac +error () +{ + echo "$0: $1" >&2 + exit 1 +} + + # Prevent date giving response in another language. LANG=C export LANG @@ -100,6 +116,7 @@ month= command= until test $month do + test $# -gt 0 || error "failed parsing \`$ls_command /' output" shift # Add another shift to the command. command="$command shift;" @@ -119,8 +136,10 @@ do esac done +test -n "$month" || error "failed parsing \`$ls_command /' output" + # Get the extended ls output of the file or directory. -set dummy x`eval "$ls_command \"\$save_arg1\""` +set dummy x`eval "$ls_command \"\\\$save_arg1\""` # Remove all preceding arguments eval $command diff --git a/build-aux/texinfo.tex b/build-aux/texinfo.tex index 9ef9480..f472b65 100644 --- a/build-aux/texinfo.tex +++ b/build-aux/texinfo.tex @@ -3,7 +3,7 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2010-03-07.08} +\def\texinfoversion{2010-09-06.17} % % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, @@ -65,7 +65,6 @@ \everyjob{\message{[Texinfo version \texinfoversion]}% \catcode`+=\active \catcode`\_=\active} - \chardef\other=12 % We never want plain's \outer definition of \+ in Texinfo. @@ -198,36 +197,7 @@ % that mark overfull boxes (in case you have decided % that the text looks ok even though it passes the margin). % -\def\finalout{\overfullrule=0pt} - -% @| inserts a changebar to the left of the current line. It should -% surround any changed text. This approach does *not* work if the -% change spans more than two lines of output. To handle that, we would -% have adopt a much more difficult approach (putting marks into the main -% vertical list for the beginning and end of each change). -% -\def\|{% - % \vadjust can only be used in horizontal mode. - \leavevmode - % - % Append this vertical mode material after the current line in the output. - \vadjust{% - % We want to insert a rule with the height and depth of the current - % leading; that is exactly what \strutbox is supposed to record. - \vskip-\baselineskip - % - % \vadjust-items are inserted at the left edge of the type. So - % the \llap here moves out into the left-hand margin. - \llap{% - % - % For a thicker or thinner bar, change the `1pt'. - \vrule height\baselineskip width1pt - % - % This is the space between the bar and the text. - \hskip 12pt - }% - }% -} +\def\finalout{\overfullrule=0pt } % Sometimes it is convenient to have everything in the transcript file % and nothing on the terminal. We don't just call \tracingall here, @@ -266,7 +236,6 @@ \def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount \removelastskip\penalty-200\bigskip\fi\fi} -% For @cropmarks command. % Do @cropmarks to get crop marks. % \newif\ifcropmarks @@ -598,85 +567,6 @@ \newhelp\EMsimple{Press RETURN to continue.} -%% Simple single-character @ commands - -% @@ prints an @ -% Kludge this until the fonts are right (grr). -\def\@{{\tt\char64}} - -% This is turned off because it was never documented -% and you can use @w{...} around a quote to suppress ligatures. -%% Define @` and @' to be the same as ` and ' -%% but suppressing ligatures. -%\def\`{{`}} -%\def\'{{'}} - -% Used to generate quoted braces. -\def\mylbrace {{\tt\char123}} -\def\myrbrace {{\tt\char125}} -\let\{=\mylbrace -\let\}=\myrbrace -\begingroup - % Definitions to produce \{ and \} commands for indices, - % and @{ and @} for the aux/toc files. - \catcode`\{ = \other \catcode`\} = \other - \catcode`\[ = 1 \catcode`\] = 2 - \catcode`\! = 0 \catcode`\\ = \other - !gdef!lbracecmd[\{]% - !gdef!rbracecmd[\}]% - !gdef!lbraceatcmd[@{]% - !gdef!rbraceatcmd[@}]% -!endgroup - -% @comma{} to avoid , parsing problems. -\let\comma = , - -% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent -% Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H. -\let\, = \c -\let\dotaccent = \. -\def\ringaccent#1{{\accent23 #1}} -\let\tieaccent = \t -\let\ubaraccent = \b -\let\udotaccent = \d - -% Other special characters: @questiondown @exclamdown @ordf @ordm -% Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss. -\def\questiondown{?`} -\def\exclamdown{!`} -\def\ordf{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{a}}} -\def\ordm{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{o}}} - -% Dotless i and dotless j, used for accents. -\def\imacro{i} -\def\jmacro{j} -\def\dotless#1{% - \def\temp{#1}% - \ifx\temp\imacro \ifmmode\imath \else\ptexi \fi - \else\ifx\temp\jmacro \ifmmode\jmath \else\j \fi - \else \errmessage{@dotless can be used only with i or j}% - \fi\fi -} - -% The \TeX{} logo, as in plain, but resetting the spacing so that a -% period following counts as ending a sentence. (Idea found in latex.) -% -\edef\TeX{\TeX \spacefactor=1000 } - -% @LaTeX{} logo. Not quite the same results as the definition in -% latex.ltx, since we use a different font for the raised A; it's most -% convenient for us to use an explicitly smaller font, rather than using -% the \scriptstyle font (since we don't reset \scriptstyle and -% \scriptscriptstyle). -% -\def\LaTeX{% - L\kern-.36em - {\setbox0=\hbox{T}% - \vbox to \ht0{\hbox{\selectfonts\lllsize A}\vss}}% - \kern-.15em - \TeX -} - % Be sure we're in horizontal mode when doing a tie, since we make space % equivalent to this in @example-like environments. Otherwise, a space % at the beginning of a line will start with \penalty -- and @@ -872,7 +762,7 @@ where each line of input produces a line of output.} % @inmargin{WHICH}{TEXT} puts TEXT in the WHICH margin next to the current % paragraph. For more general purposes, use the \margin insertion -% class. WHICH is `l' or `r'. +% class. WHICH is `l' or `r'. Not documented, written for gawk manual. % \newskip\inmarginspacing \inmarginspacing=1cm \def\strutdepth{\dp\strutbox} @@ -919,6 +809,36 @@ where each line of input produces a line of output.} \temp } +% @| inserts a changebar to the left of the current line. It should +% surround any changed text. This approach does *not* work if the +% change spans more than two lines of output. To handle that, we would +% have adopt a much more difficult approach (putting marks into the main +% vertical list for the beginning and end of each change). This command +% is not documented, not supported, and doesn't work. +% +\def\|{% + % \vadjust can only be used in horizontal mode. + \leavevmode + % + % Append this vertical mode material after the current line in the output. + \vadjust{% + % We want to insert a rule with the height and depth of the current + % leading; that is exactly what \strutbox is supposed to record. + \vskip-\baselineskip + % + % \vadjust-items are inserted at the left edge of the type. So + % the \llap here moves out into the left-hand margin. + \llap{% + % + % For a thicker or thinner bar, change the `1pt'. + \vrule height\baselineskip width1pt + % + % This is the space between the bar and the text. + \hskip 12pt + }% + }% +} + % @include FILE -- \input text of FILE. % \def\include{\parseargusing\filenamecatcodes\includezzz} @@ -1094,109 +1014,6 @@ where each line of input produces a line of output.} } -% @asis just yields its argument. Used with @table, for example. -% -\def\asis#1{#1} - -% @math outputs its argument in math mode. -% -% One complication: _ usually means subscripts, but it could also mean -% an actual _ character, as in @math{@var{some_variable} + 1}. So make -% _ active, and distinguish by seeing if the current family is \slfam, -% which is what @var uses. -{ - \catcode`\_ = \active - \gdef\mathunderscore{% - \catcode`\_=\active - \def_{\ifnum\fam=\slfam \_\else\sb\fi}% - } -} -% Another complication: we want \\ (and @\) to output a \ character. -% FYI, plain.tex uses \\ as a temporary control sequence (why?), but -% this is not advertised and we don't care. Texinfo does not -% otherwise define @\. -% -% The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\. -\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi} -% -\def\math{% - \tex - \mathunderscore - \let\\ = \mathbackslash - \mathactive - % make the texinfo accent commands work in math mode - \let\"=\ddot - \let\'=\acute - \let\==\bar - \let\^=\hat - \let\`=\grave - \let\u=\breve - \let\v=\check - \let\~=\tilde - \let\dotaccent=\dot - $\finishmath -} -\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex. - -% Some active characters (such as <) are spaced differently in math. -% We have to reset their definitions in case the @math was an argument -% to a command which sets the catcodes (such as @item or @section). -% -{ - \catcode`^ = \active - \catcode`< = \active - \catcode`> = \active - \catcode`+ = \active - \catcode`' = \active - \gdef\mathactive{% - \let^ = \ptexhat - \let< = \ptexless - \let> = \ptexgtr - \let+ = \ptexplus - \let' = \ptexquoteright - } -} - -% Some math mode symbols. -\def\bullet{$\ptexbullet$} -\def\geq{\ifmmode \ge\else $\ge$\fi} -\def\leq{\ifmmode \le\else $\le$\fi} -\def\minus{\ifmmode -\else $-$\fi} - -% @dots{} outputs an ellipsis using the current font. -% We do .5em per period so that it has the same spacing in the cm -% typewriter fonts as three actual period characters; on the other hand, -% in other typewriter fonts three periods are wider than 1.5em. So do -% whichever is larger. -% -\def\dots{% - \leavevmode - \setbox0=\hbox{...}% get width of three periods - \ifdim\wd0 > 1.5em - \dimen0 = \wd0 - \else - \dimen0 = 1.5em - \fi - \hbox to \dimen0{% - \hskip 0pt plus.25fil - .\hskip 0pt plus1fil - .\hskip 0pt plus1fil - .\hskip 0pt plus.5fil - }% -} - -% @enddots{} is an end-of-sentence ellipsis. -% -\def\enddots{% - \dots - \spacefactor=\endofsentencespacefactor -} - -% @comma{} is so commas can be inserted into text without messing up -% Texinfo's parsing. -% -\let\comma = , - % @refill is a no-op. \let\refill=\relax @@ -1491,6 +1308,7 @@ output) for that.)} \edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace % % Read toc silently, to get counts of subentries for \pdfoutline. + \def\partentry##1##2##3##4{}% ignore parts in the outlines \def\numchapentry##1##2##3##4{% \def\thischapnum{##2}% \def\thissecnum{0}% @@ -2104,8 +1922,8 @@ end \font\reducedsy=cmsy10 \def\reducedecsize{1000} -% reset the current fonts -\textfonts +\textleading = 13.2pt % line spacing for 11pt CM +\textfonts % reset the current fonts \rm } % end of 11pt text font size definitions @@ -2235,11 +2053,9 @@ end \font\reducedsy=cmsy9 \def\reducedecsize{0900} -% reduce space between paragraphs -\divide\parskip by 2 - -% reset the current fonts -\textfonts +\divide\parskip by 2 % reduce space between paragraphs +\textleading = 12pt % line spacing for 10pt CM +\textfonts % reset the current fonts \rm } % end of 10pt text font size definitions @@ -2248,8 +2064,9 @@ end % @fonttextsize 10 % (or 11) to redefine the text font size. pt is assumed. % -\def\xword{10} \def\xiword{11} +\def\xword{10} +\def\xwordpt{10pt} % \parseargdef\fonttextsize{% \def\textsizearg{#1}% @@ -2307,7 +2124,7 @@ end \let\tenttsl=\titlettsl \def\curfontsize{title}% \def\lsize{chap}\def\lllsize{subsec}% - \resetmathfonts \setleading{25pt}} + \resetmathfonts \setleading{27pt}} \def\titlefont#1{{\titlefonts\rmisbold #1}} \def\chapfonts{% \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl @@ -2459,14 +2276,19 @@ end \let\markupsetuplqcode \markupsetcodequoteleft \let\markupsetuprqcode \markupsetcodequoteright +% \let\markupsetuplqexample \markupsetcodequoteleft \let\markupsetuprqexample \markupsetcodequoteright +% +\let\markupsetuplqsamp \markupsetcodequoteleft +\let\markupsetuprqsamp \markupsetcodequoteright +% \let\markupsetuplqverb \markupsetcodequoteleft \let\markupsetuprqverb \markupsetcodequoteright +% \let\markupsetuplqverbatim \markupsetcodequoteleft \let\markupsetuprqverbatim \markupsetcodequoteright -\let\markupsetuplqsamp \markupsetnoligaturesquoteleft \let\markupsetuplqkbd \markupsetnoligaturesquoteleft % Allow an option to not replace quotes with a regular directed right @@ -2506,12 +2328,12 @@ end % Font commands. -% #1 is the font command (\sl vs. \it), #2 is the text to slant. +% #1 is the font command (\sl or \it), #2 is the text to slant. % 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 - {\ttsl #2\let\next=\relax}% + {{\ttsl #2}\let\next=\relax}% {\def\next{{#1#2}\futurelet\next\smartitaliccorrection}}% \next } @@ -2831,8 +2653,188 @@ end \fi } +% @asis just yields its argument. Used with @table, for example. +% +\def\asis#1{#1} + +% @math outputs its argument in math mode. +% +% One complication: _ usually means subscripts, but it could also mean +% an actual _ character, as in @math{@var{some_variable} + 1}. So make +% _ active, and distinguish by seeing if the current family is \slfam, +% which is what @var uses. +{ + \catcode`\_ = \active + \gdef\mathunderscore{% + \catcode`\_=\active + \def_{\ifnum\fam=\slfam \_\else\sb\fi}% + } +} +% Another complication: we want \\ (and @\) to output a math (or tt) \. +% FYI, plain.tex uses \\ as a temporary control sequence (for no +% particular reason), but this is not advertised and we don't care. +% +% The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\. +\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi} +% +\def\math{% + \tex + \mathunderscore + \let\\ = \mathbackslash + \mathactive + % make the texinfo accent commands work in math mode + \let\"=\ddot + \let\'=\acute + \let\==\bar + \let\^=\hat + \let\`=\grave + \let\u=\breve + \let\v=\check + \let\~=\tilde + \let\dotaccent=\dot + $\finishmath +} +\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex. + +% Some active characters (such as <) are spaced differently in math. +% We have to reset their definitions in case the @math was an argument +% to a command which sets the catcodes (such as @item or @section). +% +{ + \catcode`^ = \active + \catcode`< = \active + \catcode`> = \active + \catcode`+ = \active + \catcode`' = \active + \gdef\mathactive{% + \let^ = \ptexhat + \let< = \ptexless + \let> = \ptexgtr + \let+ = \ptexplus + \let' = \ptexquoteright + } +} + \message{glyphs,} +% and logos. + +% @@ prints an @. +\def\@{\char64 } + +% Used to generate quoted braces. Unless we're in typewriter, use +% \ecfont because the CM text fonts do not have braces, and we don't +% want to switch into math. +\def\mylbrace{{\ifmonospace\else\ecfont\fi \char123}} +\def\myrbrace{{\ifmonospace\else\ecfont\fi \char125}} +\let\{=\mylbrace +\let\}=\myrbrace +\begingroup + % Definitions to produce \{ and \} commands for indices, + % and @{ and @} for the aux/toc files. + \catcode`\{ = \other \catcode`\} = \other + \catcode`\[ = 1 \catcode`\] = 2 + \catcode`\! = 0 \catcode`\\ = \other + !gdef!lbracecmd[\{]% + !gdef!rbracecmd[\}]% + !gdef!lbraceatcmd[@{]% + !gdef!rbraceatcmd[@}]% +!endgroup + +% @comma{} to avoid , parsing problems. +\let\comma = , + +% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent +% Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H. +\let\, = \ptexc +\let\dotaccent = \ptexdot +\def\ringaccent#1{{\accent23 #1}} +\let\tieaccent = \ptext +\let\ubaraccent = \ptexb +\let\udotaccent = \d + +% Other special characters: @questiondown @exclamdown @ordf @ordm +% Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss. +\def\questiondown{?`} +\def\exclamdown{!`} +\def\ordf{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{a}}} +\def\ordm{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{o}}} + +% Dotless i and dotless j, used for accents. +\def\imacro{i} +\def\jmacro{j} +\def\dotless#1{% + \def\temp{#1}% + \ifx\temp\imacro \ifmmode\imath \else\ptexi \fi + \else\ifx\temp\jmacro \ifmmode\jmath \else\j \fi + \else \errmessage{@dotless can be used only with i or j}% + \fi\fi +} + +% The \TeX{} logo, as in plain, but resetting the spacing so that a +% period following counts as ending a sentence. (Idea found in latex.) +% +\edef\TeX{\TeX \spacefactor=1000 } + +% @LaTeX{} logo. Not quite the same results as the definition in +% latex.ltx, since we use a different font for the raised A; it's most +% convenient for us to use an explicitly smaller font, rather than using +% the \scriptstyle font (since we don't reset \scriptstyle and +% \scriptscriptstyle). +% +\def\LaTeX{% + L\kern-.36em + {\setbox0=\hbox{T}% + \vbox to \ht0{\hbox{% + \ifx\textnominalsize\xwordpt + % for 10pt running text, \lllsize (8pt) is too small for the A in LaTeX. + % Revert to plain's \scriptsize, which is 7pt. + \count255=\the\fam $\fam\count255 \scriptstyle A$% + \else + % For 11pt, we can use our lllsize. + \selectfonts\lllsize A% + \fi + }% + \vss + }}% + \kern-.15em + \TeX +} + +% Some math mode symbols. +\def\bullet{$\ptexbullet$} +\def\geq{\ifmmode \ge\else $\ge$\fi} +\def\leq{\ifmmode \le\else $\le$\fi} +\def\minus{\ifmmode -\else $-$\fi} + +% @dots{} outputs an ellipsis using the current font. +% We do .5em per period so that it has the same spacing in the cm +% typewriter fonts as three actual period characters; on the other hand, +% in other typewriter fonts three periods are wider than 1.5em. So do +% whichever is larger. +% +\def\dots{% + \leavevmode + \setbox0=\hbox{...}% get width of three periods + \ifdim\wd0 > 1.5em + \dimen0 = \wd0 + \else + \dimen0 = 1.5em + \fi + \hbox to \dimen0{% + \hskip 0pt plus.25fil + .\hskip 0pt plus1fil + .\hskip 0pt plus1fil + .\hskip 0pt plus.5fil + }% +} + +% @enddots{} is an end-of-sentence ellipsis. +% +\def\enddots{% + \dots + \spacefactor=\endofsentencespacefactor +} % @point{}, @result{}, @expansion{}, @print{}, @equiv{}. % @@ -3219,10 +3221,14 @@ end \def\headings #1 {\csname HEADINGS#1\endcsname} -\def\HEADINGSoff{% -\global\evenheadline={\hfil} \global\evenfootline={\hfil} -\global\oddheadline={\hfil} \global\oddfootline={\hfil}} -\HEADINGSoff +\def\headingsoff{% non-global headings elimination + \evenheadline={\hfil}\evenfootline={\hfil}% + \oddheadline={\hfil}\oddfootline={\hfil}% +} + +\def\HEADINGSoff{{\globaldefs=1 \headingsoff}} % global setting +\HEADINGSoff % it's the default + % When we turn headings on, set the page number to 1. % For double-sided printing, put current file name in lower left corner, % chapter name on inside top of right hand pages, document @@ -3334,7 +3340,7 @@ end \begingroup \advance\leftskip by-\tableindent \advance\hsize by\tableindent - \advance\rightskip by0pt plus1fil + \advance\rightskip by0pt plus1fil\relax \leavevmode\unhbox0\par \endgroup % @@ -4146,11 +4152,14 @@ end \def\@{@}% change to @@ when we switch to @ as escape char in index files. \def\ {\realbackslash\space }% % - % Need these in case \tex is in effect and \{ is a \delimiter again. - % But can't use \lbracecmd and \rbracecmd because texindex assumes - % braces and backslashes are used only as delimiters. - \let\{ = \mylbrace - \let\} = \myrbrace + % Need these unexpandable (because we define \tt as a dummy) + % definitions when @{ or @} appear in index entry text. Also, more + % complicated, when \tex is in effect and \{ is a \delimiter again. + % We can't use \lbracecmd and \rbracecmd because texindex assumes + % braces and backslashes are used only as delimiters. Perhaps we + % should define @lbrace and @rbrace commands a la @comma. + \def\{{{\tt\char123}}% + \def\}{{\tt\char125}}% % % I don't entirely understand this, but when an index entry is % generated from a macro call, the \endinput which \scanmacro inserts @@ -4203,7 +4212,7 @@ end \def\commondummies{% % % \definedummyword defines \#1 as \string\#1\space, thus effectively - % preventing its expansion. This is used only for control% words, + % preventing its expansion. This is used only for control words, % not control letters, because the \space would be incorrect for % control characters, but is needed to separate the control word % from whatever follows. @@ -4222,6 +4231,7 @@ end \commondummiesnofonts % \definedummyletter\_% + \definedummyletter\-% % % Non-English letters. \definedummyword\AA @@ -4258,20 +4268,24 @@ end \definedummyword\TeX % % Assorted special characters. + \definedummyword\arrow \definedummyword\bullet \definedummyword\comma \definedummyword\copyright \definedummyword\registeredsymbol \definedummyword\dots \definedummyword\enddots + \definedummyword\entrybreak \definedummyword\equiv \definedummyword\error \definedummyword\euro + \definedummyword\expansion + \definedummyword\geq \definedummyword\guillemetleft \definedummyword\guillemetright \definedummyword\guilsinglleft \definedummyword\guilsinglright - \definedummyword\expansion + \definedummyword\leq \definedummyword\minus \definedummyword\ogonek \definedummyword\pounds @@ -4328,7 +4342,9 @@ end \definedummyword\b \definedummyword\i \definedummyword\r + \definedummyword\sansserif \definedummyword\sc + \definedummyword\slanted \definedummyword\t % % Commands that take arguments. @@ -4337,10 +4353,12 @@ end \definedummyword\code \definedummyword\command \definedummyword\dfn + \definedummyword\dmn \definedummyword\email \definedummyword\emph \definedummyword\env \definedummyword\file + \definedummyword\indicateurl \definedummyword\kbd \definedummyword\key \definedummyword\math @@ -4368,7 +4386,7 @@ end \def\definedummyaccent##1{\let##1\asis}% % We can just ignore other control letters. \def\definedummyletter##1{\let##1\empty}% - % Hopefully, all control words can become @asis. + % All control words become @asis by default; overrides below. \let\definedummyword\definedummyaccent % \commondummiesnofonts @@ -4380,8 +4398,14 @@ end % \def\ { }% \def\@{@}% - % how to handle braces? \def\_{\normalunderscore}% + \def\-{}% @- shouldn't affect sorting + % + % Unfortunately, texindex is not prepared to handle braces in the + % content at all. So for index sorting, we map @{ and @} to strings + % starting with |, since that ASCII character is between ASCII { and }. + \def\{{|a}% + \def\}{|b}% % % Non-English letters. \def\AA{AA}% @@ -4409,6 +4433,7 @@ end % % Assorted special characters. % (The following {} will end up in the sort string, but that's ok.) + \def\arrow{->}% \def\bullet{bullet}% \def\comma{,}% \def\copyright{copyright}% @@ -4418,10 +4443,12 @@ end \def\error{error}% \def\euro{euro}% \def\expansion{==>}% + \def\geq{>=}% \def\guillemetleft{<<}% \def\guillemetright{>>}% \def\guilsinglleft{<}% \def\guilsinglright{>}% + \def\leq{<=}% \def\minus{-}% \def\point{.}% \def\pounds{pounds}% @@ -4436,6 +4463,9 @@ end \def\result{=>}% \def\textdegree{o}% % + \expandafter\ifx\csname SETtxiindexlquoteignore\endcsname\relax + \else \indexlquoteignore \fi + % % We need to get rid of all macros, leaving only the arguments (if present). % Of course this is not nearly correct, but it is the best we can do for now. % makeinfo does not expand macros in the argument to @deffn, which ends up @@ -4449,6 +4479,11 @@ end \macrolist } +% Undocumented (for FSFS 2nd ed.): @set txiindexlquoteignore makes us +% ignore left quotes in the sort term. +{\catcode`\`=\active + \gdef\indexlquoteignore{\let`=\empty}} + \let\indexbackslash=0 %overridden during \printindex. \let\SETmarginindex=\relax % put index entries in margin (undocumented)? @@ -4706,7 +4741,6 @@ end % But this freezes the catcodes in the argument, and can cause problems to % @code, which sets - active. This problem was fixed by a kludge--- % ``-'' was active throughout whole index, but this isn't really right. -% % The right solution is to prevent \entry from swallowing the whole text. % --kasal, 21nov03 \def\entry{% @@ -4743,10 +4777,17 @@ end % columns. \vskip 0pt plus1pt % + % When reading the text of entry, convert explicit line breaks + % from @* into spaces. The user might give these in long section + % titles, for instance. + \def\*{\unskip\space\ignorespaces}% + \def\entrybreak{\hfil\break}% + % % Swallow the left brace of the text (first parameter): \afterassignment\doentry \let\temp = } +\def\entrybreak{\unskip\space\ignorespaces}% \def\doentry{% \bgroup % Instead of the swallowed brace. \noindent @@ -4979,7 +5020,22 @@ end \message{sectioning,} % Chapters, sections, etc. -% \unnumberedno is an oxymoron, of course. But we count the unnumbered +% Let's start with @part. +\outer\parseargdef\part{\partzzz{#1}} +\def\partzzz#1{% + \chapoddpage + \null + \vskip.3\vsize % move it down on the page a bit + \begingroup + \noindent \titlefonts\rmisbold #1\par % the text + \let\lastnode=\empty % no node to associate with + \writetocentry{part}{#1}{}% but put it in the toc + \headingsoff % no headline or footline on the part page + \chapoddpage + \endgroup +} + +% \unnumberedno is an oxymoron. But we count the unnumbered % sections so that we can refer to them unambiguously in the pdf % outlines by their "section number". We avoid collisions with chapter % numbers by starting them at 10000. (If a document ever has 10000 @@ -5058,8 +5114,8 @@ end \chardef\maxseclevel = 3 % % A numbered section within an unnumbered changes to unnumbered too. -% To achive this, remember the "biggest" unnum. sec. we are currently in: -\chardef\unmlevel = \maxseclevel +% To achieve this, remember the "biggest" unnum. sec. we are currently in: +\chardef\unnlevel = \maxseclevel % % Trace whether the current chapter is an appendix or not: % \chapheadtype is "N" or "A", unnumbered chapters are ignored. @@ -5084,8 +5140,8 @@ end % The heading type: \def\headtype{#1}% \if \headtype U% - \ifnum \absseclevel < \unmlevel - \chardef\unmlevel = \absseclevel + \ifnum \absseclevel < \unnlevel + \chardef\unnlevel = \absseclevel \fi \else % Check for appendix sections: @@ -5097,10 +5153,10 @@ end \fi\fi \fi % Check for numbered within unnumbered: - \ifnum \absseclevel > \unmlevel + \ifnum \absseclevel > \unnlevel \def\headtype{U}% \else - \chardef\unmlevel = 3 + \chardef\unnlevel = 3 \fi \fi % Now print the heading: @@ -5352,9 +5408,8 @@ end \chappager \ifodd\pageno \else \begingroup - \evenheadline={\hfil}\evenfootline={\hfil}% - \oddheadline={\hfil}\oddfootline={\hfil}% - \hbox to 0pt{}% + \headingsoff + \null \chappager \endgroup \fi @@ -5797,6 +5852,7 @@ end \def\summarycontents{% \startcontents{\putwordShortTOC}% % + \let\partentry = \shortpartentry \let\numchapentry = \shortchapentry \let\appentry = \shortchapentry \let\unnchapentry = \shortunnchapentry @@ -5852,6 +5908,19 @@ end % The last argument is the page number. % The arguments in between are the chapter number, section number, ... +% Parts, in the main contents. Replace the part number, which doesn't +% exist, with an empty box. Let's hope all the numbers have the same width. +% Also ignore the page number, which is conventionally not printed. +\def\numeralbox{\setbox0=\hbox{8}\hbox to \wd0{\hfil}} +\def\partentry#1#2#3#4{\dochapentry{\numeralbox\labelspace#1}{}} +% +% Parts, in the short toc. +\def\shortpartentry#1#2#3#4{% + \penalty-300 + \vskip.5\baselineskip plus.15\baselineskip minus.1\baselineskip + \shortchapentry{{\bf #1}}{\numeralbox}{}{}% +} + % Chapters, in the main contents. \def\numchapentry#1#2#3#4{\dochapentry{#2\labelspace#1}{#4}} % @@ -5941,9 +6010,9 @@ end \message{environments,} % @foo ... @end foo. -% @tex ... @end tex escapes into raw Tex temporarily. +% @tex ... @end tex escapes into raw TeX temporarily. % One exception: @ is still an escape character, so that @end tex works. -% But \@ or @@ will get a plain tex @ character. +% But \@ or @@ will get a plain @ character. \envdef\tex{% \setupmarkupstyle{tex}% @@ -6166,41 +6235,42 @@ end } % We often define two environments, @foo and @smallfoo. -% Let's do it by one command: -\def\makedispenv #1#2{ - \expandafter\envdef\csname#1\endcsname {\setnormaldispenv #2} - \expandafter\envdef\csname small#1\endcsname {\setsmalldispenv #2} +% Let's do it in one command. #1 is the env name, #2 the definition. +\def\makedispenvdef#1#2{% + \expandafter\envdef\csname#1\endcsname {\setnormaldispenv #2}% + \expandafter\envdef\csname small#1\endcsname {\setsmalldispenv #2}% \expandafter\let\csname E#1\endcsname \afterenvbreak \expandafter\let\csname Esmall#1\endcsname \afterenvbreak } -% Define two synonyms: -\def\maketwodispenvs #1#2#3{ - \makedispenv{#1}{#3} - \makedispenv{#2}{#3} +% Define two environment synonyms (#1 and #2) for an environment. +\def\maketwodispenvdef#1#2#3{% + \makedispenvdef{#1}{#3}% + \makedispenvdef{#2}{#3}% } - -% @lisp: indented, narrowed, typewriter font; @example: same as @lisp. +% +% @lisp: indented, narrowed, typewriter font; +% @example: same as @lisp. % % @smallexample and @smalllisp: use smaller fonts. % Originally contributed by Pavel@xerox. % -\maketwodispenvs {lisp}{example}{% +\maketwodispenvdef{lisp}{example}{% \nonfillstart \tt\setupmarkupstyle{example}% \let\kbdfont = \kbdexamplefont % Allow @kbd to do something special. - \gobble % eat return + \gobble % eat return } % @display/@smalldisplay: same as @lisp except keep current font. % -\makedispenv {display}{% +\makedispenvdef{display}{% \nonfillstart \gobble } % @format/@smallformat: same as @display except don't narrow margins. % -\makedispenv{format}{% +\makedispenvdef{format}{% \let\nonarrowing = t% \nonfillstart \gobble @@ -6219,7 +6289,7 @@ end \envdef\flushright{% \let\nonarrowing = t% \nonfillstart - \advance\leftskip by 0pt plus 1fill + \advance\leftskip by 0pt plus 1fill\relax \gobble } \let\Eflushright = \afterenvbreak @@ -6254,6 +6324,8 @@ end % we're doing normal filling. So, when using \aboveenvbreak and % \afterenvbreak, temporarily make \parskip 0. % +\makedispenvdef{quotation}{\quotationstart} +% \def\quotationstart{% {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip \parindent=0pt @@ -6269,17 +6341,6 @@ end \parsearg\quotationlabel } -\envdef\quotation{% - \setnormaldispenv - \quotationstart -} - -\envdef\smallquotation{% - \setsmalldispenv - \quotationstart -} -\let\Esmallquotation = \Equotation - % We have retained a nonzero parskip for the environment, since we're % doing normal filling. % @@ -6291,6 +6352,7 @@ end \fi {\parskip=0pt \afterenvbreak}% } +\def\Esmallquotation{\Equotation} % If we're given an argument, typeset it in bold with a colon after. \def\quotationlabel#1{% @@ -6347,21 +6409,28 @@ end % Setup for the @verbatim environment % -% Real tab expansion +% Real tab expansion. \newdimen\tabw \setbox0=\hbox{\tt\space} \tabw=8\wd0 % tab amount % -\def\starttabbox{\setbox0=\hbox\bgroup} +% We typeset each line of the verbatim in an \hbox, so we can handle +% tabs. The \global is in case the verbatim line starts with an accent, +% or some other command that starts with a begin-group. Otherwise, the +% entire \verbbox would disappear at the corresponding end-group, before +% it is typeset. Meanwhile, we can't have nested verbatim commands +% (can we?), so the \global won't be overwriting itself. +\newbox\verbbox +\def\starttabbox{\global\setbox\verbbox=\hbox\bgroup} % \begingroup \catcode`\^^I=\active \gdef\tabexpand{% \catcode`\^^I=\active \def^^I{\leavevmode\egroup - \dimen0=\wd0 % the width so far, or since the previous tab - \divide\dimen0 by\tabw - \multiply\dimen0 by\tabw % compute previous multiple of \tabw - \advance\dimen0 by\tabw % advance to next multiple of \tabw - \wd0=\dimen0 \box0 \starttabbox + \dimen\verbbox=\wd\verbbox % the width so far, or since the previous tab + \divide\dimen\verbbox by\tabw + \multiply\dimen\verbbox by\tabw % compute previous multiple of \tabw + \advance\dimen\verbbox by\tabw % advance to next multiple of \tabw + \wd\verbbox=\dimen\verbbox \box\verbbox \starttabbox }% } \endgroup @@ -6370,15 +6439,16 @@ end \def\setupverbatim{% \let\nonarrowing = t% \nonfillstart - % Easiest (and conventionally used) font for verbatim - \tt - \def\par{\leavevmode\egroup\box0\endgraf}% + \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. + \def\par{\leavevmode\egroup\box\verbbox\endgraf}% \tabexpand \setupmarkupstyle{verbatim}% % Respect line breaks, % print special symbols as themselves, and - % make each space count - % must do in this order: + % make each space count. + % Must do in this order: \obeylines \uncatcodespecials \sepspaces \everypar{\starttabbox}% } @@ -6521,7 +6591,7 @@ end #1#2 \endheader % common ending: \interlinepenalty = 10000 - \advance\rightskip by 0pt plus 1fil + \advance\rightskip by 0pt plus 1fil\relax \endgraf \nobreak\vskip -\parskip \penalty\defunpenalty % signal to \startdefun and \dodefunx @@ -6893,17 +6963,18 @@ end % Macro bodies are absorbed as an argument in a context where % all characters are catcode 10, 11 or 12, except \ which is active -% (as in normal texinfo). It is necessary to change the definition of \. - +% (as in normal texinfo). It is necessary to change the definition of \ +% to recognize macro arguments; this is the job of \mbodybackslash. +% % Non-ASCII encodings make 8-bit characters active, so un-activate % them to avoid their expansion. Must do this non-globally, to % confine the change to the current group. - +% % It's necessary to have hard CRs when the macro is executed. This is -% done by making ^^M (\endlinechar) catcode 12 when reading the macro +% done by making ^^M (\endlinechar) catcode 12 when reading the macro % body, and then making it the \newlinechar in \scanmacro. - -\def\scanctxt{% +% +\def\scanctxt{% used as subroutine \catcode`\"=\other \catcode`\+=\other \catcode`\<=\other @@ -6916,13 +6987,13 @@ end \ifx\declaredencoding\ascii \else \setnonasciicharscatcodenonglobal\other \fi } -\def\scanargctxt{% +\def\scanargctxt{% used for copying and captions, not macros. \scanctxt \catcode`\\=\other \catcode`\^^M=\other } -\def\macrobodyctxt{% +\def\macrobodyctxt{% used for @macro definitions \scanctxt \catcode`\{=\other \catcode`\}=\other @@ -6930,30 +7001,48 @@ end \usembodybackslash } -\def\macroargctxt{% +\def\macroargctxt{% used when scanning invocations \scanctxt - \catcode`\\=\other + \catcode`\\=0 } +% why catcode 0 for \ in the above? To recognize \\ \{ \} as "escapes" +% for the single characters \ { }. Thus, we end up with the "commands" +% that would be written @\ @{ @} in a Texinfo document. +% +% We already have @{ and @}. For @\, we define it here, and only for +% this purpose, to produce a typewriter backslash (so, the @\ that we +% define for @math can't be used with @macro calls): +% +\def\\{\normalbackslash}% +% +% We would like to do this for \, too, since that is what makeinfo does. +% But it is not possible, because Texinfo already has a command @, for a +% cedilla accent. Documents must use @comma{} instead. +% +% \anythingelse will almost certainly be an error of some kind. + % \mbodybackslash is the definition of \ in @macro bodies. % It maps \foo\ => \csname macarg.foo\endcsname => #N % where N is the macro parameter number. % We define \csname macarg.\endcsname to be \realbackslash, so % \\ in macro replacement text gets you a backslash. - +% {\catcode`@=0 @catcode`@\=@active @gdef@usembodybackslash{@let\=@mbodybackslash} @gdef@mbodybackslash#1\{@csname macarg.#1@endcsname} } \expandafter\def\csname macarg.\endcsname{\realbackslash} +\def\margbackslash#1{\char`\#1 } + \def\macro{\recursivefalse\parsearg\macroxxx} \def\rmacro{\recursivetrue\parsearg\macroxxx} \def\macroxxx#1{% - \getargs{#1}% now \macname is the macname and \argl the arglist + \getargs{#1}% now \macname is the macname and \argl the arglist \ifx\argl\empty % no arguments - \paramno=0% + \paramno=0 \else \expandafter\parsemargdef \argl;% \fi @@ -7002,28 +7091,32 @@ end % an opening brace, and that opening brace is not consumed. \def\getargs#1{\getargsxxx#1{}} \def\getargsxxx#1#{\getmacname #1 \relax\getmacargs} -\def\getmacname #1 #2\relax{\macname={#1}} +\def\getmacname#1 #2\relax{\macname={#1}} \def\getmacargs#1{\def\argl{#1}} % Parse the optional {params} list. Set up \paramno and \paramlist % so \defmacro knows what to do. Define \macarg.blah for each blah -% in the params list, to be ##N where N is the position in that list. +% in the params list to be ##N where N is the position in that list. % That gets used by \mbodybackslash (above). - +% % We need to get `macro parameter char #' into several definitions. -% The technique used is stolen from LaTeX: let \hash be something +% The technique used is stolen from LaTeX: let \hash be something % unexpandable, insert that wherever you need a #, and then redefine % it to # just before using the token list produced. % % The same technique is used to protect \eatspaces till just before % the macro is used. -\def\parsemargdef#1;{\paramno=0\def\paramlist{}% - \let\hash\relax\let\xeatspaces\relax\parsemargdefxxx#1,;,} +\def\parsemargdef#1;{% + \paramno=0\def\paramlist{}% + \let\hash\relax + \let\xeatspaces\relax + \parsemargdefxxx#1,;,% +} \def\parsemargdefxxx#1,{% \if#1;\let\next=\relax \else \let\next=\parsemargdefxxx - \advance\paramno by 1% + \advance\paramno by 1 \expandafter\edef\csname macarg.\eatspaces{#1}\endcsname {\xeatspaces{\hash\the\paramno}}% \edef\paramlist{\paramlist\hash\the\paramno,}% @@ -7031,7 +7124,7 @@ end % These two commands read recursive and nonrecursive macro bodies. % (They're different since rec and nonrec macros end differently.) - +% \long\def\parsemacbody#1@end macro% {\xdef\temp{\eatcr{#1}}\endgroup\defmacro}% \long\def\parsermacbody#1@end rmacro% @@ -7042,6 +7135,7 @@ end % Much magic with \expandafter here. % \xdef is used so that macro definitions will survive the file % they're defined in; @include reads the file inside a group. +% \def\defmacro{% \let\hash=##% convert placeholders to macro parameter chars \ifrecursive @@ -7105,7 +7199,8 @@ end % \braceorline decides whether the next nonwhitespace character is a % {. If so it reads up to the closing }, if not, it reads the whole % line. Whatever was read is then fed to the next control sequence -% as an argument (by \parsebrace or \parsearg) +% as an argument (by \parsebrace or \parsearg). +% \def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx} \def\braceorlinexxx{% \ifx\nchar\bgroup\else @@ -7115,7 +7210,8 @@ end % @alias. % We need some trickery to remove the optional spaces around the equal -% sign. Just make them active and then expand them all to nothing. +% sign. Make them active and then expand them all to nothing. +% \def\alias{\parseargusing\obeyspaces\aliasxxx} \def\aliasxxx #1{\aliasyyy#1\relax} \def\aliasyyy #1=#2\relax{% @@ -7373,7 +7469,8 @@ end \angleleft un\-de\-fined\angleright \iflinks \ifhavexrefs - \message{\linenumber Undefined cross reference `#1'.}% + {\toks0 = {#1}% avoid expansion of possibly-complex value + \message{\linenumber Undefined cross reference `\the\toks0'.}}% \else \ifwarnedxrefs\else \global\warnedxrefstrue @@ -7703,7 +7800,7 @@ end % #2 is (optional) width, #3 is (optional) height. % #4 is (ignored optional) html alt text. % #5 is (ignored optional) extension. -% #6 is just the usual extra ignored arg for parsing this stuff. +% #6 is just the usual extra ignored arg for parsing stuff. \newif\ifimagevmode \def\imagexxx#1,#2,#3,#4,#5,#6\finish{\begingroup \catcode`\^^M = 5 % in case we're inside an example @@ -8355,8 +8452,8 @@ directory should work if nowhere else does.} \gdef^^ea{\ogonek{e}} \gdef^^eb{\"e} \gdef^^ec{\v e} - \gdef^^ed{\'\i} - \gdef^^ee{\^\i} + \gdef^^ed{\'{\dotless{i}}} + \gdef^^ee{\^{\dotless{i}}} \gdef^^ef{\v d} % \gdef^^f0{\dh} @@ -8915,8 +9012,8 @@ directory should work if nowhere else does.} % Prevent underfull vbox error messages. \vbadness = 10000 -% Don't be so finicky about underfull hboxes, either. -\hbadness = 2000 +% Don't be very finicky about underfull hboxes, either. +\hbadness = 6666 % Following George Bush, get rid of widows and orphans. \widowpenalty=10000 diff --git a/build-aux/warn-on-use.h b/build-aux/warn-on-use.h index 7a3a9f0..7b42432 100644 --- a/build-aux/warn-on-use.h +++ b/build-aux/warn-on-use.h @@ -16,7 +16,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -/* _GL_WARN_ON_USE(function, "literal string") issues a declaration +/* _GL_WARN_ON_USE (function, "literal string") issues a declaration for FUNCTION which will then trigger a compiler warning containing the text of "literal string" anywhere that function is called, if supported by the compiler. If the compiler does not support this @@ -69,9 +69,43 @@ /* A compiler attribute is available in gcc versions 4.3.0 and later. */ # define _GL_WARN_ON_USE(function, message) \ extern __typeof__ (function) function __attribute__ ((__warning__ (message))) - +# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING +/* Verify the existence of the function. */ +# define _GL_WARN_ON_USE(function, message) \ +extern __typeof__ (function) function # else /* Unsupported. */ # define _GL_WARN_ON_USE(function, message) \ -extern int _gl_warn_on_use +_GL_WARN_EXTERN_C int _gl_warn_on_use +# endif +#endif + +/* _GL_WARN_ON_USE_CXX (function, rettype, parameters_and_attributes, "string") + is like _GL_WARN_ON_USE (function, "string"), except that the function is + declared with the given prototype, consisting of return type, parameters, + and attributes. + This variant is useful for overloaded functions in C++. _GL_WARN_ON_USE does + not work in this case. */ +#ifndef _GL_WARN_ON_USE_CXX +# if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) +# define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \ +extern rettype function parameters_and_attributes \ + __attribute__ ((__warning__ (msg))) +# elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING +/* Verify the existence of the function. */ +# define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \ +extern rettype function parameters_and_attributes +# else /* Unsupported. */ +# define _GL_WARN_ON_USE_CXX(function,rettype,parameters_and_attributes,msg) \ +_GL_WARN_EXTERN_C int _gl_warn_on_use +# endif +#endif + +/* _GL_WARN_EXTERN_C declaration; + performs the declaration with C linkage. */ +#ifndef _GL_WARN_EXTERN_C +# if defined __cplusplus +# define _GL_WARN_EXTERN_C extern "C" +# else +# define _GL_WARN_EXTERN_C extern # endif #endif diff --git a/config.h.in b/config.h.in index f55a85d..a7d8c63 100644 --- a/config.h.in +++ b/config.h.in @@ -129,205 +129,268 @@ /* Define to make the limit macros in visible. */ #undef GL_TRIGGER_STDC_LIMIT_MACROS -/* Define to 1 when using the gnulib module btowc. */ -#undef GNULIB_BTOWC +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module areadlinkat shall be considered present. */ +#undef GNULIB_AREADLINKAT -/* Define to 1 when using the gnulib module canonicalize. */ -#undef GNULIB_CANONICALIZE +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module canonicalize-lgpl shall be considered present. */ +#undef GNULIB_CANONICALIZE_LGPL -/* Define to 1 when using the gnulib module canonicalize_file_name. */ -#undef GNULIB_CANONICALIZE_FILE_NAME +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module close-stream shall be considered present. */ +#undef GNULIB_CLOSE_STREAM -/* Define to 1 when using the gnulib module chown. */ -#undef GNULIB_CHOWN +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module dirent-safer shall be considered present. */ +#undef GNULIB_DIRENT_SAFER -/* Define to 1 when using the gnulib module close. */ -#undef GNULIB_CLOSE +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module dirname shall be considered present. */ +#undef GNULIB_DIRNAME -/* Define to 1 when using the gnulib module close-stream. */ -#undef GNULIB_CLOSE_STREAM +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module fdopendir shall be considered present. */ +#undef GNULIB_FDOPENDIR -/* Define to 1 when using the gnulib module dirent-safer. */ -#undef GNULIB_DIRENT_SAFER +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module fdutimensat shall be considered present. */ +#undef GNULIB_FDUTIMENSAT -/* Define to 1 when using the gnulib module dirfd. */ -#undef GNULIB_DIRFD +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module malloc-gnu shall be considered present. */ +#undef GNULIB_MALLOC_GNU -/* Define to 1 when using the gnulib module dirname. */ -#undef GNULIB_DIRNAME +/* Define to 1 to add extern declaration of program_invocation_name to argp.h + */ +#undef GNULIB_PROGRAM_INVOCATION_NAME -/* Define to 1 when using the gnulib module dup2. */ -#undef GNULIB_DUP2 +/* Define to 1 to add extern declaration of program_invocation_short_name to + argp.h */ +#undef GNULIB_PROGRAM_INVOCATION_SHORT_NAME -/* Define to 1 when using the gnulib module environ. */ -#undef GNULIB_ENVIRON +/* Define to 1 when the gnulib module btowc should be tested. */ +#undef GNULIB_TEST_BTOWC -/* Define to 1 when using the gnulib module fchdir. */ -#undef GNULIB_FCHDIR +/* Define to 1 when the gnulib module canonicalize_file_name should be tested. + */ +#undef GNULIB_TEST_CANONICALIZE_FILE_NAME -/* Define to 1 when using the gnulib module fclose. */ -#undef GNULIB_FCLOSE +/* Define to 1 when the gnulib module chown should be tested. */ +#undef GNULIB_TEST_CHOWN -/* Define to 1 when using the gnulib module fcntl. */ -#undef GNULIB_FCNTL +/* Define to 1 when the gnulib module cloexec should be tested. */ +#undef GNULIB_TEST_CLOEXEC -/* Define to 1 when using the gnulib module fdopendir. */ -#undef GNULIB_FDOPENDIR +/* Define to 1 when the gnulib module close should be tested. */ +#undef GNULIB_TEST_CLOSE -/* Define to 1 when using the gnulib module fseeko. */ -#undef GNULIB_FSEEKO +/* Define to 1 when the gnulib module dirfd should be tested. */ +#undef GNULIB_TEST_DIRFD -/* Define to 1 when using the gnulib module ftruncate. */ -#undef GNULIB_FTRUNCATE +/* Define to 1 when the gnulib module dup2 should be tested. */ +#undef GNULIB_TEST_DUP2 -/* Define to 1 when using the gnulib module getcwd. */ -#undef GNULIB_GETCWD +/* Define to 1 when the gnulib module environ should be tested. */ +#undef GNULIB_TEST_ENVIRON -/* Define to 1 when using the gnulib module getdelim. */ -#undef GNULIB_GETDELIM +/* Define to 1 when the gnulib module fchdir should be tested. */ +#undef GNULIB_TEST_FCHDIR -/* Define to 1 when using the gnulib module getdtablesize. */ -#undef GNULIB_GETDTABLESIZE +/* Define to 1 when the gnulib module fclose should be tested. */ +#undef GNULIB_TEST_FCLOSE -/* Define to 1 when using the gnulib module getline. */ -#undef GNULIB_GETLINE +/* Define to 1 when the gnulib module fcntl should be tested. */ +#undef GNULIB_TEST_FCNTL -/* Define to 1 when using the gnulib module getopt-gnu. */ -#undef GNULIB_GETOPT_GNU +/* Define to 1 when the gnulib module fdopendir should be tested. */ +#undef GNULIB_TEST_FDOPENDIR -/* Define to 1 when using the gnulib module getpagesize. */ -#undef GNULIB_GETPAGESIZE +/* Define to 1 when the gnulib module fseeko should be tested. */ +#undef GNULIB_TEST_FSEEKO -/* Define to 1 when using the gnulib module gettimeofday. */ -#undef GNULIB_GETTIMEOFDAY +/* Define to 1 when the gnulib module futimens should be tested. */ +#undef GNULIB_TEST_FUTIMENS -/* Define to 1 when using the gnulib module lchown. */ -#undef GNULIB_LCHOWN +/* Define to 1 when the gnulib module getcwd should be tested. */ +#undef GNULIB_TEST_GETCWD -/* Define to 1 when using the gnulib module lseek. */ -#undef GNULIB_LSEEK +/* Define to 1 when the gnulib module getdelim should be tested. */ +#undef GNULIB_TEST_GETDELIM -/* Define to 1 when using the gnulib module lstat. */ -#undef GNULIB_LSTAT +/* Define to 1 when the gnulib module getdtablesize should be tested. */ +#undef GNULIB_TEST_GETDTABLESIZE -/* Define to indicate the 'malloc' module. */ -#undef GNULIB_MALLOC_GNU +/* Define to 1 when the gnulib module getline should be tested. */ +#undef GNULIB_TEST_GETLINE -/* Define to 1 when using the gnulib module malloc-posix. */ -#undef GNULIB_MALLOC_POSIX +/* Define to 1 when the gnulib module getopt-gnu should be tested. */ +#undef GNULIB_TEST_GETOPT_GNU -/* Define to 1 when using the gnulib module mbrtowc. */ -#undef GNULIB_MBRTOWC +/* Define to 1 when the gnulib module getpagesize should be tested. */ +#undef GNULIB_TEST_GETPAGESIZE -/* Define to 1 when using the gnulib module mbscasecmp. */ -#undef GNULIB_MBSCASECMP +/* Define to 1 when the gnulib module gettimeofday should be tested. */ +#undef GNULIB_TEST_GETTIMEOFDAY -/* Define to 1 when using the gnulib module mbsinit. */ -#undef GNULIB_MBSINIT +/* Define to 1 when the gnulib module lchown should be tested. */ +#undef GNULIB_TEST_LCHOWN -/* Define to 1 when using the gnulib module mbsrtowcs. */ -#undef GNULIB_MBSRTOWCS +/* Define to 1 when the gnulib module link should be tested. */ +#undef GNULIB_TEST_LINK -/* Define to 1 when using the gnulib module memchr. */ -#undef GNULIB_MEMCHR +/* Define to 1 when the gnulib module linkat should be tested. */ +#undef GNULIB_TEST_LINKAT -/* Define to 1 when using the gnulib module mempcpy. */ -#undef GNULIB_MEMPCPY +/* Define to 1 when the gnulib module lseek should be tested. */ +#undef GNULIB_TEST_LSEEK -/* Define to 1 when using the gnulib module memrchr. */ -#undef GNULIB_MEMRCHR +/* Define to 1 when the gnulib module lstat should be tested. */ +#undef GNULIB_TEST_LSTAT -/* Define to 1 when using the gnulib module mkdtemp. */ -#undef GNULIB_MKDTEMP +/* Define to 1 when the gnulib module malloc-posix should be tested. */ +#undef GNULIB_TEST_MALLOC_POSIX -/* Define to 1 when using the gnulib module mktime. */ -#undef GNULIB_MKTIME +/* Define to 1 when the gnulib module mbrtowc should be tested. */ +#undef GNULIB_TEST_MBRTOWC -/* Define to 1 when using the gnulib module nl_langinfo. */ -#undef GNULIB_NL_LANGINFO +/* Define to 1 when the gnulib module mbscasecmp should be tested. */ +#undef GNULIB_TEST_MBSCASECMP -/* Define to 1 when using the gnulib module open. */ -#undef GNULIB_OPEN +/* Define to 1 when the gnulib module mbsinit should be tested. */ +#undef GNULIB_TEST_MBSINIT -/* Define to 1 to add extern declaration of program_invocation_name to argp.h - */ -#undef GNULIB_PROGRAM_INVOCATION_NAME +/* Define to 1 when the gnulib module mbsrtowcs should be tested. */ +#undef GNULIB_TEST_MBSRTOWCS -/* Define to 1 to add extern declaration of program_invocation_short_name to - argp.h */ -#undef GNULIB_PROGRAM_INVOCATION_SHORT_NAME +/* Define to 1 when the gnulib module memchr should be tested. */ +#undef GNULIB_TEST_MEMCHR + +/* Define to 1 when the gnulib module mempcpy should be tested. */ +#undef GNULIB_TEST_MEMPCPY + +/* Define to 1 when the gnulib module memrchr should be tested. */ +#undef GNULIB_TEST_MEMRCHR + +/* Define to 1 when the gnulib module mkdtemp should be tested. */ +#undef GNULIB_TEST_MKDTEMP + +/* Define to 1 when the gnulib module mkfifo should be tested. */ +#undef GNULIB_TEST_MKFIFO + +/* Define to 1 when the gnulib module mkfifoat should be tested. */ +#undef GNULIB_TEST_MKFIFOAT + +/* Define to 1 when the gnulib module mknod should be tested. */ +#undef GNULIB_TEST_MKNOD + +/* Define to 1 when the gnulib module mknodat should be tested. */ +#undef GNULIB_TEST_MKNODAT + +/* Define to 1 when the gnulib module mktime should be tested. */ +#undef GNULIB_TEST_MKTIME + +/* Define to 1 when the gnulib module nl_langinfo should be tested. */ +#undef GNULIB_TEST_NL_LANGINFO + +/* Define to 1 when the gnulib module open should be tested. */ +#undef GNULIB_TEST_OPEN -/* Define to 1 when using the gnulib module rawmemchr. */ -#undef GNULIB_RAWMEMCHR +/* Define to 1 when the gnulib module rawmemchr should be tested. */ +#undef GNULIB_TEST_RAWMEMCHR -/* Define to 1 when using the gnulib module readlink. */ -#undef GNULIB_READLINK +/* Define to 1 when the gnulib module readlink should be tested. */ +#undef GNULIB_TEST_READLINK -/* Define to 1 when using the gnulib module realloc-posix. */ -#undef GNULIB_REALLOC_POSIX +/* Define to 1 when the gnulib module readlinkat should be tested. */ +#undef GNULIB_TEST_READLINKAT -/* Define to 1 when using the gnulib module rmdir. */ -#undef GNULIB_RMDIR +/* Define to 1 when the gnulib module realloc-posix should be tested. */ +#undef GNULIB_TEST_REALLOC_POSIX -/* Define to 1 when using the gnulib module rpmatch. */ -#undef GNULIB_RPMATCH +/* Define to 1 when the gnulib module realpath should be tested. */ +#undef GNULIB_TEST_REALPATH -/* Define to 1 when using the gnulib module setenv. */ -#undef GNULIB_SETENV +/* Define to 1 when the gnulib module rename should be tested. */ +#undef GNULIB_TEST_RENAME -/* Define to 1 when using the gnulib module sleep. */ -#undef GNULIB_SLEEP +/* Define to 1 when the gnulib module renameat should be tested. */ +#undef GNULIB_TEST_RENAMEAT -/* Define to 1 when using the gnulib module snprintf. */ -#undef GNULIB_SNPRINTF +/* Define to 1 when the gnulib module rmdir should be tested. */ +#undef GNULIB_TEST_RMDIR -/* Define to 1 when using the gnulib module stat. */ -#undef GNULIB_STAT +/* Define to 1 when the gnulib module rpmatch should be tested. */ +#undef GNULIB_TEST_RPMATCH -/* Define to 1 when using the gnulib module stpcpy. */ -#undef GNULIB_STPCPY +/* Define to 1 when the gnulib module setenv should be tested. */ +#undef GNULIB_TEST_SETENV -/* Define to 1 when using the gnulib module strchrnul. */ -#undef GNULIB_STRCHRNUL +/* Define to 1 when the gnulib module sleep should be tested. */ +#undef GNULIB_TEST_SLEEP -/* Define to 1 when using the gnulib module strdup. */ -#undef GNULIB_STRDUP +/* Define to 1 when the gnulib module snprintf should be tested. */ +#undef GNULIB_TEST_SNPRINTF -/* Define to 1 when using the gnulib module strerror. */ -#undef GNULIB_STRERROR +/* Define to 1 when the gnulib module stat should be tested. */ +#undef GNULIB_TEST_STAT -/* Define to 1 when using the gnulib module strndup. */ -#undef GNULIB_STRNDUP +/* Define to 1 when the gnulib module stpcpy should be tested. */ +#undef GNULIB_TEST_STPCPY -/* Define to 1 when using the gnulib module strnlen. */ -#undef GNULIB_STRNLEN +/* Define to 1 when the gnulib module strchrnul should be tested. */ +#undef GNULIB_TEST_STRCHRNUL -/* Define to 1 when using the gnulib module strtoll. */ -#undef GNULIB_STRTOLL +/* Define to 1 when the gnulib module strdup should be tested. */ +#undef GNULIB_TEST_STRDUP -/* Define to 1 when using the gnulib module strtoull. */ -#undef GNULIB_STRTOULL +/* Define to 1 when the gnulib module strerror should be tested. */ +#undef GNULIB_TEST_STRERROR -/* Define to 1 when using the gnulib module unlink. */ -#undef GNULIB_UNLINK +/* Define to 1 when the gnulib module strndup should be tested. */ +#undef GNULIB_TEST_STRNDUP -/* Define to 1 when using the gnulib module unsetenv. */ -#undef GNULIB_UNSETENV +/* Define to 1 when the gnulib module strnlen should be tested. */ +#undef GNULIB_TEST_STRNLEN -/* Define to 1 when using the gnulib module vasprintf. */ -#undef GNULIB_VASPRINTF +/* Define to 1 when the gnulib module strtoll should be tested. */ +#undef GNULIB_TEST_STRTOLL -/* Define to 1 when using the gnulib module vsnprintf. */ -#undef GNULIB_VSNPRINTF +/* Define to 1 when the gnulib module strtoull should be tested. */ +#undef GNULIB_TEST_STRTOULL -/* Define to 1 when using the gnulib module wcrtomb. */ -#undef GNULIB_WCRTOMB +/* Define to 1 when the gnulib module symlink should be tested. */ +#undef GNULIB_TEST_SYMLINK -/* Define to 1 when using the gnulib module wcwidth. */ -#undef GNULIB_WCWIDTH +/* Define to 1 when the gnulib module symlinkat should be tested. */ +#undef GNULIB_TEST_SYMLINKAT -/* Define to 1 when using the gnulib module write. */ -#undef GNULIB_WRITE +/* Define to 1 when the gnulib module time_r should be tested. */ +#undef GNULIB_TEST_TIME_R + +/* Define to 1 when the gnulib module unlink should be tested. */ +#undef GNULIB_TEST_UNLINK + +/* Define to 1 when the gnulib module unsetenv should be tested. */ +#undef GNULIB_TEST_UNSETENV + +/* Define to 1 when the gnulib module utimensat should be tested. */ +#undef GNULIB_TEST_UTIMENSAT + +/* Define to 1 when the gnulib module vasprintf should be tested. */ +#undef GNULIB_TEST_VASPRINTF + +/* Define to 1 when the gnulib module vsnprintf should be tested. */ +#undef GNULIB_TEST_VSNPRINTF + +/* Define to 1 when the gnulib module wcrtomb should be tested. */ +#undef GNULIB_TEST_WCRTOMB + +/* Define to 1 when the gnulib module wcwidth should be tested. */ +#undef GNULIB_TEST_WCWIDTH + +/* Define to 1 when the gnulib module write should be tested. */ +#undef GNULIB_TEST_WRITE /* Define to the program name of gzip compressor program */ #undef GZIP_PROGRAM @@ -363,9 +426,6 @@ /* Define to 1 if you have the `chown' function. */ #undef HAVE_CHOWN -/* Define to 1 if you have the `chsize' function. */ -#undef HAVE_CHSIZE - /* Define to 1 if you have the `clock_gettime' function. */ #undef HAVE_CLOCK_GETTIME @@ -387,6 +447,10 @@ */ #undef HAVE_DECL_DIRFD +/* Define to 1 if you have the declaration of `fdopendir', and to 0 if you + don't. */ +#undef HAVE_DECL_FDOPENDIR + /* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_FEOF_UNLOCKED @@ -447,6 +511,10 @@ don't. */ #undef HAVE_DECL_GETLINE +/* Define to 1 if you have the declaration of `getopt_clip', and to 0 if you + don't. */ +#undef HAVE_DECL_GETOPT_CLIP + /* Define to 1 if you have the declaration of `getpwuid', and to 0 if you don't. */ #undef HAVE_DECL_GETPWUID @@ -463,6 +531,10 @@ don't. */ #undef HAVE_DECL_ISBLANK +/* Define to 1 if you have the declaration of `iswblank', and to 0 if you + don't. */ +#undef HAVE_DECL_ISWBLANK + /* Define to 1 if you have the declaration of `memrchr', and to 0 if you don't. */ #undef HAVE_DECL_MEMRCHR @@ -577,6 +649,9 @@ /* Define to 1 if you have the `fchdir' function. */ #undef HAVE_FCHDIR +/* Define to 1 if you have the `fchmod' function. */ +#undef HAVE_FCHMOD + /* Define to 1 if you have the `fchmodat' function. */ #undef HAVE_FCHMODAT @@ -610,9 +685,6 @@ /* Define to 1 if you have the `fsync' function. */ #undef HAVE_FSYNC -/* Define to 1 if you have the `ftruncate' function. */ -#undef HAVE_FTRUNCATE - /* Define to 1 if you have the `funlockfile' function. */ #undef HAVE_FUNLOCKFILE @@ -625,6 +697,9 @@ /* Define to 1 if you have the `futimesat' function. */ #undef HAVE_FUTIMESAT +/* Define to 1 if you have the `getcwd' function. */ +#undef HAVE_GETCWD + /* Define to 1 if you have the `getdelim' function. */ #undef HAVE_GETDELIM @@ -676,6 +751,9 @@ /* Define to 1 if you have the `isblank' function. */ #undef HAVE_ISBLANK +/* Define to 1 if you have the `iswblank' function. */ +#undef HAVE_ISWBLANK + /* Define to 1 if you have the `iswcntrl' function. */ #undef HAVE_ISWCNTRL @@ -703,12 +781,21 @@ /* Define to 1 if you have the header file. */ #undef HAVE_LINEWRAP_H +/* Define to 1 if you have the `link' function. */ +#undef HAVE_LINK + +/* Define to 1 if you have the `linkat' function. */ +#undef HAVE_LINKAT + /* Define to 1 if you have the header file. */ #undef HAVE_LINUX_FD_H /* Define to 1 if you have the header file. */ #undef HAVE_LOCALE_H +/* Define to 1 if you have the `localtime_r' function. */ +#undef HAVE_LOCALTIME_R + /* Define to 1 if you support file names longer than 14 characters. */ #undef HAVE_LONG_FILE_NAMES @@ -721,9 +808,9 @@ /* Define to 1 if you have the `lutimes' function. */ #undef HAVE_LUTIMES -/* Define to 1 if your system has a GNU libc compatible `malloc' function, and +/* Define to 1 if your system has a GNU libc compatible 'malloc' function, and to 0 otherwise. */ -#undef HAVE_MALLOC +#undef HAVE_MALLOC_GNU /* Define if the 'malloc' function is POSIX compliant. */ #undef HAVE_MALLOC_POSIX @@ -765,6 +852,15 @@ /* Define to 1 if you have the `mkfifo' function. */ #undef HAVE_MKFIFO +/* Define to 1 if you have the `mkfifoat' function. */ +#undef HAVE_MKFIFOAT + +/* Define to 1 if you have the `mknod' function. */ +#undef HAVE_MKNOD + +/* Define to 1 if you have the `mknodat' function. */ +#undef HAVE_MKNODAT + /* Define to 1 if you have the `mprotect' function. */ #undef HAVE_MPROTECT @@ -793,9 +889,7 @@ #undef HAVE_OS_H /* Define to 1 if getcwd works, except it sometimes fails when it shouldn't, - setting errno to ERANGE, ENAMETOOLONG, or ENOENT. If __GETCWD_PREFIX is not - defined, it doesn't matter whether HAVE_PARTLY_WORKING_GETCWD is defined. - */ + setting errno to ERANGE, ENAMETOOLONG, or ENOENT. */ #undef HAVE_PARTLY_WORKING_GETCWD /* Define to 1 if you have the `pathconf' function. */ @@ -940,6 +1034,9 @@ /* Define to 1 if getusershell is declared even after undefining macros. */ #undef HAVE_RAW_DECL_GETUSERSHELL +/* Define to 1 if grantpt is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GRANTPT + /* Define to 1 if imaxabs is declared even after undefining macros. */ #undef HAVE_RAW_DECL_IMAXABS @@ -1036,6 +1133,12 @@ /* Define to 1 if pread is declared even after undefining macros. */ #undef HAVE_RAW_DECL_PREAD +/* Define to 1 if ptsname is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_PTSNAME + +/* Define to 1 if pwrite is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_PWRITE + /* Define to 1 if random_r is declared even after undefining macros. */ #undef HAVE_RAW_DECL_RANDOM_R @@ -1105,6 +1208,9 @@ /* Define to 1 if strncasecmp is declared even after undefining macros. */ #undef HAVE_RAW_DECL_STRNCASECMP +/* Define to 1 if strncat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRNCAT + /* Define to 1 if strndup is declared even after undefining macros. */ #undef HAVE_RAW_DECL_STRNDUP @@ -1147,12 +1253,21 @@ /* Define to 1 if symlinkat is declared even after undefining macros. */ #undef HAVE_RAW_DECL_SYMLINKAT +/* Define to 1 if tmpfile is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_TMPFILE + +/* Define to 1 if ttyname_r is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_TTYNAME_R + /* Define to 1 if unlink is declared even after undefining macros. */ #undef HAVE_RAW_DECL_UNLINK /* Define to 1 if unlinkat is declared even after undefining macros. */ #undef HAVE_RAW_DECL_UNLINKAT +/* Define to 1 if unlockpt is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_UNLOCKPT + /* Define to 1 if unsetenv is declared even after undefining macros. */ #undef HAVE_RAW_DECL_UNSETENV @@ -1183,17 +1298,23 @@ /* Define to 1 if wcwidth is declared even after undefining macros. */ #undef HAVE_RAW_DECL_WCWIDTH +/* Define to 1 if _Exit is declared even after undefining macros. */ +#undef HAVE_RAW_DECL__EXIT + /* Define to 1 if you have the `readlink' function. */ #undef HAVE_READLINK +/* Define to 1 if you have the `readlinkat' function. */ +#undef HAVE_READLINKAT + /* Define if the 'realloc' function is POSIX compliant. */ #undef HAVE_REALLOC_POSIX /* Define to 1 if you have the `realpath' function. */ #undef HAVE_REALPATH -/* Define to 1 if you have the `rmdir' function. */ -#undef HAVE_RMDIR +/* Define to 1 if you have the `renameat' function. */ +#undef HAVE_RENAMEAT /* Define to 1 if you have the `rpmatch' function. */ #undef HAVE_RPMATCH @@ -1225,6 +1346,11 @@ /* Define to 1 if you have the `snprintf' function. */ #undef HAVE_SNPRINTF +/* Define if the return value of the snprintf function is the number of of + bytes (excluding the terminating NUL) that would have been produced if the + buffer had been large enough. */ +#undef HAVE_SNPRINTF_RETVAL_C99 + /* Define to 1 if you have the header file. */ #undef HAVE_STDARG_H @@ -1280,9 +1406,6 @@ /* Define to 1 if you have the `strnlen' function. */ #undef HAVE_STRNLEN -/* Define to 1 if you have the header file. */ -#undef HAVE_STROPTS_H - /* Define to 1 if you have the `strtoimax' function. */ #undef HAVE_STRTOIMAX @@ -1352,6 +1475,9 @@ /* Define to 1 if you have the `symlink' function. */ #undef HAVE_SYMLINK +/* Define to 1 if you have the `symlinkat' function. */ +#undef HAVE_SYMLINKAT + /* Define to 1 if you have the header file. */ #undef HAVE_SYSEXITS_H @@ -1368,9 +1494,6 @@ */ #undef HAVE_SYS_DIR_H -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_FILIO_H - /* Define to 1 if you have the header file. */ #undef HAVE_SYS_GENTAPE_H @@ -1452,9 +1575,6 @@ /* Define to 1 if you have the `utimensat' function. */ #undef HAVE_UTIMENSAT -/* Define to 1 if you have the `utimes' function. */ -#undef HAVE_UTIMES - /* Define to 1 if you have the header file. */ #undef HAVE_UTIME_H @@ -1536,6 +1656,13 @@ # define ISSLASH(C) ((C) == '/') #endif +/* Define to 1 if linkat fails to recognize a trailing slash. */ +#undef LINKAT_TRAILING_SLASH_BUG + +/* Define to 1 if `link(2)' dereferences symbolic links, 0 if it creates hard + links to symlinks, and -1 if unknown. */ +#undef LINK_FOLLOWS_SYMLINKS + /* Define to 1 if lseek does not detect pipes. */ #undef LSEEK_PIPE_BROKEN @@ -1575,6 +1702,12 @@ /* Define if the mbrtowc function returns a wrong return value. */ #undef MBRTOWC_RETVAL_BUG +/* Define to 1 if mkfifo does not reject trailing slash */ +#undef MKFIFO_TRAILING_SLASH_BUG + +/* Define to 1 if mknod cannot create a fifo without super-user privileges */ +#undef MKNOD_FIFO_BUG + /* Define to mt_model (v.g., for DG/UX), else to mt_type. */ #undef MTIO_CHECK_FIELD @@ -1631,6 +1764,22 @@ /* Define to the full path of your rsh, if any. */ #undef REMOTE_SHELL +/* Define if rename does not work when the destination file exists, as on + Cygwin 1.5 or Windows. */ +#undef RENAME_DEST_EXISTS_BUG + +/* Define if rename fails to leave hard links alone, as on NetBSD 1.6 or + Cygwin 1.5. */ +#undef RENAME_HARD_LINK_BUG + +/* Define if rename does not correctly handle slashes on the destination + argument, such as on Solaris 10 or NetBSD 1.6. */ +#undef RENAME_TRAILING_SLASH_DEST_BUG + +/* Define if rename does not correctly handle slashes on the source argument, + such as on Solaris 9 or cygwin 1.5. */ +#undef RENAME_TRAILING_SLASH_SOURCE_BUG + /* Define to 1 if gnulib's fchdir() replacement is used. */ #undef REPLACE_FCHDIR @@ -1705,6 +1854,13 @@ /* Define to 1 if unlink (dir) cannot possibly succeed. */ #undef UNLINK_CANNOT_UNLINK_DIR +/* Define to 1 if unlink() on a parent directory may succeed */ +#undef UNLINK_PARENT_BUG + +/* Define to the prefix of C symbols at the assembler and linker level, either + an underscore or empty. */ +#undef USER_LABEL_PREFIX + /* Define to 1 if you want getc etc. to use unlocked I/O if available. Unlocked I/O can improve performance in unithreaded apps, but it is not safe for multithreaded apps. */ @@ -1831,9 +1987,6 @@ /* Type of major device numbers. */ #undef major_t -/* Define to rpl_malloc if the replacement function should be used. */ -#undef malloc - /* Define to a type if does not define. */ #undef mbstate_t @@ -1920,9 +2073,6 @@ /* Define as a signed type of the same size as size_t. */ #undef ssize_t -/* Define to rpl_strnlen if the replacement function should be used. */ -#undef strnlen - /* Define to `int' if doesn't define. */ #undef uid_t diff --git a/configure b/configure index 07f2527..391e3d6 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.63 for GNU tar 1.23. +# Generated by GNU Autoconf 2.63 for GNU tar 1.24. # # Report bugs to . # @@ -596,8 +596,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='GNU tar' PACKAGE_TARNAME='tar' -PACKAGE_VERSION='1.23' -PACKAGE_STRING='GNU tar 1.23' +PACKAGE_VERSION='1.24' +PACKAGE_STRING='GNU tar 1.24' PACKAGE_BUGREPORT='bug-tar@gnu.org' ac_unique_file="src/tar.c" @@ -680,18 +680,26 @@ PU_RMT_PROG LIB_SETSOCKOPT LIBGNU_LTLIBDEPS LIBGNU_LIBDEPS +gltests_WITNESS REPLACE_ISWCNTRL HAVE_WCTYPE_H NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H NEXT_WCTYPE_H +REPLACE_ISWBLANK +HAVE_ISWBLANK HAVE_ISWCNTRL HAVE_WINT_T HAVE_WCHAR_H NEXT_AS_FIRST_DIRECTIVE_WCHAR_H NEXT_WCHAR_H +LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE +LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE +LIBUNISTRING_UNIWIDTH_H +LIBUNISTRING_UNITYPES_H HAVE_UNISTD_H NEXT_AS_FIRST_DIRECTIVE_UNISTD_H NEXT_UNISTD_H +PTHREAD_H_DEFINES_STRUCT_TIMESPEC SYS_TIME_H_DEFINES_STRUCT_TIMESPEC TIME_H_DEFINES_STRUCT_TIMESPEC NEXT_AS_FIRST_DIRECTIVE_TIME_H @@ -713,6 +721,7 @@ NEXT_AS_FIRST_DIRECTIVE_STDLIB_H NEXT_STDLIB_H NEXT_AS_FIRST_DIRECTIVE_STDIO_H NEXT_STDIO_H +ASM_SYMBOL_PREFIX NEXT_AS_FIRST_DIRECTIVE_STDDEF_H NEXT_STDDEF_H STDDEF_H @@ -722,10 +731,14 @@ NEXT_AS_FIRST_DIRECTIVE_STDARG_H NEXT_STDARG_H STDARG_H REPLACE_TIMEGM -REPLACE_STRPTIME REPLACE_NANOSLEEP REPLACE_MKTIME REPLACE_LOCALTIME_R +HAVE_TIMEGM +HAVE_STRPTIME +HAVE_NANOSLEEP +HAVE_LOCALTIME_R +GNULIB_TIME_R GNULIB_TIMEGM GNULIB_STRPTIME GNULIB_NANOSLEEP @@ -733,16 +746,18 @@ GNULIB_MKTIME UNDEFINE_STRTOK_R REPLACE_STRTOK_R REPLACE_STRSIGNAL +REPLACE_STRNLEN REPLACE_STRNDUP +REPLACE_STRNCAT REPLACE_STRERROR REPLACE_STRCASESTR REPLACE_STRSTR REPLACE_STRDUP +REPLACE_STPNCPY REPLACE_MEMMEM REPLACE_MEMCHR HAVE_STRVERSCMP HAVE_DECL_STRSIGNAL -HAVE_DECL_STRERROR HAVE_DECL_STRTOK_R HAVE_STRCASESTR HAVE_STRSEP @@ -757,6 +772,7 @@ HAVE_RAWMEMCHR HAVE_DECL_MEMRCHR HAVE_MEMPCPY HAVE_DECL_MEMMEM +HAVE_MEMCHR HAVE_MBSLEN GNULIB_STRVERSCMP GNULIB_STRSIGNAL @@ -782,6 +798,7 @@ GNULIB_STRSEP GNULIB_STRPBRK GNULIB_STRNLEN GNULIB_STRNDUP +GNULIB_STRNCAT GNULIB_STRDUP GNULIB_STRCHRNUL GNULIB_STPNCPY @@ -796,7 +813,9 @@ LOCALE_ZH_CN LOCALE_JA LOCALCHARSET_TESTS_ENVIRONMENT GLIBC21 +HAVE_LANGINFO_YESEXPR HAVE_LANGINFO_ERA +HAVE_LANGINFO_T_FMT_AMPM HAVE_LANGINFO_CODESET HAVE_LANGINFO_H NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H @@ -844,6 +863,8 @@ HAVE_SYS_TYPES_H HAVE_INTTYPES_H HAVE_UNSIGNED_LONG_LONG_INT HAVE_LONG_LONG_INT +HAVE__BOOL +STDBOOL_H NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H NEXT_SYS_TIME_H REPLACE_GETTIMEOFDAY @@ -856,8 +877,6 @@ LIBINTL HAVE_GETOPT_H NEXT_AS_FIRST_DIRECTIVE_GETOPT_H NEXT_GETOPT_H -HAVE__BOOL -STDBOOL_H FNMATCH_H FLOAT_H NEXT_AS_FIRST_DIRECTIVE_FLOAT_H @@ -870,6 +889,7 @@ REPLACE_VPRINTF REPLACE_VFPRINTF REPLACE_VDPRINTF REPLACE_VASPRINTF +REPLACE_TMPFILE REPLACE_STDIO_WRITE_FUNCS REPLACE_SPRINTF REPLACE_SNPRINTF @@ -896,6 +916,8 @@ REPLACE_DPRINTF HAVE_VDPRINTF HAVE_VASPRINTF HAVE_RENAMEAT +HAVE_FTELLO +HAVE_FSEEKO HAVE_DPRINTF HAVE_DECL_VSNPRINTF HAVE_DECL_SNPRINTF @@ -911,6 +933,7 @@ GNULIB_VFPRINTF_POSIX GNULIB_VFPRINTF GNULIB_VDPRINTF GNULIB_VASPRINTF +GNULIB_TMPFILE GNULIB_STDIO_H_SIGPIPE GNULIB_SPRINTF_POSIX GNULIB_SNPRINTF @@ -994,15 +1017,18 @@ NEXT_AS_FIRST_DIRECTIVE_ERRNO_H NEXT_ERRNO_H NEXT_AS_FIRST_DIRECTIVE_DIRENT_H NEXT_DIRENT_H +PRAGMA_COLUMNS PRAGMA_SYSTEM_HEADER INCLUDE_NEXT_AS_FIRST_DIRECTIVE INCLUDE_NEXT REPLACE_OPENDIR REPLACE_FDOPENDIR +REPLACE_DIRFD REPLACE_CLOSEDIR HAVE_ALPHASORT HAVE_SCANDIR HAVE_FDOPENDIR +HAVE_DECL_FDOPENDIR HAVE_DECL_DIRFD GNULIB_ALPHASORT GNULIB_SCANDIR @@ -1015,10 +1041,12 @@ REPLACE_WRITE REPLACE_USLEEP REPLACE_UNLINKAT REPLACE_UNLINK +REPLACE_TTYNAME_R REPLACE_SYMLINK REPLACE_SLEEP REPLACE_RMDIR REPLACE_READLINK +REPLACE_PWRITE REPLACE_PREAD REPLACE_LSEEK REPLACE_LINKAT @@ -1028,28 +1056,30 @@ REPLACE_GETPAGESIZE REPLACE_GETGROUPS REPLACE_GETCWD REPLACE_FCHOWNAT -REPLACE_FCHDIR REPLACE_DUP2 REPLACE_DUP REPLACE_CLOSE REPLACE_CHOWN -HAVE_USLEEP -HAVE_UNLINKAT HAVE_SYS_PARAM_H HAVE_OS_H +HAVE_DECL_GETUSERSHELL +HAVE_DECL_GETPAGESIZE HAVE_DECL_GETLOGIN_R HAVE_DECL_ENVIRON +HAVE_USLEEP +HAVE_UNLINKAT +HAVE_TTYNAME_R HAVE_SYMLINKAT HAVE_SYMLINK HAVE_SLEEP HAVE_READLINKAT HAVE_READLINK +HAVE_PWRITE HAVE_PREAD HAVE_PIPE2 HAVE_LINKAT HAVE_LINK HAVE_LCHOWN -HAVE_GETUSERSHELL HAVE_GETPAGESIZE HAVE_GETLOGIN HAVE_GETHOSTNAME @@ -1059,6 +1089,7 @@ HAVE_GETDOMAINNAME HAVE_FTRUNCATE HAVE_FSYNC HAVE_FCHOWNAT +HAVE_FCHDIR HAVE_FACCESSAT HAVE_EUIDACCESS HAVE_DUP3 @@ -1070,12 +1101,14 @@ GNULIB_UNLINKAT GNULIB_UNLINK GNULIB_UNISTD_H_SIGPIPE GNULIB_UNISTD_H_GETOPT +GNULIB_TTYNAME_R GNULIB_SYMLINKAT GNULIB_SYMLINK GNULIB_SLEEP GNULIB_RMDIR GNULIB_READLINKAT GNULIB_READLINK +GNULIB_PWRITE GNULIB_PREAD GNULIB_PIPE2 GNULIB_LSEEK @@ -1106,10 +1139,14 @@ REPLACE_UNSETENV REPLACE_STRTOD REPLACE_SETENV REPLACE_REALPATH +REPLACE_REALLOC REPLACE_PUTENV REPLACE_MKSTEMP +REPLACE_MALLOC REPLACE_CANONICALIZE_FILE_NAME +REPLACE_CALLOC HAVE_UNSETENV +HAVE_UNLOCKPT HAVE_SYS_LOADAVG_H HAVE_STRUCT_RANDOM_DATA HAVE_STRTOULL @@ -1118,19 +1155,22 @@ HAVE_STRTOD HAVE_SETENV HAVE_RPMATCH HAVE_REALPATH -HAVE_REALLOC_POSIX HAVE_RANDOM_R +HAVE_PTSNAME HAVE_MKSTEMPS +HAVE_MKSTEMP HAVE_MKOSTEMPS HAVE_MKOSTEMP HAVE_MKDTEMP -HAVE_MALLOC_POSIX +HAVE_GRANTPT HAVE_GETSUBOPT HAVE_DECL_GETLOADAVG HAVE_CANONICALIZE_FILE_NAME -HAVE_CALLOC_POSIX HAVE_ATOLL +HAVE__EXIT GNULIB_UNSETENV +GNULIB_UNLOCKPT +GNULIB_SYSTEM_POSIX GNULIB_STRTOULL GNULIB_STRTOLL GNULIB_STRTOD @@ -1140,17 +1180,20 @@ GNULIB_REALPATH GNULIB_REALLOC_POSIX GNULIB_RANDOM_R GNULIB_PUTENV +GNULIB_PTSNAME GNULIB_MKSTEMPS GNULIB_MKSTEMP GNULIB_MKOSTEMPS GNULIB_MKOSTEMP GNULIB_MKDTEMP GNULIB_MALLOC_POSIX +GNULIB_GRANTPT GNULIB_GETSUBOPT GNULIB_GETLOADAVG GNULIB_CANONICALIZE_FILE_NAME GNULIB_CALLOC_POSIX GNULIB_ATOLL +GNULIB__EXIT LOCALE_FR REPLACE_WCWIDTH REPLACE_WCSNRTOMBS @@ -1876,7 +1919,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures GNU tar 1.23 to adapt to many kinds of systems. +\`configure' configures GNU tar 1.24 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1946,7 +1989,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of GNU tar 1.23:";; + short | recursive ) echo "Configuration of GNU tar 1.24:";; esac cat <<\_ACEOF @@ -2084,7 +2127,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -GNU tar configure 1.23 +GNU tar configure 1.24 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -2098,7 +2141,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 GNU tar $as_me 1.23, which was +It was created by GNU tar $as_me 1.24, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2381,10 +2424,8 @@ ac_header_list="$ac_header_list memory.h" ac_header_list="$ac_header_list net/errno.h" ac_header_list="$ac_header_list sgtty.h" ac_header_list="$ac_header_list string.h" -ac_header_list="$ac_header_list stropts.h" ac_header_list="$ac_header_list sys/param.h" ac_header_list="$ac_header_list sys/device.h" -ac_header_list="$ac_header_list sys/filio.h" ac_header_list="$ac_header_list sys/gentape.h" ac_header_list="$ac_header_list sys/inet.h" ac_header_list="$ac_header_list sys/io/trioctl.h" @@ -2401,6 +2442,8 @@ ac_header_list="$ac_header_list linewrap.h" ac_func_list="$ac_func_list pathconf" ac_func_list="$ac_func_list btowc" ac_func_list="$ac_func_list canonicalize_file_name" +ac_func_list="$ac_func_list getcwd" +ac_func_list="$ac_func_list readlink" ac_func_list="$ac_func_list realpath" ac_func_list="$ac_func_list chown" ac_func_list="$ac_func_list fchown" @@ -2410,11 +2453,11 @@ ac_func_list="$ac_func_list dup2" ac_header_list="$ac_header_list errno.h" ac_func_list="$ac_func_list fchdir" ac_func_list="$ac_func_list fcntl" +ac_func_list="$ac_func_list mempcpy" ac_header_list="$ac_header_list float.h" ac_func_list="$ac_func_list isblank" ac_func_list="$ac_func_list iswctype" ac_func_list="$ac_func_list mbsrtowcs" -ac_func_list="$ac_func_list mempcpy" ac_func_list="$ac_func_list wmemchr" ac_func_list="$ac_func_list wmemcpy" ac_func_list="$ac_func_list wmempcpy" @@ -2422,7 +2465,7 @@ ac_header_list="$ac_header_list wctype.h" gl_fnmatch_required=GNU ac_header_list="$ac_header_list stdio_ext.h" ac_func_list="$ac_func_list __fpending" -ac_func_list="$ac_func_list ftruncate" +ac_func_list="$ac_func_list futimens" ac_func_list="$ac_func_list getdelim" ac_func_list="$ac_func_list getdtablesize" gl_getopt_required=GNU @@ -2434,45 +2477,58 @@ ac_header_list="$ac_header_list wchar.h" ac_header_list="$ac_header_list inttypes.h" ac_header_list="$ac_header_list langinfo.h" ac_func_list="$ac_func_list lchmod" +ac_func_list="$ac_func_list link" +ac_func_list="$ac_func_list linkat" +ac_func_list="$ac_func_list symlink" ac_func_list="$ac_func_list lstat" ac_func_list="$ac_func_list mbsinit" ac_func_list="$ac_func_list mbrtowc" ac_header_list="$ac_header_list sys/mman.h" ac_func_list="$ac_func_list mprotect" +ac_func_list="$ac_func_list memchr" +ac_func_list="$ac_func_list mkfifo" +ac_func_list="$ac_func_list mkfifoat" +ac_func_list="$ac_func_list mknodat" +ac_func_list="$ac_func_list mknod" ac_func_list="$ac_func_list alarm" ac_func_list="$ac_func_list nl_langinfo" -ac_func_list="$ac_func_list readlink" +ac_header_list="$ac_header_list priv.h" +ac_func_list="$ac_func_list readlinkat" ac_func_list="$ac_func_list wcscoll" +ac_func_list="$ac_func_list renameat" ac_func_list="$ac_func_list setenv" ac_func_list="$ac_func_list sleep" ac_header_list="$ac_header_list stdarg.h" ac_header_list="$ac_header_list stddef.h" ac_header_list="$ac_header_list stdio.h" ac_header_list="$ac_header_list stdlib.h" +ac_func_list="$ac_func_list strdup" ac_header_list="$ac_header_list sys/socket.h" ac_header_list="$ac_header_list strings.h" ac_func_list="$ac_func_list strndup" +ac_func_list="$ac_func_list symlinkat" ac_header_list="$ac_header_list sys/stat.h" ac_header_list="$ac_header_list sysexits.h" ac_header_list="$ac_header_list time.h" +ac_func_list="$ac_func_list localtime_r" ac_func_list="$ac_func_list pipe" -ac_header_list="$ac_header_list priv.h" ac_header_list="$ac_header_list utime.h" ac_func_list="$ac_func_list futimes" ac_func_list="$ac_func_list futimesat" -ac_func_list="$ac_func_list futimens" ac_func_list="$ac_func_list utimensat" ac_func_list="$ac_func_list lutimes" ac_func_list="$ac_func_list vasnprintf" ac_func_list="$ac_func_list wcrtomb" ac_func_list="$ac_func_list iswcntrl" +ac_func_list="$ac_func_list iswblank" ac_func_list="$ac_func_list wcwidth" ac_header_list="$ac_header_list netdb.h" ac_header_list="$ac_header_list sys/wait.h" ac_header_list="$ac_header_list pwd.h" ac_header_list="$ac_header_list grp.h" -ac_func_list="$ac_func_list mkfifo" ac_func_list="$ac_func_list setlocale" +ac_func_list="$ac_func_list fchmod" +ac_func_list="$ac_func_list fsync" gt_needs="$gt_needs need-formatstring-macros" # Check that the precious variables saved in the cache have kept the same # value. @@ -3063,7 +3119,7 @@ fi # Define the identity of the package. PACKAGE='tar' - VERSION='1.23' + VERSION='1.24' cat >>confdefs.h <<_ACEOF @@ -6028,9 +6084,206 @@ esac - - - + # Code from module alloca: + # Code from module alloca-opt: + # Code from module areadlink: + # Code from module areadlinkat: + # Code from module arg-nonnull: + # Code from module argmatch: + # Code from module argp: + # Code from module argp-version-etc: + # Code from module backupfile: + # Code from module bitrotate: + # Code from module btowc: + # Code from module c++defs: + # Code from module c-ctype: + # Code from module canonicalize-lgpl: + # Code from module chdir-long: + # Code from module chown: + # Code from module clock-time: + # Code from module cloexec: + # Code from module close: + # Code from module close-hook: + # Code from module close-stream: + # Code from module closeout: + # Code from module configmake: + # Code from module d-ino: + # Code from module dirent: + # Code from module dirent-safer: + # Code from module dirfd: + # Code from module dirname: + # Code from module dirname-lgpl: + # Code from module double-slash-root: + # Code from module dup2: + # Code from module environ: + # Code from module errno: + # Code from module error: + # Code from module exclude: + # Code from module exitfail: + # Code from module extensions: + + # Code from module fchdir: + # Code from module fclose: + # Code from module fcntl: + # Code from module fcntl-h: + # Code from module fdopendir: + # Code from module fdutimensat: + # Code from module fileblocks: + # Code from module filenamecat-lgpl: + # Code from module float: + # Code from module fnmatch: + # Code from module fnmatch-gnu: + # Code from module fpending: + # Code from module fseeko: + + # Code from module full-write: + # Code from module futimens: + # Code from module getcwd: + # Code from module getdelim: + # Code from module getdtablesize: + # Code from module getline: + # Code from module getopt-gnu: + # Code from module getopt-posix: + # Code from module getpagesize: + # Code from module gettext: + # Code from module gettext-h: + # Code from module gettime: + # Code from module gettimeofday: + # Code from module gitlog-to-changelog: + # Code from module hash: + # Code from module havelib: + # Code from module human: + # Code from module include_next: + # Code from module inline: + # Code from module intprops: + # Code from module inttostr: + # Code from module inttypes: + # Code from module langinfo: + # Code from module lchown: + # Code from module link: + # Code from module link-follow: + # Code from module linkat: + # Code from module localcharset: + # Code from module lseek: + # Code from module lstat: + # Code from module malloc-gnu: + # Code from module malloc-posix: + # Code from module malloca: + # Code from module mbchar: + # Code from module mbrtowc: + # Code from module mbscasecmp: + # Code from module mbsinit: + # Code from module mbsrtowcs: + # Code from module mbuiter: + # Code from module memchr: + # Code from module mempcpy: + # Code from module memrchr: + # Code from module mkdir: + # Code from module mkdtemp: + # Code from module mkfifo: + # Code from module mkfifoat: + # Code from module mknod: + # Code from module mktime: + # Code from module modechange: + # Code from module multiarch: + # Code from module nl_langinfo: + # Code from module obstack: + # Code from module open: + # Code from module openat: + # Code from module openat-die: + # Code from module parse-datetime: + # Code from module pathmax: + # Code from module priv-set: + # Code from module progname: + # Code from module quote: + # Code from module quotearg: + # Code from module quotearg-simple: + # Code from module rawmemchr: + # Code from module readlink: + # Code from module readlinkat: + # Code from module realloc-posix: + # Code from module regex: + # Code from module rename: + # Code from module renameat: + # Code from module rmdir: + # Code from module rpmatch: + # Code from module safe-read: + # Code from module safe-write: + # Code from module same-inode: + # Code from module save-cwd: + # Code from module savedir: + # Code from module setenv: + # Code from module size_max: + # Code from module sleep: + # Code from module snprintf: + # Code from module ssize_t: + # Code from module stat: + # Code from module stat-macros: + # Code from module stat-time: + # Code from module stdarg: + + # Code from module stdbool: + # Code from module stddef: + # Code from module stdint: + # Code from module stdio: + # Code from module stdlib: + # Code from module stpcpy: + # Code from module strcase: + # Code from module strchrnul: + # Code from module strdup-posix: + # Code from module streq: + # Code from module strerror: + # Code from module string: + # Code from module strings: + # Code from module strndup: + # Code from module strnlen: + # Code from module strnlen1: + # Code from module strtoimax: + # Code from module strtol: + # Code from module strtoll: + # Code from module strtoul: + # Code from module strtoull: + # Code from module strtoumax: + # Code from module symlink: + # Code from module symlinkat: + # Code from module sys_stat: + # Code from module sys_time: + # Code from module sysexits: + # Code from module tempname: + # Code from module time: + # Code from module time_r: + # Code from module timespec: + # Code from module unistd: + # Code from module unistd-safer: + # Code from module unitypes: + # Code from module uniwidth/base: + # Code from module uniwidth/width: + # Code from module unlink: + # Code from module unlinkdir: + # Code from module unlocked-io: + # Code from module unsetenv: + # Code from module utimens: + # Code from module utimensat: + # Code from module vasnprintf: + # Code from module vasprintf: + # Code from module verify: + # Code from module version-etc: + # Code from module version-etc-fsf: + # Code from module vsnprintf: + # Code from module warn-on-use: + # Code from module wchar: + # Code from module wcrtomb: + # Code from module wctype: + # Code from module wcwidth: + # Code from module write: + # Code from module xalloc: + # Code from module xalloc-die: + # Code from module xgetcwd: + # Code from module xsize: + # Code from module xstrndup: + # Code from module xstrtol: + # Code from module xstrtoumax: + # Code from module xvasprintf: # Check whether --enable-largefile was given. @@ -6766,14 +7019,6 @@ done - - - - - - - - @@ -8768,7 +9013,7 @@ int main () { int x = sizeof (ssize_t *) + sizeof (ssize_t); - return !x; + return !x; ; return 0; } @@ -8819,6 +9064,8 @@ _ACEOF + LIBC_FATAL_STDERR_=1 + export LIBC_FATAL_STDERR_ # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works # for constant arguments. Useless! @@ -9216,16 +9463,16 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ typedef int * int_ptr; - int foo (int_ptr $ac_kw ip) { - return ip[0]; + int foo (int_ptr $ac_kw ip) { + return ip[0]; } int main () { int s[1]; - int * $ac_kw t = s; - t[0] = 0; - return foo(t) + int * $ac_kw t = s; + t[0] = 0; + return foo(t) ; return 0; } @@ -10845,11 +11092,14 @@ int main () { is empty, and the behaviour of Tcl 8.4 in this locale is not useful. On OpenBSD 4.0, when an unsupported locale is specified, setlocale() succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ + some unit tests fail. + On MirBSD 10, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "UTF-8". */ #if HAVE_LANGINFO_CODESET { const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 + || strcmp (cs, "UTF-8") == 0) return 1; } #endif @@ -10921,6 +11171,10 @@ $as_echo "$gt_cv_locale_fr" >&6; } + + + + { $as_echo "$as_me:$LINENO: checking whether // is distinct from /" >&5 $as_echo_n "checking whether // is distinct from /... " >&6; } if test "${gl_cv_double_slash_root+set}" = set; then @@ -11052,17 +11306,41 @@ _ACEOF fi + + + + + + + + + + + + + + + + + + + + + + GNULIB__EXIT=0; GNULIB_ATOLL=0; GNULIB_CALLOC_POSIX=0; GNULIB_CANONICALIZE_FILE_NAME=0; GNULIB_GETLOADAVG=0; GNULIB_GETSUBOPT=0; + GNULIB_GRANTPT=0; GNULIB_MALLOC_POSIX=0; GNULIB_MKDTEMP=0; GNULIB_MKOSTEMP=0; GNULIB_MKOSTEMPS=0; GNULIB_MKSTEMP=0; GNULIB_MKSTEMPS=0; + GNULIB_PTSNAME=0; GNULIB_PUTENV=0; GNULIB_RANDOM_R=0; GNULIB_REALLOC_POSIX=0; @@ -11072,19 +11350,22 @@ _ACEOF GNULIB_STRTOD=0; GNULIB_STRTOLL=0; GNULIB_STRTOULL=0; + GNULIB_SYSTEM_POSIX=0; + GNULIB_UNLOCKPT=0; GNULIB_UNSETENV=0; - HAVE_ATOLL=1; - HAVE_CALLOC_POSIX=1; + HAVE__EXIT=1; + HAVE_ATOLL=1; HAVE_CANONICALIZE_FILE_NAME=1; HAVE_DECL_GETLOADAVG=1; HAVE_GETSUBOPT=1; - HAVE_MALLOC_POSIX=1; + HAVE_GRANTPT=1; HAVE_MKDTEMP=1; HAVE_MKOSTEMP=1; HAVE_MKOSTEMPS=1; + HAVE_MKSTEMP=1; HAVE_MKSTEMPS=1; + HAVE_PTSNAME=1; HAVE_RANDOM_R=1; - HAVE_REALLOC_POSIX=1; HAVE_REALPATH=1; HAVE_RPMATCH=1; HAVE_SETENV=1; @@ -11093,10 +11374,14 @@ _ACEOF HAVE_STRTOULL=1; HAVE_STRUCT_RANDOM_DATA=1; HAVE_SYS_LOADAVG_H=0; + HAVE_UNLOCKPT=1; HAVE_UNSETENV=1; + REPLACE_CALLOC=0; REPLACE_CANONICALIZE_FILE_NAME=0; + REPLACE_MALLOC=0; REPLACE_MKSTEMP=0; REPLACE_PUTENV=0; + REPLACE_REALLOC=0; REPLACE_REALPATH=0; REPLACE_SETENV=0; REPLACE_STRTOD=0; @@ -11129,12 +11414,14 @@ _ACEOF GNULIB_LSEEK=0; GNULIB_PIPE2=0; GNULIB_PREAD=0; + GNULIB_PWRITE=0; GNULIB_READLINK=0; GNULIB_READLINKAT=0; GNULIB_RMDIR=0; GNULIB_SLEEP=0; GNULIB_SYMLINK=0; GNULIB_SYMLINKAT=0; + GNULIB_TTYNAME_R=0; GNULIB_UNISTD_H_GETOPT=0; GNULIB_UNISTD_H_SIGPIPE=0; GNULIB_UNLINK=0; @@ -11146,6 +11433,7 @@ _ACEOF HAVE_DUP3=1; HAVE_EUIDACCESS=1; HAVE_FACCESSAT=1; + HAVE_FCHDIR=1; HAVE_FCHOWNAT=1; HAVE_FSYNC=1; HAVE_FTRUNCATE=1; @@ -11155,28 +11443,30 @@ _ACEOF HAVE_GETHOSTNAME=1; HAVE_GETLOGIN=1; HAVE_GETPAGESIZE=1; - HAVE_GETUSERSHELL=1; HAVE_LCHOWN=1; HAVE_LINK=1; HAVE_LINKAT=1; HAVE_PIPE2=1; HAVE_PREAD=1; + HAVE_PWRITE=1; HAVE_READLINK=1; HAVE_READLINKAT=1; HAVE_SLEEP=1; HAVE_SYMLINK=1; HAVE_SYMLINKAT=1; + HAVE_TTYNAME_R=1; + HAVE_UNLINKAT=1; + HAVE_USLEEP=1; HAVE_DECL_ENVIRON=1; HAVE_DECL_GETLOGIN_R=1; + HAVE_DECL_GETPAGESIZE=1; + HAVE_DECL_GETUSERSHELL=1; HAVE_OS_H=0; HAVE_SYS_PARAM_H=0; - HAVE_UNLINKAT=1; - HAVE_USLEEP=1; REPLACE_CHOWN=0; REPLACE_CLOSE=0; REPLACE_DUP=0; REPLACE_DUP2=0; - REPLACE_FCHDIR=0; REPLACE_FCHOWNAT=0; REPLACE_GETCWD=0; REPLACE_GETGROUPS=0; @@ -11186,10 +11476,12 @@ _ACEOF REPLACE_LINKAT=0; REPLACE_LSEEK=0; REPLACE_PREAD=0; + REPLACE_PWRITE=0; REPLACE_READLINK=0; REPLACE_RMDIR=0; REPLACE_SLEEP=0; REPLACE_SYMLINK=0; + REPLACE_TTYNAME_R=0; REPLACE_UNLINK=0; REPLACE_UNLINKAT=0; REPLACE_USLEEP=0; @@ -11588,7 +11880,7 @@ _ACEOF fi - { $as_echo "$as_me:$LINENO: checking whether chown honors trailing slash" >&5 + { $as_echo "$as_me:$LINENO: checking whether chown honors trailing slash" >&5 $as_echo_n "checking whether chown honors trailing slash... " >&6; } if test "${gl_cv_func_chown_slash_works+set}" = set; then $as_echo_n "(cached) " >&6 @@ -11792,10 +12084,12 @@ _ACEOF GNULIB_SCANDIR=0; GNULIB_ALPHASORT=0; HAVE_DECL_DIRFD=1; + HAVE_DECL_FDOPENDIR=1; HAVE_FDOPENDIR=1; HAVE_SCANDIR=1; HAVE_ALPHASORT=1; REPLACE_CLOSEDIR=0; + REPLACE_DIRFD=0; REPLACE_FDOPENDIR=0; REPLACE_OPENDIR=0; @@ -11921,6 +12215,41 @@ $as_echo "$gl_cv_have_include_next" >&6; } + { $as_echo "$as_me:$LINENO: checking whether system header files limit the line length" >&5 +$as_echo_n "checking whether system header files limit the line length... " >&6; } +if test "${gl_cv_pragma_columns+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#ifdef __TANDEM +choke me +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "choke me" >/dev/null 2>&1; then + gl_cv_pragma_columns=yes +else + gl_cv_pragma_columns=no +fi +rm -f conftest* + + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_pragma_columns" >&5 +$as_echo "$gl_cv_pragma_columns" >&6; } + if test $gl_cv_pragma_columns = yes; then + PRAGMA_COLUMNS="#pragma COLUMNS 10000" + else + PRAGMA_COLUMNS= + fi + @@ -11982,7 +12311,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include - extern struct { int foo; } environ; + extern struct { int foo; } environ; int main () { @@ -12080,6 +12409,9 @@ booboo #if !defined ESTALE booboo #endif +#if !defined EDQUOT +booboo +#endif #if !defined ECANCELED booboo #endif @@ -13871,6 +14203,7 @@ _ACEOF GNULIB_SNPRINTF=0; GNULIB_SPRINTF_POSIX=0; GNULIB_STDIO_H_SIGPIPE=0; + GNULIB_TMPFILE=0; GNULIB_VASPRINTF=0; GNULIB_VDPRINTF=0; GNULIB_VFPRINTF=0; @@ -13886,6 +14219,8 @@ _ACEOF HAVE_DECL_SNPRINTF=1; HAVE_DECL_VSNPRINTF=1; HAVE_DPRINTF=1; + HAVE_FSEEKO=1; + HAVE_FTELLO=1; HAVE_RENAMEAT=1; HAVE_VASPRINTF=1; HAVE_VDPRINTF=1; @@ -13912,6 +14247,7 @@ _ACEOF REPLACE_SNPRINTF=0; REPLACE_SPRINTF=0; REPLACE_STDIO_WRITE_FUNCS=0; + REPLACE_TMPFILE=0; REPLACE_VASPRINTF=0; REPLACE_VDPRINTF=0; REPLACE_VFPRINTF=0; @@ -14053,6 +14389,8 @@ _ACEOF + + { $as_echo "$as_me:$LINENO: checking for mbstate_t" >&5 $as_echo_n "checking for mbstate_t... " >&6; } if test "${ac_cv_type_mbstate_t+set}" = set; then @@ -14137,6 +14475,68 @@ _ACEOF + + + + + { $as_echo "$as_me:$LINENO: checking for fseeko" >&5 +$as_echo_n "checking for fseeko... " >&6; } +if test "${gl_cv_func_fseeko+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +fseeko (stdin, 0, 0); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + gl_cv_func_fseeko=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_func_fseeko=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_fseeko" >&5 +$as_echo "$gl_cv_func_fseeko" >&6; } { $as_echo "$as_me:$LINENO: checking whether stdin defaults to large file offsets" >&5 @@ -14366,163 +14766,11 @@ _ACEOF fi -{ $as_echo "$as_me:$LINENO: checking for stdbool.h that conforms to C99" >&5 -$as_echo_n "checking for stdbool.h that conforms to C99... " >&6; } -if test "${ac_cv_header_stdbool_h+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - - #include - #ifndef bool - "error: bool is not defined" - #endif - #ifndef false - "error: false is not defined" - #endif - #if false - "error: false is not 0" - #endif - #ifndef true - "error: true is not defined" - #endif - #if true != 1 - "error: true is not 1" - #endif - #ifndef __bool_true_false_are_defined - "error: __bool_true_false_are_defined is not defined" - #endif - - struct s { _Bool s: 1; _Bool t; } s; - - char a[true == 1 ? 1 : -1]; - char b[false == 0 ? 1 : -1]; - char c[__bool_true_false_are_defined == 1 ? 1 : -1]; - char d[(bool) 0.5 == true ? 1 : -1]; - bool e = &s; - char f[(_Bool) 0.0 == false ? 1 : -1]; - char g[true]; - char h[sizeof (_Bool)]; - char i[sizeof s.t]; - enum { j = false, k = true, l = false * true, m = true * 256 }; - _Bool n[m]; - char o[sizeof n == m * sizeof n[0] ? 1 : -1]; - char p[-1 - (_Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; - #if defined __xlc__ || defined __GNUC__ - /* Catch a bug in IBM AIX xlc compiler version 6.0.0.0 - reported by James Lemley on 2005-10-05; see - http://lists.gnu.org/archive/html/bug-coreutils/2005-10/msg00086.html - This test is not quite right, since xlc is allowed to - reject this program, as the initializer for xlcbug is - not one of the forms that C requires support for. - However, doing the test right would require a run-time - test, and that would make cross-compilation harder. - Let us hope that IBM fixes the xlc bug, and also adds - support for this kind of constant expression. In the - meantime, this test will reject xlc, which is OK, since - our stdbool.h substitute should suffice. We also test - this with GCC, where it should work, to detect more - quickly whether someone messes up the test in the - future. */ - char digs[] = "0123456789"; - int xlcbug = 1 / (&(digs + 5)[-2 + (bool) 1] == &digs[4] ? 1 : -1); - #endif - /* Catch a bug in an HP-UX C compiler. See - http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html - http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html - */ - _Bool q = true; - _Bool *pq = &q; - -int -main () -{ - - *pq |= q; - *pq |= ! q; - /* Refer to every declared value, to avoid compiler optimizations. */ - return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l - + !m + !n + !o + !p + !q + !pq); - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_header_stdbool_h=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_header_stdbool_h=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdbool_h" >&5 -$as_echo "$ac_cv_header_stdbool_h" >&6; } - { $as_echo "$as_me:$LINENO: checking for _Bool" >&5 -$as_echo_n "checking for _Bool... " >&6; } -if test "${ac_cv_type__Bool+set}" = set; then +{ $as_echo "$as_me:$LINENO: checking whether getdelim is declared" >&5 +$as_echo_n "checking whether getdelim is declared... " >&6; } +if test "${ac_cv_have_decl_getdelim+set}" = set; then $as_echo_n "(cached) " >&6 else - ac_cv_type__Bool=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof (_Bool)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -14533,8 +14781,10 @@ $ac_includes_default int main () { -if (sizeof ((_Bool))) - return 0; +#ifndef getdelim + (void) getdelim; +#endif + ; return 0; } @@ -14557,72 +14807,41 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type__Bool=yes -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_have_decl_getdelim=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - + ac_cv_have_decl_getdelim=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type__Bool" >&5 -$as_echo "$ac_cv_type__Bool" >&6; } -if test "x$ac_cv_type__Bool" = x""yes; then +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_getdelim" >&5 +$as_echo "$ac_cv_have_decl_getdelim" >&6; } +if test "x$ac_cv_have_decl_getdelim" = x""yes; then cat >>confdefs.h <<_ACEOF -#define HAVE__BOOL 1 +#define HAVE_DECL_GETDELIM 1 _ACEOF -fi - - if test $ac_cv_header_stdbool_h = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_STDBOOL_H 1 +else + cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_GETDELIM 0 _ACEOF - fi - - - - # Define two additional variables used in the Makefile substitution. - - if test "$ac_cv_header_stdbool_h" = yes; then - STDBOOL_H='' - else - STDBOOL_H='stdbool.h' - fi - - - if test "$ac_cv_type__Bool" = yes; then - HAVE__BOOL=1 - else - HAVE__BOOL=0 - fi - +fi - # getdate.y works with bison only. - : ${YACC='bison -y'} - { $as_echo "$as_me:$LINENO: checking for compound literals" >&5 -$as_echo_n "checking for compound literals... " >&6; } -if test "${gl_cv_compound_literals+set}" = set; then +{ $as_echo "$as_me:$LINENO: checking whether getline is declared" >&5 +$as_echo_n "checking whether getline is declared... " >&6; } +if test "${ac_cv_have_decl_getline+set}" = set; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -14631,315 +14850,14 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -struct s { int i, j; }; +$ac_includes_default int main () { -struct s t = (struct s) { 3, 4 }; - if (t.i != 0) return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - gl_cv_compound_literals=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - gl_cv_compound_literals=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_compound_literals" >&5 -$as_echo "$gl_cv_compound_literals" >&6; } - if test $gl_cv_compound_literals = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_COMPOUND_LITERALS 1 -_ACEOF - - fi - -{ $as_echo "$as_me:$LINENO: checking whether struct tm is in sys/time.h or time.h" >&5 -$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; } -if test "${ac_cv_struct_tm+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include - -int -main () -{ -struct tm tm; - int *p = &tm.tm_sec; - return !p; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_struct_tm=time.h -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_struct_tm=sys/time.h -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_struct_tm" >&5 -$as_echo "$ac_cv_struct_tm" >&6; } -if test $ac_cv_struct_tm = sys/time.h; then - -cat >>confdefs.h <<\_ACEOF -#define TM_IN_SYS_TIME 1 -_ACEOF - -fi - - - { $as_echo "$as_me:$LINENO: checking for struct tm.tm_gmtoff" >&5 -$as_echo_n "checking for struct tm.tm_gmtoff... " >&6; } -if test "${ac_cv_member_struct_tm_tm_gmtoff+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -int -main () -{ -static struct tm ac_aggr; -if (ac_aggr.tm_gmtoff) -return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_member_struct_tm_tm_gmtoff=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -int -main () -{ -static struct tm ac_aggr; -if (sizeof ac_aggr.tm_gmtoff) -return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_member_struct_tm_tm_gmtoff=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_member_struct_tm_tm_gmtoff=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_tm_tm_gmtoff" >&5 -$as_echo "$ac_cv_member_struct_tm_tm_gmtoff" >&6; } -if test "x$ac_cv_member_struct_tm_tm_gmtoff" = x""yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_TM_GMTOFF 1 -_ACEOF - -fi - - -{ $as_echo "$as_me:$LINENO: checking whether getdelim is declared" >&5 -$as_echo_n "checking whether getdelim is declared... " >&6; } -if test "${ac_cv_have_decl_getdelim+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -#ifndef getdelim - (void) getdelim; -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_have_decl_getdelim=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_have_decl_getdelim=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_getdelim" >&5 -$as_echo "$ac_cv_have_decl_getdelim" >&6; } -if test "x$ac_cv_have_decl_getdelim" = x""yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETDELIM 1 -_ACEOF - - -else - cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_GETDELIM 0 -_ACEOF - - -fi - - - - - - -{ $as_echo "$as_me:$LINENO: checking whether getline is declared" >&5 -$as_echo_n "checking whether getline is declared... " >&6; } -if test "${ac_cv_have_decl_getline+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -#ifndef getline - (void) getline; -#endif - +#ifndef getline + (void) getline; +#endif + ; return 0; } @@ -15335,7 +15253,7 @@ done fi - if test -z "$gl_replace_getopt" && test $gl_getopt_required = GNU; then + if test -z "$gl_replace_getopt"; then { $as_echo "$as_me:$LINENO: checking whether optreset is declared" >&5 $as_echo_n "checking whether optreset is declared... " >&6; } if test "${ac_cv_have_decl_optreset+set}" = set; then @@ -15402,13 +15320,83 @@ else #define HAVE_DECL_OPTRESET 0 _ACEOF +{ $as_echo "$as_me:$LINENO: checking whether getopt_clip is declared" >&5 +$as_echo_n "checking whether getopt_clip is declared... " >&6; } +if test "${ac_cv_have_decl_getopt_clip+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +#ifndef getopt_clip + (void) getopt_clip; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_getopt_clip=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_getopt_clip=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_getopt_clip" >&5 +$as_echo "$ac_cv_have_decl_getopt_clip" >&6; } +if test "x$ac_cv_have_decl_getopt_clip" = x""yes; then + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_GETOPT_CLIP 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_GETOPT_CLIP 0 +_ACEOF + + +fi + + fi fi - if test -z "$gl_replace_getopt"; then + if test -z "$gl_replace_getopt"; then { $as_echo "$as_me:$LINENO: checking whether getopt is POSIX compatible" >&5 $as_echo_n "checking whether getopt is POSIX compatible... " >&6; } if test "${gl_cv_func_getopt_posix+set}" = set; then @@ -15417,8 +15405,9 @@ else if test "$cross_compiling" = yes; then case "$host_os" in - mingw*) gl_cv_func_getopt_posix="guessing no";; - *) gl_cv_func_getopt_posix="guessing yes";; + mingw*) gl_cv_func_getopt_posix="guessing no";; + darwin* | aix*) gl_cv_func_getopt_posix="guessing no";; + *) gl_cv_func_getopt_posix="guessing yes";; esac else @@ -15433,7 +15422,7 @@ cat >>conftest.$ac_ext <<_ACEOF #include #include -#if !HAVE_DECL_OPTRESET +#if !HAVE_DECL_OPTRESET && !HAVE_DECL_GETOPT_CLIP # define OPTIND_MIN 0 #else # define OPTIND_MIN 1 @@ -15501,6 +15490,20 @@ main () if (!(optind == 1)) return 12; } + /* Detect MacOS 10.5, AIX 7.1 bug. */ + { + char *argv[3] = { "program", "-ab", NULL }; + optind = OPTIND_MIN; + opterr = 0; + if (getopt (2, argv, "ab:") != 'a') + return 13; + if (getopt (2, argv, "ab:") != '?') + return 14; + if (optopt != 'b') + return 15; + if (optind != 2) + return 16; + } return 0; } @@ -15561,7 +15564,14 @@ else # optstring is necessary for programs like m4 that have POSIX-mandated # semantics for supporting options interspersed with files. # Also, since getopt_long is a GNU extension, we require optind=0. - gl_had_POSIXLY_CORRECT=${POSIXLY_CORRECT:+yes} + # Bash ties 'set -o posix' to a non-exported POSIXLY_CORRECT; + # so take care to revert to the correct (non-)export state. + gl_awk_probe='BEGIN { if ("POSIXLY_CORRECT" in ENVIRON) print "x" }' + case ${POSIXLY_CORRECT+x}`$AWK "$gl_awk_probe" &5 @@ -15732,6 +15753,9 @@ fi + + + GNULIB_GETTIMEOFDAY=0; HAVE_GETTIMEOFDAY=1; HAVE_STRUCT_TIMEVAL=1; @@ -15950,6 +15974,236 @@ fi +{ $as_echo "$as_me:$LINENO: checking for stdbool.h that conforms to C99" >&5 +$as_echo_n "checking for stdbool.h that conforms to C99... " >&6; } +if test "${ac_cv_header_stdbool_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + + #include + #ifndef bool + "error: bool is not defined" + #endif + #ifndef false + "error: false is not defined" + #endif + #if false + "error: false is not 0" + #endif + #ifndef true + "error: true is not defined" + #endif + #if true != 1 + "error: true is not 1" + #endif + #ifndef __bool_true_false_are_defined + "error: __bool_true_false_are_defined is not defined" + #endif + + struct s { _Bool s: 1; _Bool t; } s; + + char a[true == 1 ? 1 : -1]; + char b[false == 0 ? 1 : -1]; + char c[__bool_true_false_are_defined == 1 ? 1 : -1]; + char d[(bool) 0.5 == true ? 1 : -1]; + /* See body of main program for 'e'. */ + char f[(_Bool) 0.0 == false ? 1 : -1]; + char g[true]; + char h[sizeof (_Bool)]; + char i[sizeof s.t]; + enum { j = false, k = true, l = false * true, m = true * 256 }; + /* The following fails for + HP aC++/ANSI C B3910B A.05.55 [Dec 04 2003]. */ + _Bool n[m]; + char o[sizeof n == m * sizeof n[0] ? 1 : -1]; + char p[-1 - (_Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; + /* Catch a bug in an HP-UX C compiler. See + http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html + http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html + */ + _Bool q = true; + _Bool *pq = &q; + +int +main () +{ + + bool e = &s; + *pq |= q; + *pq |= ! q; + /* Refer to every declared value, to avoid compiler optimizations. */ + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + + !m + !n + !o + !p + !q + !pq); + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_header_stdbool_h=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_header_stdbool_h=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdbool_h" >&5 +$as_echo "$ac_cv_header_stdbool_h" >&6; } + { $as_echo "$as_me:$LINENO: checking for _Bool" >&5 +$as_echo_n "checking for _Bool... " >&6; } +if test "${ac_cv_type__Bool+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type__Bool=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (_Bool)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((_Bool))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type__Bool=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type__Bool" >&5 +$as_echo "$ac_cv_type__Bool" >&6; } +if test "x$ac_cv_type__Bool" = x""yes; then + +cat >>confdefs.h <<_ACEOF +#define HAVE__BOOL 1 +_ACEOF + + +fi + + if test $ac_cv_header_stdbool_h = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_STDBOOL_H 1 +_ACEOF + + fi + + + + # Define two additional variables used in the Makefile substitution. + + if test "$ac_cv_header_stdbool_h" = yes; then + STDBOOL_H='' + else + STDBOOL_H='stdbool.h' + fi + + + if test "$ac_cv_type__Bool" = yes; then + HAVE__BOOL=1 + else + HAVE__BOOL=0 + fi + + { $as_echo "$as_me:$LINENO: checking for long long int" >&5 $as_echo_n "checking for long long int... " >&6; } @@ -18164,6 +18418,7 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include #ifdef PRId32 char *p = PRId32; @@ -18519,10 +18774,22 @@ fi - { $as_echo "$as_me:$LINENO: checking whether we are using the GNU C Library 2.1 or newer" >&5 -$as_echo_n "checking whether we are using the GNU C Library 2.1 or newer... " >&6; } -if test "${ac_cv_gnu_library_2_1+set}" = set; then + + + { $as_echo "$as_me:$LINENO: checking whether lstat correctly handles trailing slash" >&5 +$as_echo_n "checking whether lstat correctly handles trailing slash... " >&6; } +if test "${ac_cv_func_lstat_dereferences_slashed_symlink+set}" = set; then $as_echo_n "(cached) " >&6 +else + rm -f conftest.sym conftest.file + echo >conftest.file + if test "$as_ln_s" = "ln -s" && ln -s conftest.file conftest.sym; then + if test "$cross_compiling" = yes; then + # When cross-compiling, be pessimistic so we will end up using the + # replacement version of lstat that checks for trailing slashes and + # calls lstat a second time when necessary. + ac_cv_func_lstat_dereferences_slashed_symlink=no + else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -18530,44 +18797,101 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +$ac_includes_default +int +main () +{ +struct stat sbuf; + /* Linux will dereference the symlink and fail, as required by + POSIX. That is better in the sense that it means we will not + have to compile and use the lstat wrapper. */ + return lstat ("conftest.sym/", &sbuf) == 0; -#include -#ifdef __GNU_LIBRARY__ - #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) - Lucky GNU user - #endif -#endif - + ; + return 0; +} _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Lucky GNU user" >/dev/null 2>&1; then - ac_cv_gnu_library_2_1=yes +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_func_lstat_dereferences_slashed_symlink=yes else - ac_cv_gnu_library_2_1=no + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_func_lstat_dereferences_slashed_symlink=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -rm -f conftest* + else + # If the 'ln -s' command failed, then we probably don't even + # have an lstat function. + ac_cv_func_lstat_dereferences_slashed_symlink=no + fi + rm -f conftest.sym conftest.file fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_gnu_library_2_1" >&5 -$as_echo "$ac_cv_gnu_library_2_1" >&6; } +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_lstat_dereferences_slashed_symlink" >&5 +$as_echo "$ac_cv_func_lstat_dereferences_slashed_symlink" >&6; } + test $ac_cv_func_lstat_dereferences_slashed_symlink = yes && - GLIBC21="$ac_cv_gnu_library_2_1" +cat >>confdefs.h <<_ACEOF +#define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 +_ACEOF + if test "x$ac_cv_func_lstat_dereferences_slashed_symlink" = xno; then -{ $as_echo "$as_me:$LINENO: checking whether lstat dereferences a symlink specified with a trailing slash" >&5 -$as_echo_n "checking whether lstat dereferences a symlink specified with a trailing slash... " >&6; } -if test "${ac_cv_func_lstat_dereferences_slashed_symlink+set}" = set; then + + + + + + gl_LIBOBJS="$gl_LIBOBJS lstat.$ac_objext" + + fi + + + + + + { $as_echo "$as_me:$LINENO: checking whether unlink honors trailing slashes" >&5 +$as_echo_n "checking whether unlink honors trailing slashes... " >&6; } +if test "${gl_cv_func_unlink_honors_slashes+set}" = set; then $as_echo_n "(cached) " >&6 else - rm -f conftest.sym conftest.file -echo >conftest.file -if test "$as_ln_s" = "ln -s" && ln -s conftest.file conftest.sym; then - if test "$cross_compiling" = yes; then - ac_cv_func_lstat_dereferences_slashed_symlink=no + touch conftest.file + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.file conftest.lnk + fi + if test "$cross_compiling" = yes; then + gl_cv_func_unlink_honors_slashes="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -18575,15 +18899,17 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_includes_default +#include + #include + int main () { -struct stat sbuf; - /* Linux will dereference the symlink and fail. - That is better in the sense that it means we will not - have to compile and use the lstat wrapper. */ - return lstat ("conftest.sym/", &sbuf) == 0; +if (!unlink ("conftest.file/") || errno != ENOTDIR) return 1; +#if HAVE_LSTAT + if (!unlink ("conftest.lnk/") || errno != ENOTDIR) return 2; +#endif + ; return 0; } @@ -18610,51 +18936,635 @@ $as_echo "$ac_try_echo") >&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_func_lstat_dereferences_slashed_symlink=yes + gl_cv_func_unlink_honors_slashes=yes else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -ac_cv_func_lstat_dereferences_slashed_symlink=no +gl_cv_func_unlink_honors_slashes=no fi rm -rf conftest.dSYM rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi + rm -f conftest.file conftest.lnk +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_unlink_honors_slashes" >&5 +$as_echo "$gl_cv_func_unlink_honors_slashes" >&6; } + { $as_echo "$as_me:$LINENO: checking whether unlink of a parent directory fails is it should" >&5 +$as_echo_n "checking whether unlink of a parent directory fails is it should... " >&6; } +if test "${gl_cv_func_unlink_parent_fails+set}" = set; then + $as_echo_n "(cached) " >&6 +else + case "$host_os" in + darwin*) + if { + # Use the mktemp program if available. If not available, hide the error + # message. + tmp=`(umask 077 && mktemp -d /tmp/gtXXXXXX) 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" + } || + { + # Use a simple mkdir command. It is guaranteed to fail if the directory + # already exists. $RANDOM is bash specific and expands to empty in shells + # other than bash, ksh and zsh. Its use does not increase security; + # rather, it minimizes the probability of failure in a very cluttered /tmp + # directory. + tmp=/tmp/gt$$-$RANDOM + (umask 077 && mkdir "$tmp") + }; then + mkdir "$tmp/subdir" + GL_SUBDIR_FOR_UNLINK="$tmp/subdir" + export GL_SUBDIR_FOR_UNLINK + if test "$cross_compiling" = yes; then + gl_cv_func_unlink_parent_fails="guessing no" +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + + #include + #include + int main () + { + if (chdir (getenv ("GL_SUBDIR_FOR_UNLINK")) != 0) + return 1; + return unlink ("..") == 0; + } + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_unlink_parent_fails=yes else - # If the `ln -s' command failed, then we probably don't even - # have an lstat function. - ac_cv_func_lstat_dereferences_slashed_symlink=no + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_unlink_parent_fails=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -rm -f conftest.sym conftest.file + + + unset GL_SUBDIR_FOR_UNLINK + rm -rf "$tmp" + else + gl_cv_func_unlink_parent_fails="guessing no" + fi + ;; + *) + gl_cv_func_unlink_parent_fails="guessing yes" + ;; + esac fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_lstat_dereferences_slashed_symlink" >&5 -$as_echo "$ac_cv_func_lstat_dereferences_slashed_symlink" >&6; } +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_unlink_parent_fails" >&5 +$as_echo "$gl_cv_func_unlink_parent_fails" >&6; } + case "$gl_cv_func_unlink_parent_fails" in + *no) -test $ac_cv_func_lstat_dereferences_slashed_symlink = yes && +cat >>confdefs.h <<\_ACEOF +#define UNLINK_PARENT_BUG 1 +_ACEOF -cat >>confdefs.h <<_ACEOF -#define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 + ;; + esac + if test "$gl_cv_func_unlink_honors_slashes" != yes \ + || { case "$gl_cv_func_unlink_parent_fails" in + *yes) false;; + *no) true;; + esac + }; then + REPLACE_UNLINK=1 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS unlink.$ac_objext" + + fi + + + + GNULIB_OPENAT=1 + + + GNULIB_FCHMODAT=1 + GNULIB_FSTATAT=1 + GNULIB_MKDIRAT=1 + + + GNULIB_FCHOWNAT=1 + GNULIB_UNLINKAT=1 + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS openat-proc.$ac_objext" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +for ac_func in fchmodat fstatat mkdirat openat unlinkat +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ _ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ -if test $ac_cv_func_lstat_dereferences_slashed_symlink = no; then +#ifdef __STDC__ +# include +#else +# include +#endif +#undef $ac_func +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + eval "$as_ac_var=no" +fi +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" +fi +done + + + + + case $ac_cv_func_openat+$ac_cv_func_lstat_dereferences_slashed_symlink in + yes+yes) + # GNU/Hurd has unlinkat, but it has the same bug as unlink. + if test $REPLACE_UNLINK = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS unlinkat.$ac_objext" + + REPLACE_UNLINKAT=1 + fi ;; + yes+*) + # Solaris 9 has *at functions, but uniformly mishandles trailing + # slash in all of them. + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS openat.$ac_objext" + + REPLACE_OPENAT=1 - gl_LIBOBJS="$gl_LIBOBJS lstat.$ac_objext" + + + + + + + gl_LIBOBJS="$gl_LIBOBJS fstatat.$ac_objext" + + REPLACE_FSTATAT=1 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS unlinkat.$ac_objext" + + REPLACE_UNLINKAT=1 + ;; + *) + HAVE_OPENAT=0 + HAVE_UNLINKAT=0 # No known system with unlinkat but not openat + HAVE_FSTATAT=0 # No known system with fstatat but not openat + + + + : +;; + esac + if test $ac_cv_func_fchmodat != yes; then + HAVE_FCHMODAT=0 + fi + if test $ac_cv_func_mkdirat != yes; then + HAVE_MKDIRAT=0 + fi + + + { $as_echo "$as_me:$LINENO: checking for fchownat" >&5 +$as_echo_n "checking for fchownat... " >&6; } +if test "${ac_cv_func_fchownat+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define fchownat to an innocuous variant, in case declares fchownat. + For example, HP-UX 11i declares gettimeofday. */ +#define fchownat innocuous_fchownat + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char fchownat (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef fchownat + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char fchownat (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_fchownat || defined __stub___fchownat +choke me +#endif + +int +main () +{ +return fchownat (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_fchownat=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_fchownat=no fi +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_fchownat" >&5 +$as_echo "$ac_cv_func_fchownat" >&6; } +if test "x$ac_cv_func_fchownat" = x""yes; then + + { $as_echo "$as_me:$LINENO: checking whether fchownat works with AT_SYMLINK_NOFOLLOW" >&5 +$as_echo_n "checking whether fchownat works with AT_SYMLINK_NOFOLLOW... " >&6; } +if test "${gl_cv_func_fchownat_nofollow_works+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + gl_dangle=conftest.dangle + # Remove any remnants of a previous test. + rm -f $gl_dangle + # Arrange for deletion of the temporary file this test creates. + ac_clean_files="$ac_clean_files $gl_dangle" + ln -s conftest.no-such $gl_dangle + if test "$cross_compiling" = yes; then + gl_cv_func_fchownat_nofollow_works=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#include +#include +#include +int +main () +{ + return (fchownat (AT_FDCWD, "$gl_dangle", -1, getgid (), + AT_SYMLINK_NOFOLLOW) != 0 + && errno == ENOENT); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_fchownat_nofollow_works=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_fchownat_nofollow_works=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_fchownat_nofollow_works" >&5 +$as_echo "$gl_cv_func_fchownat_nofollow_works" >&6; } + if test $gl_cv_func_fchownat_nofollow_works = no; then + REPLACE_FCHOWNAT=1 + +cat >>confdefs.h <<\_ACEOF +#define FCHOWNAT_NOFOLLOW_BUG 1 +_ACEOF + + +fi + + + if test $REPLACE_CHOWN = 1; then + REPLACE_FCHOWNAT=1 + fi +else + HAVE_FCHOWNAT=0 +fi + + if test $HAVE_FCHOWNAT = 0 || test $REPLACE_FCHOWNAT = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS fchownat.$ac_objext" + + fi + + + + + + + + { $as_echo "$as_me:$LINENO: checking whether we are using the GNU C Library 2.1 or newer" >&5 +$as_echo_n "checking whether we are using the GNU C Library 2.1 or newer... " >&6; } +if test "${ac_cv_gnu_library_2_1+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#ifdef __GNU_LIBRARY__ + #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) + Lucky GNU user + #endif +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Lucky GNU user" >/dev/null 2>&1; then + ac_cv_gnu_library_2_1=yes +else + ac_cv_gnu_library_2_1=no +fi +rm -f conftest* + + + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_gnu_library_2_1" >&5 +$as_echo "$ac_cv_gnu_library_2_1" >&6; } + + GLIBC21="$ac_cv_gnu_library_2_1" + + + + { $as_echo "$as_me:$LINENO: checking whether malloc, realloc, calloc are POSIX compliant" >&5 $as_echo_n "checking whether malloc, realloc, calloc are POSIX compliant... " >&6; } @@ -18673,8 +19583,8 @@ int main () { #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ - choke me - #endif + choke me + #endif ; return 0; @@ -18983,11 +19893,14 @@ int main () is empty, and the behaviour of Tcl 8.4 in this locale is not useful. On OpenBSD 4.0, when an unsupported locale is specified, setlocale() succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ + some unit tests fail. + On MirBSD 10, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "UTF-8". */ #if HAVE_LANGINFO_CODESET { const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 + || strcmp (cs, "UTF-8") == 0) return 1; } #endif @@ -19002,7 +19915,7 @@ int main () if (MB_CUR_MAX == 1) return 1; /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding. */ + This excludes the UTF-8 encoding (except on MirBSD). */ t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; for (p = buf; *p != '\0'; p++) @@ -19098,11 +20011,14 @@ int main () is empty, and the behaviour of Tcl 8.4 in this locale is not useful. On OpenBSD 4.0, when an unsupported locale is specified, setlocale() succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ + some unit tests fail. + On MirBSD 10, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "UTF-8". */ #if HAVE_LANGINFO_CODESET { const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 + || strcmp (cs, "UTF-8") == 0) return 1; } #endif @@ -19113,7 +20029,7 @@ int main () if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; #endif /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding. */ + This excludes the UTF-8 encoding (except on MirBSD). */ t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; for (p = buf; *p != '\0'; p++) @@ -19272,6 +20188,7 @@ $as_echo "$gt_cv_locale_fr_utf8" >&6; } GNULIB_STPNCPY=0; GNULIB_STRCHRNUL=0; GNULIB_STRDUP=0; + GNULIB_STRNCAT=0; GNULIB_STRNDUP=0; GNULIB_STRNLEN=0; GNULIB_STRPBRK=0; @@ -19297,7 +20214,8 @@ $as_echo "$gt_cv_locale_fr_utf8" >&6; } GNULIB_STRSIGNAL=0; GNULIB_STRVERSCMP=0; HAVE_MBSLEN=0; - HAVE_DECL_MEMMEM=1; + HAVE_MEMCHR=1; + HAVE_DECL_MEMMEM=1; HAVE_MEMPCPY=1; HAVE_DECL_MEMRCHR=1; HAVE_RAWMEMCHR=1; @@ -19311,16 +20229,18 @@ $as_echo "$gt_cv_locale_fr_utf8" >&6; } HAVE_STRSEP=1; HAVE_STRCASESTR=1; HAVE_DECL_STRTOK_R=1; - HAVE_DECL_STRERROR=1; HAVE_DECL_STRSIGNAL=1; HAVE_STRVERSCMP=1; REPLACE_MEMCHR=0; REPLACE_MEMMEM=0; + REPLACE_STPNCPY=0; REPLACE_STRDUP=0; REPLACE_STRSTR=0; REPLACE_STRCASESTR=0; REPLACE_STRERROR=0; + REPLACE_STRNCAT=0; REPLACE_STRNDUP=0; + REPLACE_STRNLEN=0; REPLACE_STRSIGNAL=0; REPLACE_STRTOK_R=0; UNDEFINE_STRTOK_R=0; @@ -19404,6 +20324,8 @@ _ACEOF + + # Check for mmap(). Don't use AC_FUNC_MMAP, because it checks too much: it # fails on HP-UX 11, because MAP_FIXED mappings do not work. But this is # irrelevant for anonymous mappings. @@ -19579,271 +20501,6 @@ _ACEOF - - - - -for ac_func in memchr -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif - -int -main () -{ -return $ac_func (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_var=no" -fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -else - - gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" - -fi -done - - - if test $ac_cv_func_memchr = no; then - - -for ac_header in bp-sym.h -do -as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 -$as_echo_n "checking for $ac_header... " >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -fi -ac_res=`eval 'as_val=${'$as_ac_Header'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 -$as_echo_n "checking $ac_header usability... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_compiler=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 -$as_echo_n "checking $ac_header presence... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi - -rm -f conftest.err conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## ------------------------------ ## -## Report this to bug-tar@gnu.org ## -## ------------------------------ ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 -$as_echo_n "checking for $ac_header... " >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -ac_res=`eval 'as_val=${'$as_ac_Header'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - -fi -as_val=`eval 'as_val=${'$as_ac_Header'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - REPLACE_MEMCHR=1 - fi if test $ac_cv_func_memchr = yes; then # Detect platform-specific bugs in some versions of glibc: @@ -19910,6 +20567,8 @@ main () strcpy (fence - 9, "12345678"); if (memchr (fence - 9, 0, 79) != fence - 1) return 2; + if (memchr (fence - 1, 0, 3) != fence - 1) + return 3; } return 0; @@ -19957,6 +20616,22 @@ fi { $as_echo "$as_me:$LINENO: result: $gl_cv_func_memchr_works" >&5 $as_echo "$gl_cv_func_memchr_works" >&6; } if test "$gl_cv_func_memchr_works" != yes; then + REPLACE_MEMCHR=1 + fi + else + HAVE_MEMCHR=0 + fi + if test $HAVE_MEMCHR = 0 || test $REPLACE_MEMCHR = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS memchr.$ac_objext" + for ac_header in bp-sym.h @@ -20110,18 +20785,6 @@ fi done - REPLACE_MEMCHR=1 - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS memchr.$ac_objext" - - fi fi { $as_echo "$as_me:$LINENO: checking whether memrchr is declared" >&5 @@ -20165,64 +20828,192 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - ac_cv_have_decl_memrchr=yes + ac_cv_have_decl_memrchr=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_memrchr=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_memrchr" >&5 +$as_echo "$ac_cv_have_decl_memrchr" >&6; } +if test "x$ac_cv_have_decl_memrchr" = x""yes; then + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_MEMRCHR 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_MEMRCHR 0 +_ACEOF + + +fi + + + + + + + + + + + + GNULIB_MKTIME=0; + GNULIB_NANOSLEEP=0; + GNULIB_STRPTIME=0; + GNULIB_TIMEGM=0; + GNULIB_TIME_R=0; + HAVE_LOCALTIME_R=1; + HAVE_NANOSLEEP=1; + HAVE_STRPTIME=1; + HAVE_TIMEGM=1; + REPLACE_LOCALTIME_R=GNULIB_PORTCHECK; + REPLACE_MKTIME=GNULIB_PORTCHECK; + REPLACE_NANOSLEEP=GNULIB_PORTCHECK; + REPLACE_TIMEGM=GNULIB_PORTCHECK; + + + + + + + # parse-datetime.y works with bison only. + : ${YACC='bison -y'} + + + { $as_echo "$as_me:$LINENO: checking for compound literals" >&5 +$as_echo_n "checking for compound literals... " >&6; } +if test "${gl_cv_compound_literals+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +struct s { int i, j; }; +int +main () +{ +struct s t = (struct s) { 3, 4 }; + if (t.i != 0) return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gl_cv_compound_literals=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_have_decl_memrchr=no + gl_cv_compound_literals=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_memrchr" >&5 -$as_echo "$ac_cv_have_decl_memrchr" >&6; } -if test "x$ac_cv_have_decl_memrchr" = x""yes; then +{ $as_echo "$as_me:$LINENO: result: $gl_cv_compound_literals" >&5 +$as_echo "$gl_cv_compound_literals" >&6; } + if test $gl_cv_compound_literals = yes; then -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MEMRCHR 1 +cat >>confdefs.h <<\_ACEOF +#define HAVE_COMPOUND_LITERALS 1 _ACEOF + fi +{ $as_echo "$as_me:$LINENO: checking whether struct tm is in sys/time.h or time.h" >&5 +$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; } +if test "${ac_cv_struct_tm+set}" = set; then + $as_echo_n "(cached) " >&6 else - cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_MEMRCHR 0 + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ _ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +struct tm tm; + int *p = &tm.tm_sec; + return !p; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_struct_tm=time.h +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_struct_tm=sys/time.h fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_struct_tm" >&5 +$as_echo "$ac_cv_struct_tm" >&6; } +if test $ac_cv_struct_tm = sys/time.h; then +cat >>confdefs.h <<\_ACEOF +#define TM_IN_SYS_TIME 1 +_ACEOF - GNULIB_MKTIME=0; - GNULIB_NANOSLEEP=0; - GNULIB_STRPTIME=0; - GNULIB_TIMEGM=0; - REPLACE_LOCALTIME_R=GNULIB_PORTCHECK; - REPLACE_MKTIME=GNULIB_PORTCHECK; - REPLACE_NANOSLEEP=GNULIB_PORTCHECK; - REPLACE_STRPTIME=GNULIB_PORTCHECK; - REPLACE_TIMEGM=GNULIB_PORTCHECK; - - - - - - +fi - { $as_echo "$as_me:$LINENO: checking whether unlink honors trailing slashes" >&5 -$as_echo_n "checking whether unlink honors trailing slashes... " >&6; } -if test "${gl_cv_func_unlink_works+set}" = set; then + { $as_echo "$as_me:$LINENO: checking for struct tm.tm_gmtoff" >&5 +$as_echo_n "checking for struct tm.tm_gmtoff... " >&6; } +if test "${ac_cv_member_struct_tm_tm_gmtoff+set}" = set; then $as_echo_n "(cached) " >&6 -else - touch conftest.file - # Assume that if we have lstat, we can also check symlinks. - if test $ac_cv_func_lstat = yes; then - ln -s conftest.file conftest.lnk - fi - if test "$cross_compiling" = yes; then - gl_cv_func_unlink_works="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -20230,74 +21021,104 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include - #include +#include int main () { -if (!unlink ("conftest.file/") || errno != ENOTDIR) return 1; -#if HAVE_LSTAT - if (!unlink ("conftest.lnk/") || errno != ENOTDIR) return 2; -#endif - +static struct tm ac_aggr; +if (ac_aggr.tm_gmtoff) +return 0; ; return 0; } _ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_tm_tm_gmtoff=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +static struct tm ac_aggr; +if (sizeof ac_aggr.tm_gmtoff) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_try") 2>&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gl_cv_func_unlink_works=yes + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_tm_tm_gmtoff=yes else - $as_echo "$as_me: program exited with status $ac_status" >&5 -$as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -( exit $ac_status ) -gl_cv_func_unlink_works=no -fi -rm -rf conftest.dSYM -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext + ac_cv_member_struct_tm_tm_gmtoff=no fi - - rm -f conftest.file conftest.lnk +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_unlink_works" >&5 -$as_echo "$gl_cv_func_unlink_works" >&6; } - if test x"$gl_cv_func_unlink_works" != xyes; then - REPLACE_UNLINK=1 - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_tm_tm_gmtoff" >&5 +$as_echo "$ac_cv_member_struct_tm_tm_gmtoff" >&6; } +if test "x$ac_cv_member_struct_tm_tm_gmtoff" = x""yes; then +cat >>confdefs.h <<\_ACEOF +#define HAVE_TM_GMTOFF 1 +_ACEOF +fi - gl_LIBOBJS="$gl_LIBOBJS unlink.$ac_objext" - fi @@ -20333,6 +21154,7 @@ cat >>conftest.$ac_ext <<_ACEOF #include #include + #include int main () @@ -20754,7 +21576,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include - wchar_t foo = (wchar_t)'\0'; + wchar_t foo = (wchar_t)'\0'; int main () { @@ -20804,6 +21626,48 @@ _ACEOF + { $as_echo "$as_me:$LINENO: checking whether C symbols are prefixed with underscore at the linker level" >&5 +$as_echo_n "checking whether C symbols are prefixed with underscore at the linker level... " >&6; } +if test "${gl_cv_prog_as_underscore+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat > conftest.c <&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } >/dev/null 2>&1 + if grep _foo conftest.s >/dev/null ; then + gl_cv_prog_as_underscore=yes + else + gl_cv_prog_as_underscore=no + fi + rm -f conftest* + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_prog_as_underscore" >&5 +$as_echo "$gl_cv_prog_as_underscore" >&6; } + if test $gl_cv_prog_as_underscore = yes; then + USER_LABEL_PREFIX=_ + else + USER_LABEL_PREFIX= + fi + +cat >>confdefs.h <<_ACEOF +#define USER_LABEL_PREFIX $USER_LABEL_PREFIX +_ACEOF + + ASM_SYMBOL_PREFIX='"'${USER_LABEL_PREFIX}'"' + + + @@ -20811,6 +21675,8 @@ _ACEOF HAVE_STRCASECMP=1; HAVE_DECL_STRNCASECMP=1; + + { $as_echo "$as_me:$LINENO: checking whether strdup is declared" >&5 $as_echo_n "checking whether strdup is declared... " >&6; } if test "${ac_cv_have_decl_strdup+set}" = set; then @@ -21315,7 +22181,8 @@ $as_echo "$gl_cv_next_string_h" >&6; } - for gl_func in memmem mempcpy memrchr rawmemchr stpcpy stpncpy strchrnul strdup strndup strnlen strpbrk strsep strcasestr strtok_r strsignal strverscmp; do + + for gl_func in memmem mempcpy memrchr rawmemchr stpcpy stpncpy strchrnul strdup strncat strndup strnlen strpbrk strsep strcasestr strtok_r strsignal strverscmp; do as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 $as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } @@ -21676,6 +22543,8 @@ fi + + { $as_echo "$as_me:$LINENO: checking for struct timespec in " >&5 $as_echo_n "checking for struct timespec in ... " >&6; } if test "${gl_cv_sys_struct_timespec_in_time_h+set}" = set; then @@ -21730,6 +22599,7 @@ $as_echo "$gl_cv_sys_struct_timespec_in_time_h" >&6; } TIME_H_DEFINES_STRUCT_TIMESPEC=0 SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0 + PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0 if test $gl_cv_sys_struct_timespec_in_time_h = yes; then TIME_H_DEFINES_STRUCT_TIMESPEC=1 else @@ -21786,6 +22656,61 @@ fi $as_echo "$gl_cv_sys_struct_timespec_in_sys_time_h" >&6; } if test $gl_cv_sys_struct_timespec_in_sys_time_h = yes; then SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=1 + else + { $as_echo "$as_me:$LINENO: checking for struct timespec in " >&5 +$as_echo_n "checking for struct timespec in ... " >&6; } +if test "${gl_cv_sys_struct_timespec_in_pthread_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +static struct timespec x; x.tv_sec = x.tv_nsec; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gl_cv_sys_struct_timespec_in_pthread_h=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_sys_struct_timespec_in_pthread_h=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_sys_struct_timespec_in_pthread_h" >&5 +$as_echo "$gl_cv_sys_struct_timespec_in_pthread_h" >&6; } + if test $gl_cv_sys_struct_timespec_in_pthread_h = yes; then + PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1 + fi fi fi @@ -21805,6 +22730,7 @@ $as_echo "$gl_cv_sys_struct_timespec_in_sys_time_h" >&6; } + if test $gl_cv_have_include_next = yes; then gl_cv_next_time_h='<'time.h'>' else @@ -21863,6 +22789,35 @@ $as_echo "$gl_cv_next_time_h" >&6; } + + + + + +gl_libunistring_sed_extract_major='/^[0-9]/{s/^\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +gl_libunistring_sed_extract_minor='/^[0-9][0-9]*[.][0-9]/{s/^[0-9]*[.]\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +gl_libunistring_sed_extract_subminor='/^[0-9][0-9]*[.][0-9][0-9]*[.][0-9]/{s/^[0-9]*[.][0-9]*[.]\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' + + + if test "$HAVE_LIBUNISTRING" = yes; then + LIBUNISTRING_VERSION_MAJOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_major"` + LIBUNISTRING_VERSION_MINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_minor"` + LIBUNISTRING_VERSION_SUBMINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_subminor"` + fi + + { $as_echo "$as_me:$LINENO: checking whether the utimes function works" >&5 $as_echo_n "checking whether the utimes function works... " >&6; } if test "${gl_cv_func_working_utimes+set}" = set; then @@ -22066,8 +23021,6 @@ _ACEOF - - { $as_echo "$as_me:$LINENO: checking for wint_t" >&5 $as_echo_n "checking for wint_t... " >&6; } if test "${gt_cv_c_wint_t+set}" = set; then @@ -22088,7 +23041,7 @@ cat >>conftest.$ac_ext <<_ACEOF #include #include #include - wint_t foo = (wchar_t)'\0'; + wint_t foo = (wchar_t)'\0'; int main () { @@ -22147,8 +23100,10 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include #include + int main () { @@ -22208,7 +23163,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include -#include + #include int main () { @@ -22337,6 +23292,107 @@ _ACEOF + { $as_echo "$as_me:$LINENO: checking whether snprintf returns a byte count as in C99" >&5 +$as_echo_n "checking whether snprintf returns a byte count as in C99... " >&6; } +if test "${gl_cv_func_snprintf_retval_c99+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + if test "$cross_compiling" = yes; then + + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) 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";; + # Guess yes on MacOS X >= 10.3. + darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";; + darwin*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on OpenBSD >= 3.9. + openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) + gl_cv_func_snprintf_retval_c99="guessing no";; + openbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on Solaris >= 2.6. + solaris2.[0-5]*) gl_cv_func_snprintf_retval_c99="guessing no";; + solaris*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_snprintf_retval_c99="guessing no";; + aix*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_snprintf_retval_c99="guessing no";; + netbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_snprintf_retval_c99="guessing no";; + esac + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +static char buf[100]; +int main () +{ + strcpy (buf, "ABCDEF"); + if (snprintf (buf, 3, "%d %d", 4567, 89) != 7) + return 1; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_snprintf_retval_c99=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_snprintf_retval_c99=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_snprintf_retval_c99" >&5 +$as_echo "$gl_cv_func_snprintf_retval_c99" >&6; } + + + + + @@ -22517,6 +23573,16 @@ fi + case "$gl_cv_func_snprintf_retval_c99" in + *yes) + +cat >>confdefs.h <<\_ACEOF +#define HAVE_SNPRINTF_RETVAL_C99 1 +_ACEOF + + ;; + esac + { $as_echo "$as_me:$LINENO: checking whether vsnprintf is declared" >&5 $as_echo_n "checking whether vsnprintf is declared... " >&6; } if test "${ac_cv_have_decl_vsnprintf+set}" = set; then @@ -22592,6 +23658,77 @@ fi +{ $as_echo "$as_me:$LINENO: checking whether iswblank is declared" >&5 +$as_echo_n "checking whether iswblank is declared... " >&6; } +if test "${ac_cv_have_decl_iswblank+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef iswblank + (void) iswblank; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_iswblank=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_iswblank=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_iswblank" >&5 +$as_echo "$ac_cv_have_decl_iswblank" >&6; } +if test "x$ac_cv_have_decl_iswblank" = x""yes; then + +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_ISWBLANK 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_ISWBLANK 0 +_ACEOF + + +fi + + + + if false; then GL_COND_LIBTOOL_TRUE= @@ -22604,6 +23741,7 @@ fi gl_cond_libtool=false gl_libdeps= gl_ltlibdeps= + gl_m4_base='m4' @@ -22614,6 +23752,8 @@ fi gl_source_base='gnu' + # Code from module alloca: + # Code from module alloca-opt: @@ -22670,6 +23810,17 @@ _ACEOF fi + # Code from module areadlink: + # Code from module areadlinkat: + + +cat >>confdefs.h <<_ACEOF +#define GNULIB_AREADLINKAT 1 +_ACEOF + + + # Code from module arg-nonnull: + # Code from module argmatch: @@ -22682,6 +23833,7 @@ _ACEOF gl_LIBOBJS="$gl_LIBOBJS argmatch.$ac_objext" + # Code from module argp: @@ -22878,7 +24030,7 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { - program_invocation_name = "test"; +program_invocation_name = "test"; ; return 0; } @@ -22909,13 +24061,13 @@ cat >>confdefs.h <<\_ACEOF #define HAVE_PROGRAM_INVOCATION_NAME 1 _ACEOF - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi @@ -22935,7 +24087,7 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { - program_invocation_short_name = "test"; +program_invocation_short_name = "test"; ; return 0; } @@ -22966,13 +24118,13 @@ cat >>confdefs.h <<\_ACEOF #define HAVE_PROGRAM_INVOCATION_SHORT_NAME 1 _ACEOF - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:$LINENO: result: no" >&5 $as_echo "no" >&6; } fi @@ -23057,6 +24209,8 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=argp_failure:4:c-format" + # Code from module argp-version-etc: + # Code from module backupfile: @@ -23079,7 +24233,9 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + # Code from module bitrotate: + # Code from module btowc: @@ -23097,7 +24253,82 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - { $as_echo "$as_me:$LINENO: checking whether btowc(EOF) is correct" >&5 + + { $as_echo "$as_me:$LINENO: checking whether btowc(0) is correct" >&5 +$as_echo_n "checking whether btowc(0) is correct... " >&6; } +if test "${gl_cv_func_btowc_nul+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + if test "$cross_compiling" = yes; then + + case "$host_os" in + # Guess no on Cygwin. + cygwin*) gl_cv_func_btowc_nul="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_btowc_nul="guessing yes" ;; + esac + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#include +int main () +{ + if (btowc ('\0') != 0) + return 1; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_btowc_nul=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_btowc_nul=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_btowc_nul" >&5 +$as_echo "$gl_cv_func_btowc_nul" >&6; } + + { $as_echo "$as_me:$LINENO: checking whether btowc(EOF) is correct" >&5 $as_echo_n "checking whether btowc(EOF) is correct... " >&6; } if test "${gl_cv_func_btowc_eof+set}" = set; then $as_echo_n "(cached) " >&6 @@ -23175,6 +24406,11 @@ fi fi { $as_echo "$as_me:$LINENO: result: $gl_cv_func_btowc_eof" >&5 $as_echo "$gl_cv_func_btowc_eof" >&6; } + + case "$gl_cv_func_btowc_nul" in + *yes) ;; + *) REPLACE_BTOWC=1 ;; + esac case "$gl_cv_func_btowc_eof" in *yes) ;; *) REPLACE_BTOWC=1 ;; @@ -23201,17 +24437,24 @@ $as_echo "$gl_cv_func_btowc_eof" >&6; } + GNULIB_BTOWC=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_BTOWC 1 +#define GNULIB_TEST_BTOWC 1 _ACEOF + # Code from module c++defs: + # Code from module c-ctype: + # Code from module canonicalize-lgpl: + if test $ac_cv_func_canonicalize_file_name = no; then + HAVE_CANONICALIZE_FILE_NAME=0 @@ -23219,9 +24462,15 @@ _ACEOF - gl_LIBOBJS="$gl_LIBOBJS canonicalize.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS canonicalize-lgpl.$ac_objext" + if test $ac_cv_func_realpath = no; then + HAVE_REALPATH=0 + elif test "$gl_cv_func_realpath_works" != yes; then + REPLACE_REALPATH=1 + fi + elif test "$gl_cv_func_realpath_works" != yes; then @@ -23230,31 +24479,46 @@ _ACEOF + gl_LIBOBJS="$gl_LIBOBJS canonicalize-lgpl.$ac_objext" - if test $ac_cv_func_canonicalize_file_name = no; then - HAVE_CANONICALIZE_FILE_NAME=0 - elif test "$gl_cv_func_realpath_works" != yes; then + REPLACE_REALPATH=1 REPLACE_CANONICALIZE_FILE_NAME=1 fi -cat >>confdefs.h <<\_ACEOF -#define GNULIB_CANONICALIZE 1 +cat >>confdefs.h <<_ACEOF +#define GNULIB_CANONICALIZE_LGPL 1 _ACEOF + GNULIB_CANONICALIZE_FILE_NAME=1 + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +_ACEOF + + + + + + + GNULIB_REALPATH=1 + + + cat >>confdefs.h <<\_ACEOF -#define GNULIB_CANONICALIZE_FILE_NAME 1 +#define GNULIB_TEST_REALPATH 1 _ACEOF + # Code from module chdir-long: { $as_echo "$as_me:$LINENO: checking whether this system has an arbitrary file name length limit" >&5 $as_echo_n "checking whether this system has an arbitrary file name length limit... " >&6; } @@ -23302,18 +24566,22 @@ $as_echo "$gl_cv_have_arbitrary_file_name_length_limit" >&6; } fi + # Code from module chown: + GNULIB_CHOWN=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_CHOWN 1 +#define GNULIB_TEST_CHOWN 1 _ACEOF + # Code from module clock-time: @@ -23518,6 +24786,28 @@ done LIBS=$gl_saved_libs + # Code from module cloexec: + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS cloexec.$ac_objext" + + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_CLOEXEC 1 +_ACEOF + + + # Code from module close: + @@ -23526,12 +24816,15 @@ done GNULIB_CLOSE=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_CLOSE 1 +#define GNULIB_TEST_CLOSE 1 _ACEOF + # Code from module close-hook: + # Code from module close-stream: @@ -23548,11 +24841,12 @@ _ACEOF -cat >>confdefs.h <<\_ACEOF +cat >>confdefs.h <<_ACEOF #define GNULIB_CLOSE_STREAM 1 _ACEOF + # Code from module closeout: @@ -23567,6 +24861,8 @@ _ACEOF : + # Code from module configmake: + # Code from module d-ino: { $as_echo "$as_me:$LINENO: checking for d_ino member in directory struct" >&5 $as_echo_n "checking for d_ino member in directory struct... " >&6; } if test "${gl_cv_struct_dirent_d_ino+set}" = set; then @@ -23649,6 +24945,7 @@ _ACEOF fi + # Code from module dirent: @@ -23789,6 +25086,7 @@ fi done + # Code from module dirent-safer: @@ -23809,11 +25107,12 @@ fi -cat >>confdefs.h <<\_ACEOF +cat >>confdefs.h <<_ACEOF #define GNULIB_DIRENT_SAFER 1 _ACEOF + # Code from module dirfd: @@ -24031,123 +25330,21 @@ fi { $as_echo "$as_me:$LINENO: result: $gl_cv_func_dirfd_macro" >&5 $as_echo "$gl_cv_func_dirfd_macro" >&6; } - # Use the replacement only if we have no function, macro, - # or declaration with that name. - if test $ac_cv_func_dirfd,$ac_cv_have_decl_dirfd,$gl_cv_func_dirfd_macro \ - = no,no,no; then - - - - - - - - - -for ac_func in dirfd -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func + # Use the replacement only if we have no function or macro with that name. + if test $ac_cv_func_dirfd,$gl_cv_func_dirfd_macro = no,no; then + if test $ac_cv_have_decl_dirfd = yes; then + # If the system declares dirfd already, let's declare rpl_dirfd instead. + REPLACE_DIRFD=1 + fi -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif -int -main () -{ -return $ac_func (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_ac_var=no" -fi -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF -else - gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" -fi -done + gl_LIBOBJS="$gl_LIBOBJS dirfd.$ac_objext" { $as_echo "$as_me:$LINENO: checking how to get the file descriptor associated with an open DIR*" >&5 $as_echo_n "checking how to get the file descriptor associated with an open DIR*... " >&6; } @@ -24228,15 +25425,18 @@ _ACEOF + GNULIB_DIRFD=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_DIRFD 1 +#define GNULIB_TEST_DIRFD 1 _ACEOF + # Code from module dirname: @@ -24262,11 +25462,12 @@ _ACEOF -cat >>confdefs.h <<\_ACEOF +cat >>confdefs.h <<_ACEOF #define GNULIB_DIRNAME 1 _ACEOF + # Code from module dirname-lgpl: @@ -24303,6 +25504,7 @@ _ACEOF + # Code from module double-slash-root: { $as_echo "$as_me:$LINENO: checking whether // is distinct from /" >&5 @@ -24344,6 +25546,7 @@ _ACEOF fi + # Code from module dup2: @@ -24474,27 +25677,35 @@ $as_echo "$gl_cv_func_dup2_works" >&6; } + GNULIB_DUP2=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_DUP2 1 +#define GNULIB_TEST_DUP2 1 _ACEOF + # Code from module environ: + GNULIB_ENVIRON=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_ENVIRON 1 +#define GNULIB_TEST_ENVIRON 1 _ACEOF + # Code from module errno: + + # Code from module error: @@ -24509,7 +25720,7 @@ _ACEOF -{ $as_echo "$as_me:$LINENO: checking for error_at_line" >&5 + { $as_echo "$as_me:$LINENO: checking for error_at_line" >&5 $as_echo_n "checking for error_at_line... " >&6; } if test "${ac_cv_lib_error_at_line+set}" = set; then $as_echo_n "(cached) " >&6 @@ -24564,7 +25775,7 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ fi { $as_echo "$as_me:$LINENO: result: $ac_cv_lib_error_at_line" >&5 $as_echo "$ac_cv_lib_error_at_line" >&6; } -if test $ac_cv_lib_error_at_line = no; then + if test $ac_cv_lib_error_at_line = no; then @@ -24575,7 +25786,7 @@ if test $ac_cv_lib_error_at_line = no; then gl_LIBOBJS="$gl_LIBOBJS error.$ac_objext" -fi + fi @@ -24591,6 +25802,7 @@ fi XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error_at_line:5:c-format" + # Code from module exclude: @@ -24603,6 +25815,9 @@ fi gl_LIBOBJS="$gl_LIBOBJS exclude.$ac_objext" + # Code from module exitfail: + # Code from module extensions: + # Code from module fchdir: @@ -24614,7 +25829,7 @@ fi if test $ac_cv_func_fchdir = no; then - REPLACE_FCHDIR=1 + HAVE_FCHDIR=0 @@ -24799,15 +26014,19 @@ _ACEOF + GNULIB_FCHDIR=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_FCHDIR 1 +#define GNULIB_TEST_FCHDIR 1 _ACEOF + # Code from module fclose: + @@ -24815,12 +26034,14 @@ _ACEOF GNULIB_FCLOSE=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_FCLOSE 1 +#define GNULIB_TEST_FCLOSE 1 _ACEOF + # Code from module fcntl: @@ -25041,139 +26262,212 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - gl_cv_func_fcntl_f_dupfd_cloexec=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check" -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + gl_cv_func_fcntl_f_dupfd_cloexec=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check" +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_func_fcntl_f_dupfd_cloexec=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_fcntl_f_dupfd_cloexec" >&5 +$as_echo "$gl_cv_func_fcntl_f_dupfd_cloexec" >&6; } + if test "$gl_cv_func_fcntl_f_dupfd_cloexec" != yes; then + + + + + + + + + if test $ac_cv_func_fcntl = no; then + HAVE_FCNTL=0 + else + REPLACE_FCNTL=1 + fi + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS fcntl.$ac_objext" + + + fi + fi + + + + + GNULIB_FCNTL=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_FCNTL 1 +_ACEOF + + + + # Code from module fcntl-h: + + + + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_fcntl_h='<'fcntl.h'>' + else + { $as_echo "$as_me:$LINENO: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if test "${gl_cv_next_fcntl_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + if test $ac_cv_header_fcntl_h = yes; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + gl_cv_next_fcntl_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n '\#/fcntl.h#{ + s#.*"\(.*/fcntl.h\)".*#\1# + s#^/[^/]#//&# + p + q + }'`'"' + else + gl_cv_next_fcntl_h='<'fcntl.h'>' + fi + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_next_fcntl_h" >&5 +$as_echo "$gl_cv_next_fcntl_h" >&6; } + fi + NEXT_FCNTL_H=$gl_cv_next_fcntl_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'fcntl.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_fcntl_h + fi + NEXT_AS_FIRST_DIRECTIVE_FCNTL_H=$gl_next_as_first_directive + + + + + + + + for gl_func in fcntl openat; do + as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` + { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 +$as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } +if { as_var=$as_gl_Symbol; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +#undef $gl_func + (void) $gl_func; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + eval "$as_gl_Symbol=yes" else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_func_fcntl_f_dupfd_cloexec=no + eval "$as_gl_Symbol=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_fcntl_f_dupfd_cloexec" >&5 -$as_echo "$gl_cv_func_fcntl_f_dupfd_cloexec" >&6; } - if test "$gl_cv_func_fcntl_f_dupfd_cloexec" != yes; then - - - - - - - - - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 - fi - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS fcntl.$ac_objext" - - - fi - fi - - - - GNULIB_FCNTL=1 - - -cat >>confdefs.h <<\_ACEOF -#define GNULIB_FCNTL 1 -_ACEOF - - - - - - - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_fcntl_h='<'fcntl.h'>' - else - { $as_echo "$as_me:$LINENO: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if test "${gl_cv_next_fcntl_h+set}" = set; then - $as_echo_n "(cached) " >&6 -else - - if test $ac_cv_header_fcntl_h = yes; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - +ac_res=`eval 'as_val=${'$as_gl_Symbol'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + as_val=`eval 'as_val=${'$as_gl_Symbol'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1 _ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - gl_cv_next_fcntl_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n '\#/fcntl.h#{ - s#.*"\(.*/fcntl.h\)".*#\1# - s#^/[^/]#//&# - p - q - }'`'"' - else - gl_cv_next_fcntl_h='<'fcntl.h'>' - fi + eval ac_cv_have_decl_$gl_func=yes fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_next_fcntl_h" >&5 -$as_echo "$gl_cv_next_fcntl_h" >&6; } - fi - NEXT_FCNTL_H=$gl_cv_next_fcntl_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'fcntl.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_fcntl_h - fi - NEXT_AS_FIRST_DIRECTIVE_FCNTL_H=$gl_next_as_first_directive - - + done + # Code from module fdopendir: - for gl_func in fcntl openat; do - as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` - { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 -$as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } -if { as_var=$as_gl_Symbol; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking whether fdopendir is declared" >&5 +$as_echo_n "checking whether fdopendir is declared... " >&6; } +if test "${ac_cv_have_decl_fdopendir+set}" = set; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -25182,13 +26476,17 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include + +#include + int main () { -#undef $gl_func - (void) $gl_func; +#ifndef fdopendir + (void) fdopendir; +#endif + ; return 0; } @@ -25211,33 +26509,32 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - eval "$as_gl_Symbol=yes" + ac_cv_have_decl_fdopendir=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_gl_Symbol=no" + ac_cv_have_decl_fdopendir=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_gl_Symbol'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - as_val=`eval 'as_val=${'$as_gl_Symbol'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1 -_ACEOF +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_fdopendir" >&5 +$as_echo "$ac_cv_have_decl_fdopendir" >&6; } +if test "x$ac_cv_have_decl_fdopendir" = x""yes; then - eval ac_cv_have_decl_$gl_func=yes -fi +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FDOPENDIR 1 +_ACEOF - done +else + cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_FDOPENDIR 0 +_ACEOF +HAVE_DECL_FDOPENDIR=0 +fi @@ -25289,6 +26586,9 @@ cat >>conftest.$ac_ext <<_ACEOF #include #include +#if !HAVE_DECL_FDOPENDIR +extern DIR *fdopendir (int); +#endif int main () @@ -25359,16 +26659,34 @@ $as_echo "$gl_cv_func_fdopendir_works" >&6; } + GNULIB_FDOPENDIR=1 + cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_FDOPENDIR 1 +_ACEOF + + + + + +cat >>confdefs.h <<_ACEOF #define GNULIB_FDOPENDIR 1 _ACEOF + # Code from module fdutimensat: +cat >>confdefs.h <<_ACEOF +#define GNULIB_FDUTIMENSAT 1 +_ACEOF + + + # Code from module fileblocks: + { $as_echo "$as_me:$LINENO: checking for struct stat.st_blocks" >&5 $as_echo_n "checking for struct stat.st_blocks... " >&6; } if test "${ac_cv_member_struct_stat_st_blocks+set}" = set; then @@ -25501,12 +26819,33 @@ fi fi + # Code from module filenamecat-lgpl: + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS filenamecat-lgpl.$ac_objext" + + + + + + + + + + # Code from module float: FLOAT_H= case "$host_os" in - beos* | openbsd*) + beos* | openbsd* | mirbsd*) FLOAT_H=float.h @@ -25574,13 +26913,16 @@ $as_echo "$gl_cv_next_float_h" >&6; } esac + # Code from module fnmatch: FNMATCH_H= - gl_fnmatch_required_lowercase=`echo $gl_fnmatch_required | tr 'A-Z' 'a-z'` + gl_fnmatch_required_lowercase=` + echo $gl_fnmatch_required | tr '[A-Z]' '[a-z]' + ` gl_fnmatch_cache_var="gl_cv_func_fnmatch_${gl_fnmatch_required_lowercase}" { $as_echo "$as_me:$LINENO: checking for working $gl_fnmatch_required fnmatch" >&5 $as_echo_n "checking for working $gl_fnmatch_required fnmatch... " >&6; } @@ -25820,11 +27162,13 @@ fi fi + # Code from module fnmatch-gnu: + # Code from module fpending: @@ -26026,75 +27370,40 @@ _ACEOF fi + # Code from module fseeko: + if test $gl_cv_func_fseeko = no; then + HAVE_FSEEKO=0 - { $as_echo "$as_me:$LINENO: checking for fseeko" >&5 -$as_echo_n "checking for fseeko... " >&6; } -if test "${gl_cv_func_fseeko+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include + if test $gl_cv_func_fseeko = yes; then + REPLACE_FSEEKO=1 + fi + + -int -main () -{ -fseeko (stdin, 0, 0); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - gl_cv_func_fseeko=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_func_fseeko=no -fi -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_fseeko" >&5 -$as_echo "$gl_cv_func_fseeko" >&6; } - if test $gl_cv_func_fseeko = no \ - || test $gl_cv_var_stdin_large_offset = no; then + gl_LIBOBJS="$gl_LIBOBJS fseeko.$ac_objext" + + + + else + if test $gl_cv_var_stdin_large_offset = no; then + + + + if test $gl_cv_func_fseeko = yes; then + REPLACE_FSEEKO=1 + fi @@ -26102,25 +27411,29 @@ $as_echo "$gl_cv_func_fseeko" >&6; } - gl_LIBOBJS="$gl_LIBOBJS fseeko.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS fseeko.$ac_objext" - REPLACE_FSEEKO=1 + fi fi + GNULIB_FSEEKO=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_FSEEKO 1 +#define GNULIB_TEST_FSEEKO 1 _ACEOF + # Code from module full-write: + # Code from module futimens: @@ -26130,9 +27443,8 @@ _ACEOF - if test $ac_cv_func_ftruncate = no; then - HAVE_FTRUNCATE=0 - + if test $ac_cv_func_futimens = no; then + HAVE_FUTIMENS=0 @@ -26140,17 +27452,17 @@ _ACEOF - gl_LIBOBJS="$gl_LIBOBJS ftruncate.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS futimens.$ac_objext" - -for ac_func in chsize -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + else + { $as_echo "$as_me:$LINENO: checking whether futimens works" >&5 +$as_echo_n "checking whether futimens works... " >&6; } +if test "${gl_cv_func_futimens_works+set}" = set; then $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + gl_cv_func_futimens_works="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -26158,54 +27470,87 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ +#include +#include +#include +#include -#ifdef __STDC__ -# include -#else -# include -#endif +int +main () +{ +struct timespec ts[2] = { { 1, UTIME_OMIT }, { 1, UTIME_NOW } }; + int fd = creat ("conftest.file", 0600); + struct stat st; + if (fd < 0) return 1; + errno = 0; + if (futimens (AT_FDCWD, NULL) == 0) return 2; + if (errno != EBADF) return 3; + if (futimens (fd, ts)) return 4; + sleep (1); + ts[0].tv_nsec = UTIME_NOW; + ts[1].tv_nsec = UTIME_OMIT; + if (futimens (fd, ts)) return 5; + if (fstat (fd, &st)) return 6; + if (st.st_ctime < st.st_atime) return 7; -#undef $ac_func + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func +#ifdef __linux__ +/* The Linux kernel added futimens in 2.6.22, but has bugs with UTIME_OMIT + in several file systems as recently as 2.6.32. Always replace futimens + to support older kernels. */ choke me #endif int main () { -return $ac_func (); + ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -26214,75 +27559,62 @@ $as_echo "$ac_try_echo") >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" + } && test -s conftest.$ac_objext; then + gl_cv_func_futimens_works=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_ac_var=no" + gl_cv_func_futimens_works="needs runtime check" fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_futimens_works=no +fi rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF + + rm -f conftest.file fi -done +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_futimens_works" >&5 +$as_echo "$gl_cv_func_futimens_works" >&6; } + if test "$gl_cv_func_futimens_works" != yes; then + REPLACE_FUTIMENS=1 - case "$host_os" in - mingw*) - # Yes, we know mingw lacks ftruncate. - ;; - *) - # If someone lacks ftruncate, make configure fail, and request - # a bug report to inform us about it. - if test x"$SKIP_FTRUNCATE_CHECK" != xyes; then - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: Your system lacks the ftruncate function. - Please report this, along with the output of \"uname -a\", to the - bug-coreutils@gnu.org mailing list. To continue past this point, - rerun configure with SKIP_FTRUNCATE_CHECK=yes. - E.g., ./configure SKIP_FTRUNCATE_CHECK=yes -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: Your system lacks the ftruncate function. - Please report this, along with the output of \"uname -a\", to the - bug-coreutils@gnu.org mailing list. To continue past this point, - rerun configure with SKIP_FTRUNCATE_CHECK=yes. - E.g., ./configure SKIP_FTRUNCATE_CHECK=yes -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } - fi - esac + + + + + + + gl_LIBOBJS="$gl_LIBOBJS futimens.$ac_objext" + + fi fi - GNULIB_FTRUNCATE=1 + + GNULIB_FUTIMENS=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_FTRUNCATE 1 +#define GNULIB_TEST_FUTIMENS 1 _ACEOF + # Code from module getcwd: @@ -26596,468 +27928,44 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - eval "$as_ac_var=yes" -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_var=no" -fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - - { $as_echo "$as_me:$LINENO: checking whether getcwd aborts when 4k < cwd_length < 16k" >&5 -$as_echo_n "checking whether getcwd aborts when 4k < cwd_length < 16k... " >&6; } -if test "${gl_cv_func_getcwd_abort_bug+set}" = set; then - $as_echo_n "(cached) " >&6 -else - # Remove any remnants of a previous test. - rm -rf confdir-14B--- - # 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 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#include -#include -#include -#include - -/* Don't get link errors because mkdir is redefined to rpl_mkdir. */ -#undef mkdir - -#ifndef S_IRWXU -# define S_IRWXU 0700 -#endif - -/* FIXME: skip the run-test altogether on systems without getpagesize. */ -#if ! HAVE_GETPAGESIZE -# define getpagesize() 0 -#endif - -/* This size is chosen to be larger than PATH_MAX (4k), yet smaller than - the 16kB pagesize on ia64 linux. Those conditions make the code below - trigger a bug in glibc's getcwd implementation before 2.4.90-10. */ -#define TARGET_LEN (5 * 1024) - -int -main () -{ - char const *dir_name = "confdir-14B---"; - char *cwd; - size_t initial_cwd_len; - int fail = 0; - size_t desired_depth; - size_t d; - - /* The bug is triggered when PATH_MAX < getpagesize (), so skip - this relative expensive and invasive test if that's not true. */ - if (getpagesize () <= PATH_MAX) - return 0; - - cwd = getcwd (NULL, 0); - if (cwd == NULL) - return 0; - - initial_cwd_len = strlen (cwd); - free (cwd); - desired_depth = ((TARGET_LEN - 1 - initial_cwd_len) - / (1 + strlen (dir_name))); - for (d = 0; d < desired_depth; d++) - { - if (mkdir (dir_name, S_IRWXU) < 0 || chdir (dir_name) < 0) - { - fail = 3; /* Unable to construct deep hierarchy. */ - break; - } - } - - /* If libc has the bug in question, this invocation of getcwd - results in a failed assertion. */ - cwd = getcwd (NULL, 0); - if (cwd == NULL) - fail = 4; /* getcwd failed. This is ok, and expected. */ - free (cwd); - - /* Call rmdir first, in case the above chdir failed. */ - rmdir (dir_name); - while (0 < d--) - { - if (chdir ("..") < 0) - break; - rmdir (dir_name); - } - - return 0; -} - -_ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gl_cv_func_getcwd_abort_bug=no -else - $as_echo "$as_me: program exited with status $ac_status" >&5 -$as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -gl_cv_func_getcwd_abort_bug=yes -fi -rm -rf conftest.dSYM -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - - - -fi -{ $as_echo "$as_me:$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 - -;; - esac - - case $gl_cv_func_getcwd_null,$gl_cv_func_getcwd_path_max,$gl_abort_bug in - *yes,yes,no) ;; - *) - REPLACE_GETCWD=1 - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS getcwd.$ac_objext" - - - - - : -;; - esac - - - - GNULIB_GETCWD=1 - - -cat >>confdefs.h <<\_ACEOF -#define GNULIB_GETCWD 1 -_ACEOF - - - - - - - - - - { $as_echo "$as_me:$LINENO: checking for struct tm.tm_zone" >&5 -$as_echo_n "checking for struct tm.tm_zone... " >&6; } -if test "${ac_cv_member_struct_tm_tm_zone+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include <$ac_cv_struct_tm> - - -int -main () -{ -static struct tm ac_aggr; -if (ac_aggr.tm_zone) -return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_member_struct_tm_tm_zone=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include <$ac_cv_struct_tm> - - -int -main () -{ -static struct tm ac_aggr; -if (sizeof ac_aggr.tm_zone) -return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_member_struct_tm_tm_zone=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_member_struct_tm_tm_zone=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_tm_tm_zone" >&5 -$as_echo "$ac_cv_member_struct_tm_tm_zone" >&6; } -if test "x$ac_cv_member_struct_tm_tm_zone" = x""yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_STRUCT_TM_TM_ZONE 1 -_ACEOF - - -fi - -if test "$ac_cv_member_struct_tm_tm_zone" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_TM_ZONE 1 -_ACEOF - -else - { $as_echo "$as_me:$LINENO: checking whether tzname is declared" >&5 -$as_echo_n "checking whether tzname is declared... " >&6; } -if test "${ac_cv_have_decl_tzname+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -int -main () -{ -#ifndef tzname - (void) tzname; -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_have_decl_tzname=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_have_decl_tzname=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_tzname" >&5 -$as_echo "$ac_cv_have_decl_tzname" >&6; } -if test "x$ac_cv_have_decl_tzname" = x""yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_TZNAME 1 -_ACEOF - - -else - cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_TZNAME 0 -_ACEOF - - -fi - - - { $as_echo "$as_me:$LINENO: checking for tzname" >&5 -$as_echo_n "checking for tzname... " >&6; } -if test "${ac_cv_var_tzname+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#if !HAVE_DECL_TZNAME -extern char *tzname[]; -#endif - -int -main () -{ -return tzname[0][0]; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - ac_cv_var_tzname=yes + eval "$as_ac_var=yes" else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_var_tzname=no + eval "$as_ac_var=no" fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_var_tzname" >&5 -$as_echo "$ac_cv_var_tzname" >&6; } - if test $ac_cv_var_tzname = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_TZNAME 1 +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF - fi fi +done - - + { $as_echo "$as_me:$LINENO: checking whether getcwd aborts when 4k < cwd_length < 16k" >&5 +$as_echo_n "checking whether getcwd aborts when 4k < cwd_length < 16k... " >&6; } +if test "${gl_cv_func_getcwd_abort_bug+set}" = set; then + $as_echo_n "(cached) " >&6 +else + # Remove any remnants of a previous test. + rm -rf confdir-14B--- + # 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 +else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -27065,52 +27973,166 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include /* for time_t */ -#include /* for CHAR_BIT, LONG_MIN, LONG_MAX */ -#define TYPE_MINIMUM(t) \ - ((t) ((t) 0 < (t) -1 ? (t) 0 : ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1))) -#define TYPE_MAXIMUM(t) \ - ((t) ((t) 0 < (t) -1 ? (t) -1 : ~ (~ (t) 0 << (sizeof (t) * CHAR_BIT - 1)))) -typedef int verify_min[2 * (LONG_MIN <= TYPE_MINIMUM (time_t)) - 1]; -typedef int verify_max[2 * (TYPE_MAXIMUM (time_t) <= LONG_MAX) - 1]; +#include +#include +#include +#include +#include + +/* Don't get link errors because mkdir is redefined to rpl_mkdir. */ +#undef mkdir + +#ifndef S_IRWXU +# define S_IRWXU 0700 +#endif + +/* FIXME: skip the run-test altogether on systems without getpagesize. */ +#if ! HAVE_GETPAGESIZE +# define getpagesize() 0 +#endif + +/* This size is chosen to be larger than PATH_MAX (4k), yet smaller than + the 16kB pagesize on ia64 linux. Those conditions make the code below + trigger a bug in glibc's getcwd implementation before 2.4.90-10. */ +#define TARGET_LEN (5 * 1024) + +int +main () +{ + char const *dir_name = "confdir-14B---"; + char *cwd; + size_t initial_cwd_len; + int fail = 0; + size_t desired_depth; + size_t d; + + /* The bug is triggered when PATH_MAX < getpagesize (), so skip + this relative expensive and invasive test if that's not true. */ + if (getpagesize () <= PATH_MAX) + return 0; + + cwd = getcwd (NULL, 0); + if (cwd == NULL) + return 0; + + initial_cwd_len = strlen (cwd); + free (cwd); + desired_depth = ((TARGET_LEN - 1 - initial_cwd_len) + / (1 + strlen (dir_name))); + for (d = 0; d < desired_depth; d++) + { + if (mkdir (dir_name, S_IRWXU) < 0 || chdir (dir_name) < 0) + { + fail = 3; /* Unable to construct deep hierarchy. */ + break; + } + } + + /* If libc has the bug in question, this invocation of getcwd + results in a failed assertion. */ + cwd = getcwd (NULL, 0); + if (cwd == NULL) + fail = 4; /* getcwd failed. This is ok, and expected. */ + free (cwd); + + /* Call rmdir first, in case the above chdir failed. */ + rmdir (dir_name); + while (0 < d--) + { + if (chdir ("..") < 0) + break; + rmdir (dir_name); + } + + return 0; +} _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - -cat >>confdefs.h <<\_ACEOF -#define TIME_T_FITS_IN_LONG_INT 1 -_ACEOF - - + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_getcwd_abort_bug=no else - $as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 +( exit $ac_status ) +gl_cv_func_getcwd_abort_bug=yes +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:$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 -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +;; + esac + + case $gl_cv_func_getcwd_null,$gl_cv_func_getcwd_path_max,$gl_abort_bug in + *yes,yes,no) ;; + *) + REPLACE_GETCWD=1 + + + + + gl_LIBOBJS="$gl_LIBOBJS getcwd.$ac_objext" + + + + + : +;; + esac + + + + + GNULIB_GETCWD=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_GETCWD 1 +_ACEOF + + + + # Code from module getdelim: + + + @@ -27431,15 +28453,18 @@ fi + GNULIB_GETDELIM=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_GETDELIM 1 +#define GNULIB_TEST_GETDELIM 1 _ACEOF + # Code from module getdtablesize: @@ -27464,15 +28489,18 @@ _ACEOF + GNULIB_GETDTABLESIZE=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_GETDTABLESIZE 1 +#define GNULIB_TEST_GETDTABLESIZE 1 _ACEOF + # Code from module getline: @@ -28029,15 +29057,18 @@ fi + GNULIB_GETLINE=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_GETLINE 1 +#define GNULIB_TEST_GETLINE 1 _ACEOF + # Code from module getopt-gnu: @@ -28046,10 +29077,11 @@ _ACEOF cat >>confdefs.h <<\_ACEOF -#define GNULIB_GETOPT_GNU 1 +#define GNULIB_TEST_GETOPT_GNU 1 _ACEOF + # Code from module getopt-posix: @@ -28100,6 +29132,7 @@ fi + # Code from module getpagesize: @@ -28530,21 +29563,85 @@ done ;; esac + { $as_echo "$as_me:$LINENO: checking whether getpagesize is declared" >&5 +$as_echo_n "checking whether getpagesize is declared... " >&6; } +if test "${ac_cv_have_decl_getpagesize+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef getpagesize + (void) getpagesize; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_getpagesize=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_getpagesize=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_getpagesize" >&5 +$as_echo "$ac_cv_have_decl_getpagesize" >&6; } +if test "x$ac_cv_have_decl_getpagesize" = x""yes; then + : +else + HAVE_DECL_GETPAGESIZE=0 +fi + + GNULIB_GETPAGESIZE=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_GETPAGESIZE 1 +#define GNULIB_TEST_GETPAGESIZE 1 _ACEOF + # Code from module gettext: + # Code from module gettext-h: + # Code from module gettime: @@ -28568,6 +29665,7 @@ _ACEOF + # Code from module gettimeofday: @@ -29594,15 +30692,19 @@ _ACEOF + GNULIB_GETTIMEOFDAY=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_GETTIMEOFDAY 1 +#define GNULIB_TEST_GETTIMEOFDAY 1 _ACEOF + # Code from module gitlog-to-changelog: + # Code from module hash: @@ -29617,6 +30719,8 @@ _ACEOF + # Code from module havelib: + # Code from module human: @@ -29631,6 +30735,8 @@ _ACEOF : + # Code from module include_next: + # Code from module inline: { $as_echo "$as_me:$LINENO: checking whether the compiler generally respects inline" >&5 @@ -29677,68 +30783,29 @@ $as_echo "$ac_try_echo") >&5 test ! -s conftest.err } && test -s conftest.$ac_objext; then gl_cv_c_inline_effective=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - gl_cv_c_inline_effective=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi - -fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_c_inline_effective" >&5 -$as_echo "$gl_cv_c_inline_effective" >&6; } - if test $gl_cv_c_inline_effective = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_INLINE 1 -_ACEOF - - fi - - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS imaxtostr.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS offtostr.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS umaxtostr.$ac_objext" - - - - +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + gl_cv_c_inline_effective=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_c_inline_effective" >&5 +$as_echo "$gl_cv_c_inline_effective" >&6; } + if test $gl_cv_c_inline_effective = yes; then +cat >>confdefs.h <<\_ACEOF +#define HAVE_INLINE 1 +_ACEOF - gl_LIBOBJS="$gl_LIBOBJS uinttostr.$ac_objext" + fi + # Code from module intprops: + # Code from module inttostr: @@ -29749,6 +30816,7 @@ _ACEOF : : + # Code from module inttypes: @@ -30149,30 +31217,532 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - gl_cv_test_INT32_MAX_LT_INTMAX_MAX=yes + gl_cv_test_INT32_MAX_LT_INTMAX_MAX=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_test_INT32_MAX_LT_INTMAX_MAX=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&5 +$as_echo "$gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&6; } + if test $gl_cv_test_INT32_MAX_LT_INTMAX_MAX = yes; then + INT32_MAX_LT_INTMAX_MAX=1; + else + INT32_MAX_LT_INTMAX_MAX=0; + fi + + + if test $APPLE_UNIVERSAL_BUILD = 0; then + + { $as_echo "$as_me:$LINENO: checking whether INT64_MAX == LONG_MAX" >&5 +$as_echo_n "checking whether INT64_MAX == LONG_MAX... " >&6; } +if test "${gl_cv_test_INT64_MAX_EQ_LONG_MAX+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Work also in C++ mode. */ + #define __STDC_LIMIT_MACROS 1 + + /* Work if build is not clean. */ + #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H + + #include + #if HAVE_STDINT_H + #include + #endif + + #if defined INT64_MAX + #define CONDITION (INT64_MAX == LONG_MAX) + #elif HAVE_LONG_LONG_INT + #define CONDITION (sizeof (long long int) == sizeof (long int)) + #else + #define CONDITION 0 + #endif + int test[CONDITION ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gl_cv_test_INT64_MAX_EQ_LONG_MAX=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_test_INT64_MAX_EQ_LONG_MAX=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&5 +$as_echo "$gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&6; } + if test $gl_cv_test_INT64_MAX_EQ_LONG_MAX = yes; then + INT64_MAX_EQ_LONG_MAX=1; + else + INT64_MAX_EQ_LONG_MAX=0; + fi + + + else + INT64_MAX_EQ_LONG_MAX=-1 + fi + + { $as_echo "$as_me:$LINENO: checking whether UINT32_MAX < UINTMAX_MAX" >&5 +$as_echo_n "checking whether UINT32_MAX < UINTMAX_MAX... " >&6; } +if test "${gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Work also in C++ mode. */ + #define __STDC_LIMIT_MACROS 1 + + /* Work if build is not clean. */ + #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H + + #include + #if HAVE_STDINT_H + #include + #endif + + #if defined UINT32_MAX && defined UINTMAX_MAX + #define CONDITION (UINT32_MAX < UINTMAX_MAX) + #elif HAVE_LONG_LONG_INT + #define CONDITION (sizeof (unsigned int) < sizeof (unsigned long long int)) + #else + #define CONDITION 0 + #endif + int test[CONDITION ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&5 +$as_echo "$gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&6; } + if test $gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX = yes; then + UINT32_MAX_LT_UINTMAX_MAX=1; + else + UINT32_MAX_LT_UINTMAX_MAX=0; + fi + + + if test $APPLE_UNIVERSAL_BUILD = 0; then + + { $as_echo "$as_me:$LINENO: checking whether UINT64_MAX == ULONG_MAX" >&5 +$as_echo_n "checking whether UINT64_MAX == ULONG_MAX... " >&6; } +if test "${gl_cv_test_UINT64_MAX_EQ_ULONG_MAX+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Work also in C++ mode. */ + #define __STDC_LIMIT_MACROS 1 + + /* Work if build is not clean. */ + #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H + + #include + #if HAVE_STDINT_H + #include + #endif + + #if defined UINT64_MAX + #define CONDITION (UINT64_MAX == ULONG_MAX) + #elif HAVE_LONG_LONG_INT + #define CONDITION (sizeof (unsigned long long int) == sizeof (unsigned long int)) + #else + #define CONDITION 0 + #endif + int test[CONDITION ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&5 +$as_echo "$gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&6; } + if test $gl_cv_test_UINT64_MAX_EQ_ULONG_MAX = yes; then + UINT64_MAX_EQ_ULONG_MAX=1; + else + UINT64_MAX_EQ_ULONG_MAX=0; + fi + + + else + UINT64_MAX_EQ_ULONG_MAX=-1 + fi + + + + + + + for gl_func in imaxabs imaxdiv strtoimax strtoumax; do + as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` + { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 +$as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } +if { as_var=$as_gl_Symbol; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +#undef $gl_func + (void) $gl_func; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + eval "$as_gl_Symbol=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_gl_Symbol=no" +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_gl_Symbol'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + as_val=`eval 'as_val=${'$as_gl_Symbol'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1 +_ACEOF + + eval ac_cv_have_decl_$gl_func=yes +fi + + done + + + # Code from module langinfo: + + + + + + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_langinfo_h='<'langinfo.h'>' + else + { $as_echo "$as_me:$LINENO: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if test "${gl_cv_next_langinfo_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + if test $ac_cv_header_langinfo_h = yes; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + gl_cv_next_langinfo_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n '\#/langinfo.h#{ + s#.*"\(.*/langinfo.h\)".*#\1# + s#^/[^/]#//&# + p + q + }'`'"' + else + gl_cv_next_langinfo_h='<'langinfo.h'>' + fi + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_next_langinfo_h" >&5 +$as_echo "$gl_cv_next_langinfo_h" >&6; } + fi + NEXT_LANGINFO_H=$gl_cv_next_langinfo_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'langinfo.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_langinfo_h + fi + NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H=$gl_next_as_first_directive + + + + + HAVE_LANGINFO_CODESET=0 + HAVE_LANGINFO_T_FMT_AMPM=0 + HAVE_LANGINFO_ERA=0 + HAVE_LANGINFO_YESEXPR=0 + + + + + + + if test $ac_cv_header_langinfo_h = yes; then + HAVE_LANGINFO_H=1 + { $as_echo "$as_me:$LINENO: checking whether langinfo.h defines CODESET" >&5 +$as_echo_n "checking whether langinfo.h defines CODESET... " >&6; } +if test "${gl_cv_header_langinfo_codeset+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int a = CODESET; + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gl_cv_header_langinfo_codeset=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_header_langinfo_codeset=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_header_langinfo_codeset" >&5 +$as_echo "$gl_cv_header_langinfo_codeset" >&6; } + if test $gl_cv_header_langinfo_codeset = yes; then + HAVE_LANGINFO_CODESET=1 + fi + { $as_echo "$as_me:$LINENO: checking whether langinfo.h defines T_FMT_AMPM" >&5 +$as_echo_n "checking whether langinfo.h defines T_FMT_AMPM... " >&6; } +if test "${gl_cv_header_langinfo_t_fmt_ampm+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int a = T_FMT_AMPM; + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gl_cv_header_langinfo_t_fmt_ampm=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_test_INT32_MAX_LT_INTMAX_MAX=no + gl_cv_header_langinfo_t_fmt_ampm=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&5 -$as_echo "$gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&6; } - if test $gl_cv_test_INT32_MAX_LT_INTMAX_MAX = yes; then - INT32_MAX_LT_INTMAX_MAX=1; - else - INT32_MAX_LT_INTMAX_MAX=0; - fi - - - if test $APPLE_UNIVERSAL_BUILD = 0; then - { $as_echo "$as_me:$LINENO: checking whether INT64_MAX == LONG_MAX" >&5 -$as_echo_n "checking whether INT64_MAX == LONG_MAX... " >&6; } -if test "${gl_cv_test_INT64_MAX_EQ_LONG_MAX+set}" = set; then +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_header_langinfo_t_fmt_ampm" >&5 +$as_echo "$gl_cv_header_langinfo_t_fmt_ampm" >&6; } + if test $gl_cv_header_langinfo_t_fmt_ampm = yes; then + HAVE_LANGINFO_T_FMT_AMPM=1 + fi + { $as_echo "$as_me:$LINENO: checking whether langinfo.h defines ERA" >&5 +$as_echo_n "checking whether langinfo.h defines ERA... " >&6; } +if test "${gl_cv_header_langinfo_era+set}" = set; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30181,25 +31751,9 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Work also in C++ mode. */ - #define __STDC_LIMIT_MACROS 1 - - /* Work if build is not clean. */ - #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H - - #include - #if HAVE_STDINT_H - #include - #endif +#include +int a = ERA; - #if defined INT64_MAX - #define CONDITION (INT64_MAX == LONG_MAX) - #elif HAVE_LONG_LONG_INT - #define CONDITION (sizeof (long long int) == sizeof (long int)) - #else - #define CONDITION 0 - #endif - int test[CONDITION ? 1 : -1]; int main () { @@ -30226,32 +31780,25 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - gl_cv_test_INT64_MAX_EQ_LONG_MAX=yes + gl_cv_header_langinfo_era=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_test_INT64_MAX_EQ_LONG_MAX=no + gl_cv_header_langinfo_era=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&5 -$as_echo "$gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&6; } - if test $gl_cv_test_INT64_MAX_EQ_LONG_MAX = yes; then - INT64_MAX_EQ_LONG_MAX=1; - else - INT64_MAX_EQ_LONG_MAX=0; - fi - - else - INT64_MAX_EQ_LONG_MAX=-1 - fi - - { $as_echo "$as_me:$LINENO: checking whether UINT32_MAX < UINTMAX_MAX" >&5 -$as_echo_n "checking whether UINT32_MAX < UINTMAX_MAX... " >&6; } -if test "${gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX+set}" = set; then +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_header_langinfo_era" >&5 +$as_echo "$gl_cv_header_langinfo_era" >&6; } + if test $gl_cv_header_langinfo_era = yes; then + HAVE_LANGINFO_ERA=1 + fi + { $as_echo "$as_me:$LINENO: checking whether langinfo.h defines YESEXPR" >&5 +$as_echo_n "checking whether langinfo.h defines YESEXPR... " >&6; } +if test "${gl_cv_header_langinfo_yesexpr+set}" = set; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30260,25 +31807,9 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Work also in C++ mode. */ - #define __STDC_LIMIT_MACROS 1 - - /* Work if build is not clean. */ - #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H - - #include - #if HAVE_STDINT_H - #include - #endif +#include +int a = YESEXPR; - #if defined UINT32_MAX && defined UINTMAX_MAX - #define CONDITION (UINT32_MAX < UINTMAX_MAX) - #elif HAVE_LONG_LONG_INT - #define CONDITION (sizeof (unsigned int) < sizeof (unsigned long long int)) - #else - #define CONDITION 0 - #endif - int test[CONDITION ? 1 : -1]; int main () { @@ -30305,30 +31836,38 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=yes + gl_cv_header_langinfo_yesexpr=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=no + gl_cv_header_langinfo_yesexpr=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&5 -$as_echo "$gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&6; } - if test $gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX = yes; then - UINT32_MAX_LT_UINTMAX_MAX=1; +{ $as_echo "$as_me:$LINENO: result: $gl_cv_header_langinfo_yesexpr" >&5 +$as_echo "$gl_cv_header_langinfo_yesexpr" >&6; } + if test $gl_cv_header_langinfo_yesexpr = yes; then + HAVE_LANGINFO_YESEXPR=1 + fi else - UINT32_MAX_LT_UINTMAX_MAX=0; + HAVE_LANGINFO_H=0 fi - if test $APPLE_UNIVERSAL_BUILD = 0; then - { $as_echo "$as_me:$LINENO: checking whether UINT64_MAX == ULONG_MAX" >&5 -$as_echo_n "checking whether UINT64_MAX == ULONG_MAX... " >&6; } -if test "${gl_cv_test_UINT64_MAX_EQ_ULONG_MAX+set}" = set; then + + + + + + for gl_func in nl_langinfo; do + as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` + { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 +$as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } +if { as_var=$as_gl_Symbol; eval "test \"\${$as_var+set}\" = set"; }; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30337,29 +31876,13 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Work also in C++ mode. */ - #define __STDC_LIMIT_MACROS 1 - - /* Work if build is not clean. */ - #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H - - #include - #if HAVE_STDINT_H - #include - #endif +#include - #if defined UINT64_MAX - #define CONDITION (UINT64_MAX == ULONG_MAX) - #elif HAVE_LONG_LONG_INT - #define CONDITION (sizeof (unsigned long long int) == sizeof (unsigned long int)) - #else - #define CONDITION 0 - #endif - int test[CONDITION ? 1 : -1]; int main () { - +#undef $gl_func + (void) $gl_func; ; return 0; } @@ -30382,39 +31905,58 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=yes + eval "$as_gl_Symbol=yes" else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=no + eval "$as_gl_Symbol=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&5 -$as_echo "$gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&6; } - if test $gl_cv_test_UINT64_MAX_EQ_ULONG_MAX = yes; then - UINT64_MAX_EQ_ULONG_MAX=1; - else - UINT64_MAX_EQ_ULONG_MAX=0; - fi +ac_res=`eval 'as_val=${'$as_gl_Symbol'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + as_val=`eval 'as_val=${'$as_gl_Symbol'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1 +_ACEOF + eval ac_cv_have_decl_$gl_func=yes +fi - else - UINT64_MAX_EQ_ULONG_MAX=-1 - fi + done + # Code from module lchown: - for gl_func in imaxabs imaxdiv strtoimax strtoumax; do - as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` - { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 -$as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } -if { as_var=$as_gl_Symbol; eval "test \"\${$as_var+set}\" = set"; }; then + + + + + + + + + + + + + + +for ac_func in lchown +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -30423,26 +31965,54 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif int main () { -#undef $gl_func - (void) $gl_func; +return $ac_func (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -30451,35 +32021,45 @@ $as_echo "$ac_try_echo") >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err - } && test -s conftest.$ac_objext; then - eval "$as_gl_Symbol=yes" + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_gl_Symbol=no" + eval "$as_ac_var=no" fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_gl_Symbol'} +ac_res=`eval 'as_val=${'$as_ac_var'} $as_echo "$as_val"'` { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } - as_val=`eval 'as_val=${'$as_gl_Symbol'} +as_val=`eval 'as_val=${'$as_ac_var'} $as_echo "$as_val"'` if test "x$as_val" = x""yes; then cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1 +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF - eval ac_cv_have_decl_$gl_func=yes -fi +else - done + gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" +fi +done + if test $ac_cv_func_lchown = no; then + HAVE_LCHOWN=0 + elif test "$gl_cv_func_chown_slash_works" != yes \ + || test "$gl_cv_func_chown_ctime_works" != yes; then @@ -30488,79 +32068,58 @@ fi + gl_LIBOBJS="$gl_LIBOBJS lchown.$ac_objext" + REPLACE_LCHOWN=1 + fi + GNULIB_LCHOWN=1 - if test $gl_cv_have_include_next = yes; then - gl_cv_next_langinfo_h='<'langinfo.h'>' - else - { $as_echo "$as_me:$LINENO: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if test "${gl_cv_next_langinfo_h+set}" = set; then - $as_echo_n "(cached) " >&6 -else - if test $ac_cv_header_langinfo_h = yes; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_LCHOWN 1 _ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - gl_cv_next_langinfo_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n '\#/langinfo.h#{ - s#.*"\(.*/langinfo.h\)".*#\1# - s#^/[^/]#//&# - p - q - }'`'"' - else - gl_cv_next_langinfo_h='<'langinfo.h'>' - fi -fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_next_langinfo_h" >&5 -$as_echo "$gl_cv_next_langinfo_h" >&6; } - fi - NEXT_LANGINFO_H=$gl_cv_next_langinfo_h - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'langinfo.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_langinfo_h - fi - NEXT_AS_FIRST_DIRECTIVE_LANGINFO_H=$gl_next_as_first_directive + # Code from module link: - HAVE_LANGINFO_CODESET=0 - HAVE_LANGINFO_ERA=0 + if test $ac_cv_func_link = no; then + HAVE_LINK=0 - if test $ac_cv_header_langinfo_h = yes; then - HAVE_LANGINFO_H=1 - { $as_echo "$as_me:$LINENO: checking whether langinfo.h defines CODESET" >&5 -$as_echo_n "checking whether langinfo.h defines CODESET... " >&6; } -if test "${gl_cv_header_langinfo_codeset+set}" = set; then + + + + + + + gl_LIBOBJS="$gl_LIBOBJS link.$ac_objext" + + else + { $as_echo "$as_me:$LINENO: checking whether link handles trailing slash correctly" >&5 +$as_echo_n "checking whether link handles trailing slash correctly... " >&6; } +if test "${gl_cv_func_link_works+set}" = set; then $as_echo_n "(cached) " >&6 +else + touch conftest.a + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.a conftest.lnk + fi + if test "$cross_compiling" = yes; then + gl_cv_func_link_works="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -30568,69 +32127,275 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -int a = CODESET; +#include int main () { +if (!link ("conftest.a", "conftest.b/")) return 1; +#if HAVE_LSTAT + if (!link ("conftest.lnk/", "conftest.b")) return 2; +#endif ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - gl_cv_header_langinfo_codeset=yes + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_link_works=yes else - $as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_header_langinfo_codeset=no +( exit $ac_status ) +gl_cv_func_link_works=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + rm -f conftest.a conftest.b conftest.lnk fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_header_langinfo_codeset" >&5 -$as_echo "$gl_cv_header_langinfo_codeset" >&6; } - if test $gl_cv_header_langinfo_codeset = yes; then - HAVE_LANGINFO_CODESET=1 +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_link_works" >&5 +$as_echo "$gl_cv_func_link_works" >&6; } + if test "$gl_cv_func_link_works" != yes; then + REPLACE_LINK=1 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS link.$ac_objext" + fi - { $as_echo "$as_me:$LINENO: checking whether langinfo.h defines ERA" >&5 -$as_echo_n "checking whether langinfo.h defines ERA... " >&6; } -if test "${gl_cv_header_langinfo_era+set}" = set; then + fi + + + + + GNULIB_LINK=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_LINK 1 +_ACEOF + + + + # Code from module link-follow: + + + + + + + gl_link_follows_symlinks=0 # assume GNU behavior + if test $ac_cv_func_readlink = yes; then + { $as_echo "$as_me:$LINENO: checking whether link(2) dereferences a symlink" >&5 +$as_echo_n "checking whether link(2) dereferences a symlink... " >&6; } +if test "${gl_cv_func_link_follows_symlink+set}" = set; then $as_echo_n "(cached) " >&6 else + + # Create a regular file. + echo > conftest.file + if test "$cross_compiling" = yes; then + gl_cv_func_link_follows_symlink=unknown +else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include -int a = ERA; + +# include +# include +# include +# include + +# define SAME_INODE(Stat_buf_1, Stat_buf_2) \ + ((Stat_buf_1).st_ino == (Stat_buf_2).st_ino \ + && (Stat_buf_1).st_dev == (Stat_buf_2).st_dev) + + int + main () + { + const char *file = "conftest.file"; + const char *sym = "conftest.sym"; + const char *hard = "conftest.hard"; + struct stat sb_file, sb_hard; + + /* Create a symlink to the regular file. */ + if (symlink (file, sym)) + return 2; + + /* Create a hard link to that symlink. */ + if (link (sym, hard)) + return 3; + + if (lstat (hard, &sb_hard)) + return 4; + if (lstat (file, &sb_file)) + return 5; + + /* If the dev/inode of hard and file are the same, then + the link call followed the symlink. */ + return SAME_INODE (sb_hard, sb_file) ? 1 : 0; + } + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_link_follows_symlink=no +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) + gl_cv_func_link_follows_symlink=yes +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + rm -f conftest.file conftest.sym conftest.hard + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_link_follows_symlink" >&5 +$as_echo "$gl_cv_func_link_follows_symlink" >&6; } + case $gl_cv_func_link_follows_symlink in + yes) gl_link_follows_symlinks=1 ;; + no) ;; # already defaulted to 0 + *) gl_link_follows_symlinks=-1 ;; + esac + fi + +cat >>confdefs.h <<_ACEOF +#define LINK_FOLLOWS_SYMLINKS $gl_link_follows_symlinks +_ACEOF + + + # Code from module linkat: + + + + + + + + + + + + + + + + + + + + + if test $ac_cv_func_linkat = no; then + HAVE_LINKAT=0 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS linkat.$ac_objext" + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS at-func2.$ac_objext" + + else + { $as_echo "$as_me:$LINENO: checking whether linkat(,AT_SYMLINK_FOLLOW) works" >&5 +$as_echo_n "checking whether linkat(,AT_SYMLINK_FOLLOW) works... " >&6; } +if test "${gl_cv_func_linkat_follow+set}" = set; then + $as_echo_n "(cached) " >&6 +else + rm -rf conftest.f1 conftest.f2 + touch conftest.f1 + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#ifdef __linux__ +/* Linux added linkat in 2.6.16, but did not add AT_SYMLINK_FOLLOW + until 2.6.18. Always replace linkat to support older kernels. */ +choke me +#endif int main () { - +return linkat (AT_FDCWD, "conftest.f1", AT_FDCWD, "conftest.f2", + AT_SYMLINK_FOLLOW); ; return 0; } @@ -30653,37 +32418,32 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - gl_cv_header_langinfo_era=yes + gl_cv_func_linkat_follow=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_header_langinfo_era=no + gl_cv_func_linkat_follow="need runtime check" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - + rm -rf conftest.f1 conftest.f2 fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_header_langinfo_era" >&5 -$as_echo "$gl_cv_header_langinfo_era" >&6; } - if test $gl_cv_header_langinfo_era = yes; then - HAVE_LANGINFO_ERA=1 - fi - else - HAVE_LANGINFO_H=0 - fi - - - - - - - for gl_func in nl_langinfo; do - as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` - { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 -$as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } -if { as_var=$as_gl_Symbol; eval "test \"\${$as_var+set}\" = set"; }; then +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_linkat_follow" >&5 +$as_echo "$gl_cv_func_linkat_follow" >&6; } + { $as_echo "$as_me:$LINENO: checking whether linkat handles trailing slash correctly" >&5 +$as_echo_n "checking whether linkat handles trailing slash correctly... " >&6; } +if test "${gl_cv_func_linkat_slash+set}" = set; then $as_echo_n "(cached) " >&6 +else + rm -rf conftest.a conftest.b conftest.c conftest.d + if test "$cross_compiling" = yes; then + # Guess yes on glibc systems, no otherwise. + case "$host_os" in + *-gnu*) gl_cv_func_linkat_slash="guessing yes";; + *) gl_cv_func_linkat_slash="guessing no";; + esac + else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -30691,213 +32451,122 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include + #include + #include + #include int main () { -#undef $gl_func - (void) $gl_func; +int fd; + int err; + int ret; + /* Create a regular file. */ + fd = open ("conftest.a", O_CREAT | O_EXCL | O_WRONLY, 0600); + if (fd < 0) + return 1; + if (write (fd, "hello", 5) < 5) + return 2; + if (close (fd) < 0) + return 3; + /* Test whether hard links are supported on the current + device. */ + if (linkat (AT_FDCWD, "conftest.a", AT_FDCWD, "conftest.b", + AT_SYMLINK_FOLLOW) < 0) + return 0; + /* Test whether a trailing "/" is treated like "/.". */ + if (linkat (AT_FDCWD, "conftest.a/", AT_FDCWD, "conftest.c", + AT_SYMLINK_FOLLOW) == 0) + return 4; + if (linkat (AT_FDCWD, "conftest.a", AT_FDCWD, "conftest.d/", + AT_SYMLINK_FOLLOW) == 0) + return 5; + return 0; + ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - eval "$as_gl_Symbol=yes" -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_gl_Symbol=no" -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -ac_res=`eval 'as_val=${'$as_gl_Symbol'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - as_val=`eval 'as_val=${'$as_gl_Symbol'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1 -_ACEOF - - eval ac_cv_have_decl_$gl_func=yes -fi - - done - - - - - - - - - - - - - - - - - - - - -for ac_func in lchown -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif - -int -main () -{ -return $ac_func (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_try") 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" + (exit $ac_status); }; }; then + gl_cv_func_linkat_slash=yes else - $as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_ac_var=no" +( exit $ac_status ) +gl_cv_func_linkat_slash=no fi - rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF -else - - gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" + rm -rf conftest.a conftest.b conftest.c conftest.d fi -done +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_linkat_slash" >&5 +$as_echo "$gl_cv_func_linkat_slash" >&6; } + case "$gl_cv_func_linkat_slash" in + *yes) gl_linkat_slash_bug=0 ;; + *) gl_linkat_slash_bug=1 ;; + esac + if test "$gl_cv_func_linkat_follow" != yes \ + || test $gl_linkat_slash_bug = 1; then + REPLACE_LINKAT=1 - if test $ac_cv_func_lchown = no; then - HAVE_LCHOWN=0 - elif test "$gl_cv_func_chown_slash_works" != yes \ - || test "$gl_cv_func_chown_ctime_works" != yes; then + gl_LIBOBJS="$gl_LIBOBJS linkat.$ac_objext" - gl_LIBOBJS="$gl_LIBOBJS lchown.$ac_objext" +cat >>confdefs.h <<_ACEOF +#define LINKAT_TRAILING_SLASH_BUG $gl_linkat_slash_bug +_ACEOF - REPLACE_LCHOWN=1 + fi fi - GNULIB_LCHOWN=1 + + GNULIB_LINKAT=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_LCHOWN 1 +#define GNULIB_TEST_LINKAT 1 _ACEOF + # Code from module localcharset: @@ -30911,6 +32580,7 @@ _ACEOF LOCALCHARSET_TESTS_ENVIRONMENT="CHARSETALIASDIR=\"\$(top_builddir)/$gl_source_base\"" + # Code from module lseek: @@ -30921,14 +32591,24 @@ if test "${gl_cv_func_lseek_pipe+set}" = set; then else if test $cross_compiling = no; then cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #include /* for off_t */ #include /* for SEEK_CUR */ #include -int main () +int +main () { + /* Exit with success only if stdin is seekable. */ return lseek (0, (off_t)0, SEEK_CUR) < 0; + + ; + return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext @@ -30972,6 +32652,11 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext else cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ #if ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) || defined __BEOS__ /* mingw and BeOS mistakenly return 0 when trying to seek on pipes. */ @@ -31033,15 +32718,18 @@ _ACEOF + GNULIB_LSEEK=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_LSEEK 1 +#define GNULIB_TEST_LSEEK 1 _ACEOF + # Code from module lstat: @@ -31063,15 +32751,20 @@ _ACEOF + GNULIB_LSTAT=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_LSTAT 1 +#define GNULIB_TEST_LSTAT 1 _ACEOF + # Code from module malloc-gnu: + + for ac_header in stdlib.h do @@ -31293,12 +32986,12 @@ $as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } if test $ac_cv_func_malloc_0_nonnull = yes; then cat >>confdefs.h <<\_ACEOF -#define HAVE_MALLOC 1 +#define HAVE_MALLOC_GNU 1 _ACEOF else cat >>confdefs.h <<\_ACEOF -#define HAVE_MALLOC 0 +#define HAVE_MALLOC_GNU 0 _ACEOF @@ -31309,26 +33002,28 @@ _ACEOF + gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" + REPLACE_MALLOC=1 -cat >>confdefs.h <<\_ACEOF -#define malloc rpl_malloc -_ACEOF fi -cat >>confdefs.h <<\_ACEOF + +cat >>confdefs.h <<_ACEOF #define GNULIB_MALLOC_GNU 1 _ACEOF + # Code from module malloc-posix: + + if test $gl_cv_func_malloc_posix = yes; then - HAVE_MALLOC_POSIX=1 cat >>confdefs.h <<\_ACEOF #define HAVE_MALLOC_POSIX 1 @@ -31343,9 +33038,11 @@ _ACEOF + gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" - HAVE_MALLOC_POSIX=0 + REPLACE_MALLOC=1 + fi @@ -31354,20 +33051,24 @@ _ACEOF GNULIB_MALLOC_POSIX=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MALLOC_POSIX 1 +#define GNULIB_TEST_MALLOC_POSIX 1 _ACEOF + # Code from module malloca: + # Code from module mbchar: + # Code from module mbrtowc: @@ -31399,10 +33100,10 @@ if test "${gl_cv_func_mbrtowc_incomplete_state+set}" = set; then else case "$host_os" in - # Guess no on AIX and OSF/1. - osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; + # Guess no on AIX and OSF/1. + aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; esac if test $LOCALE_JA != none; then if test "$cross_compiling" = yes; then @@ -31585,9 +33286,7 @@ $as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } fi - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBRTOWC=1 - fi + @@ -31596,8 +33295,10 @@ $as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } if test $ac_cv_func_mbrtowc = no; then HAVE_MBRTOWC=0 - fi - if test $HAVE_MBRTOWC != 0 && test $REPLACE_MBRTOWC != 1; then + else + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_MBRTOWC=1 + else @@ -31880,36 +33581,37 @@ fi { $as_echo "$as_me:$LINENO: result: $gl_cv_func_mbrtowc_nul_retval" >&5 $as_echo "$gl_cv_func_mbrtowc_nul_retval" >&6; } - case "$gl_cv_func_mbrtowc_null_arg" in - *yes) ;; - *) + case "$gl_cv_func_mbrtowc_null_arg" in + *yes) ;; + *) cat >>confdefs.h <<\_ACEOF #define MBRTOWC_NULL_ARG_BUG 1 _ACEOF - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_retval" in - *yes) ;; - *) + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_retval" in + *yes) ;; + *) cat >>confdefs.h <<\_ACEOF #define MBRTOWC_RETVAL_BUG 1 _ACEOF - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_nul_retval" in - *yes) ;; - *) + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_nul_retval" in + *yes) ;; + *) cat >>confdefs.h <<\_ACEOF #define MBRTOWC_NUL_RETVAL_BUG 1 _ACEOF - REPLACE_MBRTOWC=1 - ;; - esac + REPLACE_MBRTOWC=1 + ;; + esac + fi fi if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then @@ -31932,26 +33634,32 @@ _ACEOF + GNULIB_MBRTOWC=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MBRTOWC 1 +#define GNULIB_TEST_MBRTOWC 1 _ACEOF + # Code from module mbscasecmp: + GNULIB_MBSCASECMP=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MBSCASECMP 1 +#define GNULIB_TEST_MBSCASECMP 1 _ACEOF + # Code from module mbsinit: @@ -31983,10 +33691,10 @@ if test "${gl_cv_func_mbrtowc_incomplete_state+set}" = set; then else case "$host_os" in - # Guess no on AIX and OSF/1. - osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; + # Guess no on AIX and OSF/1. + aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; esac if test $LOCALE_JA != none; then if test "$cross_compiling" = yes; then @@ -32169,9 +33877,7 @@ $as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } fi - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBSINIT=1 - fi + @@ -32180,6 +33886,10 @@ $as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } if test $ac_cv_func_mbsinit = no; then HAVE_MBSINIT=0 + else + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_MBSINIT=1 + fi fi if test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1; then @@ -32202,15 +33912,18 @@ $as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } + GNULIB_MBSINIT=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MBSINIT 1 +#define GNULIB_TEST_MBSINIT 1 _ACEOF + # Code from module mbsrtowcs: @@ -32242,10 +33955,10 @@ if test "${gl_cv_func_mbrtowc_incomplete_state+set}" = set; then else case "$host_os" in - # Guess no on AIX and OSF/1. - osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; + # Guess no on AIX and OSF/1. + aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; esac if test $LOCALE_JA != none; then if test "$cross_compiling" = yes; then @@ -32428,9 +34141,7 @@ $as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } fi - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBSRTOWCS=1 - fi + @@ -32439,8 +34150,10 @@ $as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } if test $ac_cv_func_mbsrtowcs = no; then HAVE_MBSRTOWCS=0 - fi - if test $HAVE_MBSRTOWCS != 0 && test $REPLACE_MBSRTOWCS != 1; then + else + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_MBSRTOWCS=1 + else @@ -32563,10 +34276,11 @@ fi { $as_echo "$as_me:$LINENO: result: $gl_cv_func_mbsrtowcs_works" >&5 $as_echo "$gl_cv_func_mbsrtowcs_works" >&6; } - case "$gl_cv_func_mbsrtowcs_works" in - *yes) ;; - *) REPLACE_MBSRTOWCS=1 ;; - esac + case "$gl_cv_func_mbsrtowcs_works" in + *yes) ;; + *) REPLACE_MBSRTOWCS=1 ;; + esac + fi fi if test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1; then @@ -32599,33 +34313,40 @@ $as_echo "$gl_cv_func_mbsrtowcs_works" >&6; } + GNULIB_MBSRTOWCS=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MBSRTOWCS 1 +#define GNULIB_TEST_MBSRTOWCS 1 _ACEOF + # Code from module mbuiter: : + # Code from module memchr: + GNULIB_MEMCHR=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MEMCHR 1 +#define GNULIB_TEST_MEMCHR 1 _ACEOF + # Code from module mempcpy: @@ -32755,15 +34476,18 @@ done + GNULIB_MEMPCPY=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MEMPCPY 1 +#define GNULIB_TEST_MEMPCPY 1 _ACEOF + # Code from module memrchr: @@ -32896,15 +34620,18 @@ done + GNULIB_MEMRCHR=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MEMRCHR 1 +#define GNULIB_TEST_MEMRCHR 1 _ACEOF + # Code from module mkdir: @@ -33083,6 +34810,7 @@ _ACEOF fi + # Code from module mkdtemp: @@ -33142,12 +34870,333 @@ choke me int main () { -return $ac_func (); +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + + gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" + +fi +done + + + if test $ac_cv_func_mkdtemp = no; then + HAVE_MKDTEMP=0 + : + + fi + + + + + GNULIB_MKDTEMP=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_MKDTEMP 1 +_ACEOF + + + + # Code from module mkfifo: + + + + + + + + + if test $ac_cv_func_mkfifo = no; then + HAVE_MKFIFO=0 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS mkfifo.$ac_objext" + + else + + + + + + + { $as_echo "$as_me:$LINENO: checking whether mkfifo rejects trailing slashes" >&5 +$as_echo_n "checking whether mkfifo rejects trailing slashes... " >&6; } +if test "${gl_cv_func_mkfifo_works+set}" = set; then + $as_echo_n "(cached) " >&6 +else + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.tmp conftest.lnk + fi + if test "$cross_compiling" = yes; then + gl_cv_func_mkfifo_works="guessing no" +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +if (!mkfifo ("conftest.tmp/", 0600)) return 1; +#if HAVE_LSTAT + if (!mkfifo ("conftest.lnk/", 0600)) return 2; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_mkfifo_works=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_mkfifo_works=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + rm -f conftest.tmp conftest.lnk +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_mkfifo_works" >&5 +$as_echo "$gl_cv_func_mkfifo_works" >&6; } + if test "$gl_cv_func_mkfifo_works" != yes; then + +cat >>confdefs.h <<\_ACEOF +#define MKFIFO_TRAILING_SLASH_BUG 1 +_ACEOF + + REPLACE_MKFIFO=1 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS mkfifo.$ac_objext" + + fi + fi + + + + + GNULIB_MKFIFO=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_MKFIFO 1 +_ACEOF + + + + # Code from module mkfifoat: + + + + + + + + + + + + + if test $ac_cv_func_mkfifoat = no; then + # No known system has mkfifoat but not mknodat + HAVE_MKFIFOAT=0 + HAVE_MKNODAT=0 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS mkfifoat.$ac_objext" + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS mknodat.$ac_objext" + + fi + + + + + GNULIB_MKFIFOAT=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_MKFIFOAT 1 +_ACEOF + + + + + + + GNULIB_MKNODAT=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_MKNODAT 1 +_ACEOF + + + + # Code from module mknod: + + + + + + + + + + + if test $ac_cv_func_mknod = no; then + HAVE_MKNOD=0 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS mknod.$ac_objext" + + else + { $as_echo "$as_me:$LINENO: checking whether mknod can create fifo without root privileges" >&5 +$as_echo_n "checking whether mknod can create fifo without root privileges... " >&6; } +if test "${gl_cv_func_mknod_works+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + gl_cv_func_mknod_works="guessing no" +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + #include + +int +main () +{ +/* Indeterminate for super-user, assume no. Why are you running + configure as root, anyway? */ + if (!geteuid ()) return 99; + if (mknod ("conftest.fifo", S_IFIFO | 0600, 0)) return 2; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext +rm -f conftest$ac_exeext if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; @@ -33155,67 +35204,83 @@ case "(($ac_try" in esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_link") 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_mknod_works=yes else - $as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_ac_var=no" +( exit $ac_status ) +if test $? == 99 && test x"$FORCE_UNSAFE_CONFIGURE" = x; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: you should not run configure as root (set FORCE_UNSAFE_CONFIGURE=1 in environment to bypass this check) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: you should not run configure as root (set FORCE_UNSAFE_CONFIGURE=1 in environment to bypass this check) +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; }; } + fi + gl_cv_func_mknod_works=no fi - rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 + + + rm -f conftest.fifo +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_mknod_works" >&5 +$as_echo "$gl_cv_func_mknod_works" >&6; } + if test "$gl_cv_func_mknod_works" != yes; then + +cat >>confdefs.h <<\_ACEOF +#define MKNOD_FIFO_BUG 1 _ACEOF -else + fi + if test $REPLACE_MKFIFO = 1 || test "$gl_cv_func_mknod_works" != yes; then + REPLACE_MKNOD=1 + + + - gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" -fi -done - if test $ac_cv_func_mkdtemp = no; then - HAVE_MKDTEMP=0 - : + gl_LIBOBJS="$gl_LIBOBJS mknod.$ac_objext" + + fi fi - GNULIB_MKDTEMP=1 + + GNULIB_MKNOD=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MKDTEMP 1 +#define GNULIB_TEST_MKNOD 1 _ACEOF + # Code from module mktime: @@ -33496,15 +35561,18 @@ fi + GNULIB_MKTIME=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_MKTIME 1 +#define GNULIB_TEST_MKTIME 1 _ACEOF + # Code from module modechange: @@ -33517,60 +35585,534 @@ _ACEOF gl_LIBOBJS="$gl_LIBOBJS modechange.$ac_objext" + # Code from module multiarch: + + # Code from module nl_langinfo: + + + + + + + + + + if test $ac_cv_func_nl_langinfo = yes; then + if test $HAVE_LANGINFO_CODESET = 1 && test $HAVE_LANGINFO_ERA = 1; then + : + else + REPLACE_NL_LANGINFO=1 + +cat >>confdefs.h <<\_ACEOF +#define REPLACE_NL_LANGINFO 1 +_ACEOF + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS nl_langinfo.$ac_objext" + + fi + else + HAVE_NL_LANGINFO=0 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS nl_langinfo.$ac_objext" + + fi + + + + + GNULIB_NL_LANGINFO=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_NL_LANGINFO 1 +_ACEOF + + + + # Code from module obstack: + + + + + + + + + + + + +{ $as_echo "$as_me:$LINENO: checking for obstacks" >&5 +$as_echo_n "checking for obstacks... " >&6; } +if test "${ac_cv_func_obstack+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default + #include "obstack.h" +int +main () +{ +struct obstack mem; + #define obstack_chunk_alloc malloc + #define obstack_chunk_free free + obstack_init (&mem); + obstack_free (&mem, 0); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_obstack=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_obstack=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_obstack" >&5 +$as_echo "$ac_cv_func_obstack" >&6; } +if test $ac_cv_func_obstack = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_OBSTACK 1 +_ACEOF + +else + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS obstack.$ac_objext" + +fi + + # Code from module open: + + + case "$host_os" in + mingw* | pw*) + + + REPLACE_OPEN=1 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS open.$ac_objext" + + + + + : + + + ;; + *) + + + + + + + { $as_echo "$as_me:$LINENO: checking whether open recognizes a trailing slash" >&5 +$as_echo_n "checking whether open recognizes a trailing slash... " >&6; } +if test "${gl_cv_func_open_slash+set}" = set; then + $as_echo_n "(cached) " >&6 +else + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + touch conftest.tmp + ln -s conftest.tmp conftest.lnk + fi + if test "$cross_compiling" = yes; then + + case "$host_os" in + freebsd* | aix* | hpux* | solaris2.[0-9]*) + gl_cv_func_open_slash="guessing no" ;; + *) + gl_cv_func_open_slash="guessing yes" ;; + esac + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#if HAVE_UNISTD_H +# include +#endif +int main () +{ +#if HAVE_LSTAT + if (open ("conftest.lnk/", O_RDONLY) != -1) return 2; +#endif + return open ("conftest.sl/", O_CREAT, 0600) >= 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_open_slash=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_open_slash=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + rm -f conftest.sl conftest.tmp conftest.lnk + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_open_slash" >&5 +$as_echo "$gl_cv_func_open_slash" >&6; } + case "$gl_cv_func_open_slash" in + *no) + +cat >>confdefs.h <<\_ACEOF +#define OPEN_TRAILING_SLASH_BUG 1 +_ACEOF + + + + REPLACE_OPEN=1 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS open.$ac_objext" + + + + + : + + + ;; + esac + ;; + esac + + + + + GNULIB_OPEN=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_OPEN 1 +_ACEOF + + + + # Code from module openat: + + + GNULIB_OPENAT=1 + + + GNULIB_FCHMODAT=1 + GNULIB_FSTATAT=1 + GNULIB_MKDIRAT=1 + + + GNULIB_FCHOWNAT=1 + GNULIB_UNLINKAT=1 + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS openat-proc.$ac_objext" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +for ac_func in fchmodat fstatat mkdirat openat unlinkat +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + eval "$as_ac_var=no" +fi +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF +else + gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" +fi +done + case $ac_cv_func_openat+$ac_cv_func_lstat_dereferences_slashed_symlink in + yes+yes) + # GNU/Hurd has unlinkat, but it has the same bug as unlink. + if test $REPLACE_UNLINK = 1; then - if test $ac_cv_func_nl_langinfo = yes; then - if test $HAVE_LANGINFO_CODESET = 1 && test $HAVE_LANGINFO_ERA = 1; then - : - else - REPLACE_NL_LANGINFO=1 -cat >>confdefs.h <<\_ACEOF -#define REPLACE_NL_LANGINFO 1 -_ACEOF + gl_LIBOBJS="$gl_LIBOBJS unlinkat.$ac_objext" + REPLACE_UNLINKAT=1 + fi ;; + yes+*) + # Solaris 9 has *at functions, but uniformly mishandles trailing + # slash in all of them. - gl_LIBOBJS="$gl_LIBOBJS nl_langinfo.$ac_objext" - fi - else - HAVE_NL_LANGINFO=0 + gl_LIBOBJS="$gl_LIBOBJS openat.$ac_objext" + REPLACE_OPENAT=1 - gl_LIBOBJS="$gl_LIBOBJS nl_langinfo.$ac_objext" - fi - GNULIB_NL_LANGINFO=1 -cat >>confdefs.h <<\_ACEOF -#define GNULIB_NL_LANGINFO 1 -_ACEOF + gl_LIBOBJS="$gl_LIBOBJS fstatat.$ac_objext" + REPLACE_FSTATAT=1 @@ -33579,15 +36121,31 @@ _ACEOF + gl_LIBOBJS="$gl_LIBOBJS unlinkat.$ac_objext" + REPLACE_UNLINKAT=1 + ;; + *) + HAVE_OPENAT=0 + HAVE_UNLINKAT=0 # No known system with unlinkat but not openat + HAVE_FSTATAT=0 # No known system with fstatat but not openat + : +;; + esac + if test $ac_cv_func_fchmodat != yes; then + HAVE_FCHMODAT=0 + fi + if test $ac_cv_func_mkdirat != yes; then + HAVE_MKDIRAT=0 + fi -{ $as_echo "$as_me:$LINENO: checking for obstacks" >&5 -$as_echo_n "checking for obstacks... " >&6; } -if test "${ac_cv_func_obstack+set}" = set; then + { $as_echo "$as_me:$LINENO: checking for fchownat" >&5 +$as_echo_n "checking for fchownat... " >&6; } +if test "${ac_cv_func_fchownat+set}" = set; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -33596,16 +36154,41 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_includes_default - #include "obstack.h" +/* Define fchownat to an innocuous variant, in case declares fchownat. + For example, HP-UX 11i declares gettimeofday. */ +#define fchownat innocuous_fchownat + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char fchownat (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef fchownat + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char fchownat (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_fchownat || defined __stub___fchownat +choke me +#endif + int main () { -struct obstack mem; - #define obstack_chunk_alloc malloc - #define obstack_chunk_free free - obstack_init (&mem); - obstack_free (&mem, 0); +return fchownat (); ; return 0; } @@ -33631,89 +36214,36 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - ac_cv_func_obstack=yes + ac_cv_func_fchownat=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_cv_func_obstack=no + ac_cv_func_fchownat=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_obstack" >&5 -$as_echo "$ac_cv_func_obstack" >&6; } -if test $ac_cv_func_obstack = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_OBSTACK 1 -_ACEOF - -else - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS obstack.$ac_objext" - -fi - - - - case "$host_os" in - mingw* | pw*) - - - REPLACE_OPEN=1 - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS open.$ac_objext" - - - - - : - - - ;; - *) - - - - - +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_fchownat" >&5 +$as_echo "$ac_cv_func_fchownat" >&6; } +if test "x$ac_cv_func_fchownat" = x""yes; then - { $as_echo "$as_me:$LINENO: checking whether open recognizes a trailing slash" >&5 -$as_echo_n "checking whether open recognizes a trailing slash... " >&6; } -if test "${gl_cv_func_open_slash+set}" = set; then + { $as_echo "$as_me:$LINENO: checking whether fchownat works with AT_SYMLINK_NOFOLLOW" >&5 +$as_echo_n "checking whether fchownat works with AT_SYMLINK_NOFOLLOW... " >&6; } +if test "${gl_cv_func_fchownat_nofollow_works+set}" = set; then $as_echo_n "(cached) " >&6 else - # Assume that if we have lstat, we can also check symlinks. - if test $ac_cv_func_lstat = yes; then - touch conftest.tmp - ln -s conftest.tmp conftest.lnk - fi - if test "$cross_compiling" = yes; then - - case "$host_os" in - freebsd*) gl_cv_func_open_slash="guessing no" ;; - solaris2.[0-9]*) gl_cv_func_open_slash="guessing no" ;; - hpux*) gl_cv_func_open_slash="guessing no" ;; - *) gl_cv_func_open_slash="guessing yes" ;; - esac + gl_dangle=conftest.dangle + # Remove any remnants of a previous test. + rm -f $gl_dangle + # Arrange for deletion of the temporary file this test creates. + ac_clean_files="$ac_clean_files $gl_dangle" + ln -s conftest.no-such $gl_dangle + if test "$cross_compiling" = yes; then + gl_cv_func_fchownat_nofollow_works=no else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -33723,16 +36253,18 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include -#if HAVE_UNISTD_H -# include -#endif -int main () +#include +#include +#include +#include +int +main () { -#if HAVE_LSTAT - if (open ("conftest.lnk/", O_RDONLY) != -1) return 2; -#endif - return open ("conftest.sl/", O_CREAT, 0600) >= 0; + return (fchownat (AT_FDCWD, "$gl_dangle", -1, getgid (), + AT_SYMLINK_NOFOLLOW) != 0 + && errno == ENOENT); } + _ACEOF rm -f conftest$ac_exeext if { (ac_try="$ac_link" @@ -33756,151 +36288,254 @@ $as_echo "$ac_try_echo") >&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - gl_cv_func_open_slash=yes + gl_cv_func_fchownat_nofollow_works=yes else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -gl_cv_func_open_slash=no +gl_cv_func_fchownat_nofollow_works=no fi rm -rf conftest.dSYM rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi - rm -f conftest.sl conftest.tmp conftest.lnk fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_open_slash" >&5 -$as_echo "$gl_cv_func_open_slash" >&6; } - case "$gl_cv_func_open_slash" in - *no) +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_fchownat_nofollow_works" >&5 +$as_echo "$gl_cv_func_fchownat_nofollow_works" >&6; } + if test $gl_cv_func_fchownat_nofollow_works = no; then + REPLACE_FCHOWNAT=1 cat >>confdefs.h <<\_ACEOF -#define OPEN_TRAILING_SLASH_BUG 1 +#define FCHOWNAT_NOFOLLOW_BUG 1 _ACEOF - - REPLACE_OPEN=1 - - - +fi + if test $REPLACE_CHOWN = 1; then + REPLACE_FCHOWNAT=1 + fi +else + HAVE_FCHOWNAT=0 +fi + if test $HAVE_FCHOWNAT = 0 || test $REPLACE_FCHOWNAT = 1; then - gl_LIBOBJS="$gl_LIBOBJS open.$ac_objext" - : - ;; - esac - ;; - esac + gl_LIBOBJS="$gl_LIBOBJS fchownat.$ac_objext" + fi -cat >>confdefs.h <<\_ACEOF -#define GNULIB_OPEN 1 -_ACEOF + # Code from module openat-die: + # Code from module parse-datetime: - GNULIB_OPEN=1 -cat >>confdefs.h <<\_ACEOF -#define GNULIB_OPEN 1 + { $as_echo "$as_me:$LINENO: checking for struct tm.tm_zone" >&5 +$as_echo_n "checking for struct tm.tm_zone... " >&6; } +if test "${ac_cv_member_struct_tm_tm_zone+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ _ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include <$ac_cv_struct_tm> +int +main () +{ +static struct tm ac_aggr; +if (ac_aggr.tm_zone) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_tm_tm_zone=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include <$ac_cv_struct_tm> - GNULIB_OPENAT=1 - - - GNULIB_FCHMODAT=1 - GNULIB_FSTATAT=1 - GNULIB_MKDIRAT=1 - - - GNULIB_FCHOWNAT=1 - GNULIB_UNLINKAT=1 - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS openat-proc.$ac_objext" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +int +main () +{ +static struct tm ac_aggr; +if (sizeof ac_aggr.tm_zone) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_tm_tm_zone=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_member_struct_tm_tm_zone=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_tm_tm_zone" >&5 +$as_echo "$ac_cv_member_struct_tm_tm_zone" >&6; } +if test "x$ac_cv_member_struct_tm_tm_zone" = x""yes; then +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_TM_TM_ZONE 1 +_ACEOF +fi +if test "$ac_cv_member_struct_tm_tm_zone" = yes; then +cat >>confdefs.h <<\_ACEOF +#define HAVE_TM_ZONE 1 +_ACEOF +else + { $as_echo "$as_me:$LINENO: checking whether tzname is declared" >&5 +$as_echo_n "checking whether tzname is declared... " >&6; } +if test "${ac_cv_have_decl_tzname+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +#ifndef tzname + (void) tzname; +#endif + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_tzname=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_have_decl_tzname=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_tzname" >&5 +$as_echo "$ac_cv_have_decl_tzname" >&6; } +if test "x$ac_cv_have_decl_tzname" = x""yes; then +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_TZNAME 1 +_ACEOF +else + cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_TZNAME 0 +_ACEOF +fi -for ac_func in fchmodat fstatat mkdirat openat unlinkat -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for tzname" >&5 +$as_echo_n "checking for tzname... " >&6; } +if test "${ac_cv_var_tzname+set}" = set; then $as_echo_n "(cached) " >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -33909,41 +36544,15 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me +#include +#if !HAVE_DECL_TZNAME +extern char *tzname[]; #endif int main () { -return $ac_func (); +return tzname[0][0]; ; return 0; } @@ -33969,169 +36578,57 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - eval "$as_ac_var=yes" + ac_cv_var_tzname=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_ac_var=no" + ac_cv_var_tzname=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -else +{ $as_echo "$as_me:$LINENO: result: $ac_cv_var_tzname" >&5 +$as_echo "$ac_cv_var_tzname" >&6; } + if test $ac_cv_var_tzname = yes; then - gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" +cat >>confdefs.h <<\_ACEOF +#define HAVE_TZNAME 1 +_ACEOF + fi fi -done - - - - - case $ac_cv_func_openat+$ac_cv_func_lstat_dereferences_slashed_symlink in - yes+yes) - # GNU/Hurd has unlinkat, but it has the same bug as unlink. - if test $REPLACE_UNLINK = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS unlinkat.$ac_objext" - - REPLACE_UNLINKAT=1 - fi ;; - yes+*) - # Solaris 9 has *at functions, but uniformly mishandles trailing - # slash in all of them. - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS openat.$ac_objext" - - REPLACE_OPENAT=1 - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS fstatat.$ac_objext" - - REPLACE_FSTATAT=1 - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS unlinkat.$ac_objext" - - REPLACE_UNLINKAT=1 - ;; - *) - HAVE_OPENAT=0 - HAVE_UNLINKAT=0 # No known system with unlinkat but not openat - HAVE_FSTATAT=0 # No known system with fstatat but not openat - - - : -;; - esac - if test $ac_cv_func_fchmodat != yes; then - HAVE_FCHMODAT=0 - fi - if test $ac_cv_func_mkdirat != yes; then - HAVE_MKDIRAT=0 - fi - { $as_echo "$as_me:$LINENO: checking for fchownat" >&5 -$as_echo_n "checking for fchownat... " >&6; } -if test "${ac_cv_func_fchownat+set}" = set; then - $as_echo_n "(cached) " >&6 -else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define fchownat to an innocuous variant, in case declares fchownat. - For example, HP-UX 11i declares gettimeofday. */ -#define fchownat innocuous_fchownat - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char fchownat (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef fchownat - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char fchownat (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_fchownat || defined __stub___fchownat -choke me -#endif +#include /* for time_t */ +#include /* for CHAR_BIT, LONG_MIN, LONG_MAX */ +#define TYPE_MINIMUM(t) \ + ((t) ((t) 0 < (t) -1 ? (t) 0 : ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1))) +#define TYPE_MAXIMUM(t) \ + ((t) ((t) 0 < (t) -1 ? (t) -1 : ~ (~ (t) 0 << (sizeof (t) * CHAR_BIT - 1)))) +typedef int verify_min[2 * (LONG_MIN <= TYPE_MINIMUM (time_t)) - 1]; +typedef int verify_max[2 * (TYPE_MAXIMUM (time_t) <= LONG_MAX) - 1]; -int -main () -{ -return fchownat (); - ; - return 0; -} _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -34140,133 +36637,23 @@ $as_echo "$ac_try_echo") >&5 (exit $ac_status); } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - ac_cv_func_fchownat=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_func_fchownat=no -fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_fchownat" >&5 -$as_echo "$ac_cv_func_fchownat" >&6; } -if test "x$ac_cv_func_fchownat" = x""yes; then - - { $as_echo "$as_me:$LINENO: checking whether fchownat works with AT_SYMLINK_NOFOLLOW" >&5 -$as_echo_n "checking whether fchownat works with AT_SYMLINK_NOFOLLOW... " >&6; } -if test "${gl_cv_func_fchownat_nofollow_works+set}" = set; then - $as_echo_n "(cached) " >&6 -else + } && test -s conftest.$ac_objext; then - gl_dangle=conftest.dangle - # Remove any remnants of a previous test. - rm -f $gl_dangle - # Arrange for deletion of the temporary file this test creates. - ac_clean_files="$ac_clean_files $gl_dangle" - ln -s conftest.no-such $gl_dangle - if test "$cross_compiling" = yes; then - gl_cv_func_fchownat_nofollow_works=no -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ +cat >>confdefs.h <<\_ACEOF +#define TIME_T_FITS_IN_LONG_INT 1 _ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -#include -int -main () -{ - return (fchownat (AT_FDCWD, "$gl_dangle", -1, getgid (), - AT_SYMLINK_NOFOLLOW) != 0 - && errno == ENOENT); -} -_ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gl_cv_func_fchownat_nofollow_works=yes else - $as_echo "$as_me: program exited with status $ac_status" >&5 -$as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -( exit $ac_status ) -gl_cv_func_fchownat_nofollow_works=no -fi -rm -rf conftest.dSYM -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - - -fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_fchownat_nofollow_works" >&5 -$as_echo "$gl_cv_func_fchownat_nofollow_works" >&6; } - if test $gl_cv_func_fchownat_nofollow_works = no; then - REPLACE_FCHOWNAT=1 - -cat >>confdefs.h <<\_ACEOF -#define FCHOWNAT_NOFOLLOW_BUG 1 -_ACEOF - -fi - - -else - HAVE_FCHOWNAT=0 fi - if test $REPLACE_CHOWN = 1; then - REPLACE_FCHOWNAT=1 - fi - if test $HAVE_FCHOWNAT = 0 || test $REPLACE_FCHOWNAT = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS fchownat.$ac_objext" - - fi - +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + # Code from module pathmax: @@ -34281,6 +36668,7 @@ fi + # Code from module priv-set: @@ -34385,6 +36773,13 @@ fi done + + + + + + + # Code from module progname: { $as_echo "$as_me:$LINENO: checking whether program_invocation_name is declared" >&5 $as_echo_n "checking whether program_invocation_name is declared... " >&6; } if test "${ac_cv_have_decl_program_invocation_name+set}" = set; then @@ -34525,6 +36920,7 @@ _ACEOF fi + # Code from module quote: @@ -34538,6 +36934,7 @@ fi + # Code from module quotearg: @@ -34550,6 +36947,8 @@ fi gl_LIBOBJS="$gl_LIBOBJS quotearg.$ac_objext" + # Code from module quotearg-simple: + # Code from module rawmemchr: @@ -34675,15 +37074,18 @@ done + GNULIB_RAWMEMCHR=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_RAWMEMCHR 1 +#define GNULIB_TEST_RAWMEMCHR 1 _ACEOF + # Code from module readlink: @@ -34862,19 +37264,60 @@ _ACEOF + GNULIB_READLINK=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_READLINK 1 +#define GNULIB_TEST_READLINK 1 _ACEOF + # Code from module readlinkat: + + + + + + + + + + + if test $ac_cv_func_readlinkat = no; then + HAVE_READLINKAT=0 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS readlinkat.$ac_objext" + + fi + + + + + GNULIB_READLINKAT=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_READLINKAT 1 +_ACEOF + + + + # Code from module realloc-posix: + if test $gl_cv_func_malloc_posix = yes; then - HAVE_REALLOC_POSIX=1 cat >>confdefs.h <<\_ACEOF #define HAVE_REALLOC_POSIX 1 @@ -34889,9 +37332,11 @@ _ACEOF + gl_LIBOBJS="$gl_LIBOBJS realloc.$ac_objext" - HAVE_REALLOC_POSIX=0 + REPLACE_REALLOC=1 + fi @@ -34900,12 +37345,14 @@ _ACEOF GNULIB_REALLOC_POSIX=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_REALLOC_POSIX 1 +#define GNULIB_TEST_REALLOC_POSIX 1 _ACEOF + # Code from module regex: @@ -35008,8 +37455,9 @@ static struct re_pattern_buffer regex; if (!s) return 1; - /* Ensure that [b-a] is diagnosed as invalid. */ - re_set_syntax (RE_SYNTAX_POSIX_EGREP); + /* Ensure that [b-a] is diagnosed as invalid, when + using RE_NO_EMPTY_RANGES. */ + re_set_syntax (RE_SYNTAX_POSIX_EGREP | RE_NO_EMPTY_RANGES); memset (®ex, 0, sizeof regex); s = re_compile_pattern ("a[b-a]", 6, ®ex); if (s == 0) @@ -35069,12 +37517,17 @@ static struct re_pattern_buffer regex; if (! REG_STARTEND) return 1; - /* Reject hosts whose regoff_t values are too narrow. - These include glibc 2.3.5 on hosts with 64-bit ptrdiff_t - and 32-bit int. */ +#if 0 + /* It would be nice to reject hosts whose regoff_t values are too + narrow (including glibc on hosts with 64-bit ptrdiff_t and + 32-bit int), but we should wait until glibc implements this + feature. Otherwise, support for equivalence classes and + multibyte collation symbols would always be broken except + when compiling --without-included-regex. */ if (sizeof (regoff_t) < sizeof (ptrdiff_t) || sizeof (regoff_t) < sizeof (ssize_t)) return 1; +#endif return 0; ; @@ -35461,6 +37914,7 @@ fi fi + # Code from module rename: @@ -35471,15 +37925,22 @@ fi - - -for ac_func in rmdir -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking whether rename honors trailing slash on destination" >&5 +$as_echo_n "checking whether rename honors trailing slash on destination... " >&6; } +if test "${gl_cv_func_rename_slash_dst_works+set}" = set; then $as_echo_n "(cached) " >&6 +else + rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.lnk + touch conftest.f && mkdir conftest.d1 || + { { $as_echo "$as_me:$LINENO: error: cannot create temporary files" >&5 +$as_echo "$as_me: error: cannot create temporary files" >&2;} + { (exit 1); exit 1; }; } + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.f conftest.lnk + fi + if test "$cross_compiling" = yes; then + gl_cv_func_rename_slash_dst_works="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -35487,46 +37948,24 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif +# include +# include int main () { -return $ac_func (); +if (rename ("conftest.f", "conftest.f1/") == 0) return 1; + if (rename ("conftest.d1", "conftest.d2/") != 0) return 2; +#if HAVE_LSTAT + if (rename ("conftest.f", "conftest.lnk/") == 0) return 3; +#endif + ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext +rm -f conftest$ac_exeext if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; @@ -35534,81 +37973,74 @@ case "(($ac_try" in esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_link") 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_rename_slash_dst_works=yes else - $as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_ac_var=no" +( exit $ac_status ) +gl_cv_func_rename_slash_dst_works=no fi - rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF -else - gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" + rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.lnk fi -done +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_rename_slash_dst_works" >&5 +$as_echo "$gl_cv_func_rename_slash_dst_works" >&6; } + if test "x$gl_cv_func_rename_slash_dst_works" != xyes; then - if test $ac_cv_func_rmdir = no; then - REPLACE_RMDIR=1 - # If someone lacks rmdir, make configure fail, and request - # a bug report to inform us about it. - if test x"$SKIP_RMDIR_CHECK" != xyes; then - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: Your system lacks the rmdir function. - Please report this, along with the output of \"uname -a\", to the - bug-coreutils@gnu.org mailing list. To continue past this point, - rerun configure with SKIP_RMDIR_CHECK=yes. - E.g., ./configure SKIP_RMDIR_CHECK=yes -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: Your system lacks the rmdir function. - Please report this, along with the output of \"uname -a\", to the - bug-coreutils@gnu.org mailing list. To continue past this point, - rerun configure with SKIP_RMDIR_CHECK=yes. - E.g., ./configure SKIP_RMDIR_CHECK=yes -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } - fi - else - { $as_echo "$as_me:$LINENO: checking whether rmdir works" >&5 -$as_echo_n "checking whether rmdir works... " >&6; } -if test "${gl_cv_func_rmdir_works+set}" = set; then + + + + + + + gl_LIBOBJS="$gl_LIBOBJS rename.$ac_objext" + + REPLACE_RENAME=1 + +cat >>confdefs.h <<\_ACEOF +#define RENAME_TRAILING_SLASH_DEST_BUG 1 +_ACEOF + + fi + + { $as_echo "$as_me:$LINENO: checking whether rename honors trailing slash on source" >&5 +$as_echo_n "checking whether rename honors trailing slash on source... " >&6; } +if test "${gl_cv_func_rename_slash_src_works+set}" = set; then $as_echo_n "(cached) " >&6 else - mkdir conftest.dir - touch conftest.file - if test "$cross_compiling" = yes; then - gl_cv_func_rmdir_works="guessing no" + rm -rf conftest.f conftest.d1 conftest.d2 conftest.lnk + touch conftest.f && mkdir conftest.d1 || + { { $as_echo "$as_me:$LINENO: error: cannot create temporary files" >&5 +$as_echo "$as_me: error: cannot create temporary files" >&2;} + { (exit 1); exit 1; }; } + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.f conftest.lnk + fi + if test "$cross_compiling" = yes; then + gl_cv_func_rename_slash_src_works="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -35616,15 +38048,19 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include - #include - #include + +# include +# include int main () { -return !rmdir ("conftest.file/") || errno != ENOTDIR - || !rmdir ("conftest.dir/./"); +if (rename ("conftest.f/", "conftest.d2") == 0) return 1; + if (rename ("conftest.d1/", "conftest.d2") != 0) return 2; +#if HAVE_LSTAT + if (rename ("conftest.lnk/", "conftest.f") == 0) return 3; +#endif + ; return 0; } @@ -35651,70 +38087,54 @@ $as_echo "$ac_try_echo") >&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - gl_cv_func_rmdir_works=yes + gl_cv_func_rename_slash_src_works=yes else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -gl_cv_func_rmdir_works=no +gl_cv_func_rename_slash_src_works=no fi rm -rf conftest.dSYM rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi - rm -rf conftest.dir conftest.file -fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_rmdir_works" >&5 -$as_echo "$gl_cv_func_rmdir_works" >&6; } - if test x"$gl_cv_func_rmdir_works" != xyes; then - REPLACE_RMDIR=1 - - + rm -rf conftest.f conftest.d1 conftest.d2 conftest.lnk +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_rename_slash_src_works" >&5 +$as_echo "$gl_cv_func_rename_slash_src_works" >&6; } + if test "x$gl_cv_func_rename_slash_src_works" != xyes; then - gl_LIBOBJS="$gl_LIBOBJS rmdir.$ac_objext" - - fi - fi - GNULIB_RMDIR=1 + gl_LIBOBJS="$gl_LIBOBJS rename.$ac_objext" + REPLACE_RENAME=1 cat >>confdefs.h <<\_ACEOF -#define GNULIB_RMDIR 1 +#define RENAME_TRAILING_SLASH_SOURCE_BUG 1 _ACEOF + fi - - - - - - - - - - - - - - -for ac_func in rpmatch -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking whether rename manages hard links correctly" >&5 +$as_echo_n "checking whether rename manages hard links correctly... " >&6; } +if test "${gl_cv_func_rename_link_works+set}" = set; then $as_echo_n "(cached) " >&6 +else + rm -rf conftest.f conftest.f1 + if touch conftest.f && ln conftest.f conftest.f1 && + set x `ls -i conftest.f conftest.f1` && test "" = ""; then + if test "$cross_compiling" = yes; then + gl_cv_func_rename_link_works="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -35722,46 +38142,23 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif +# include +# include +# include int main () { -return $ac_func (); +if (rename ("conftest.f", "conftest.f1")) return 1; + if (unlink ("conftest.f1")) return 2; + if (rename ("conftest.f", "conftest.f")) return 3; + if (rename ("conftest.f1", "conftest.f1") == 0) return 4; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext +rm -f conftest$ac_exeext if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; @@ -35769,57 +38166,73 @@ case "(($ac_try" in esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_link") 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_rename_link_works=yes else - $as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_ac_var=no" +( exit $ac_status ) +gl_cv_func_rename_link_works=no fi - rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF -else - gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" + else + gl_cv_func_rename_link_works="guessing no" + fi + rm -rf conftest.f conftest.f1 fi -done +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_rename_link_works" >&5 +$as_echo "$gl_cv_func_rename_link_works" >&6; } + if test "x$gl_cv_func_rename_link_works" != xyes; then - if test $ac_cv_func_rpmatch = no; then - HAVE_RPMATCH=0 - { $as_echo "$as_me:$LINENO: checking for nl_langinfo and YESEXPR" >&5 -$as_echo_n "checking for nl_langinfo and YESEXPR... " >&6; } -if test "${gl_cv_langinfo_yesexpr+set}" = set; then + + + + + + gl_LIBOBJS="$gl_LIBOBJS rename.$ac_objext" + + REPLACE_RENAME=1 + +cat >>confdefs.h <<\_ACEOF +#define RENAME_HARD_LINK_BUG 1 +_ACEOF + + fi + + { $as_echo "$as_me:$LINENO: checking whether rename manages existing destinations correctly" >&5 +$as_echo_n "checking whether rename manages existing destinations correctly... " >&6; } +if test "${gl_cv_func_rename_dest_works+set}" = set; then $as_echo_n "(cached) " >&6 +else + rm -rf conftest.f conftest.d1 conftest.d2 + touch conftest.f && mkdir conftest.d1 conftest.d2 || + { { $as_echo "$as_me:$LINENO: error: cannot create temporary files" >&5 +$as_echo "$as_me: error: cannot create temporary files" >&2;} + { (exit 1); exit 1; }; } + if test "$cross_compiling" = yes; then + gl_cv_func_rename_dest_works="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -35827,16 +38240,20 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include + +# include +# include + int main () { -char* cs = nl_langinfo(YESEXPR); return !cs; +if (rename ("conftest.d1", "conftest.d2") != 0) return 1; + if (rename ("conftest.d2", "conftest.f") == 0) return 2; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext +rm -f conftest$ac_exeext if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; @@ -35844,52 +38261,40 @@ case "(($ac_try" in esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 + (eval "$ac_link") 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - gl_cv_langinfo_yesexpr=yes + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_rename_dest_works=yes else - $as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_langinfo_yesexpr=no +( exit $ac_status ) +gl_cv_func_rename_dest_works=no fi - rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_langinfo_yesexpr" >&5 -$as_echo "$gl_cv_langinfo_yesexpr" >&6; } - if test $gl_cv_langinfo_yesexpr = yes; then -cat >>confdefs.h <<\_ACEOF -#define HAVE_LANGINFO_YESEXPR 1 -_ACEOF - - fi - - fi - - - - GNULIB_RPMATCH=1 + rm -rf conftest.f conftest.d1 conftest.d2 -cat >>confdefs.h <<\_ACEOF -#define GNULIB_RPMATCH 1 -_ACEOF +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_rename_dest_works" >&5 +$as_echo "$gl_cv_func_rename_dest_works" >&6; } + if test "x$gl_cv_func_rename_dest_works" != xyes; then @@ -35898,32 +38303,43 @@ _ACEOF + gl_LIBOBJS="$gl_LIBOBJS rename.$ac_objext" + REPLACE_RENAME=1 +cat >>confdefs.h <<\_ACEOF +#define RENAME_DEST_EXISTS_BUG 1 +_ACEOF + fi - gl_LIBOBJS="$gl_LIBOBJS safe-read.$ac_objext" + GNULIB_RENAME=1 +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_RENAME 1 +_ACEOF + # Code from module renameat: - gl_LIBOBJS="$gl_LIBOBJS safe-write.$ac_objext" + if test $ac_cv_func_renameat = no; then + HAVE_RENAMEAT=0 @@ -35932,17 +38348,20 @@ _ACEOF + gl_LIBOBJS="$gl_LIBOBJS renameat.$ac_objext" - gl_LIBOBJS="$gl_LIBOBJS same.$ac_objext" + gl_LIBOBJS="$gl_LIBOBJS at-func2.$ac_objext" + elif test $REPLACE_RENAME = 1; then + REPLACE_RENAMEAT=1 @@ -35951,6 +38370,376 @@ _ACEOF + gl_LIBOBJS="$gl_LIBOBJS renameat.$ac_objext" + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS at-func2.$ac_objext" + + fi + + + + + GNULIB_RENAMEAT=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_RENAMEAT 1 +_ACEOF + + + + # Code from module rmdir: + + + + { $as_echo "$as_me:$LINENO: checking whether rmdir works" >&5 +$as_echo_n "checking whether rmdir works... " >&6; } +if test "${gl_cv_func_rmdir_works+set}" = set; then + $as_echo_n "(cached) " >&6 +else + mkdir conftest.dir + touch conftest.file + if test "$cross_compiling" = yes; then + gl_cv_func_rmdir_works="guessing no" +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + #include + #include + +int +main () +{ +return !rmdir ("conftest.file/") || errno != ENOTDIR + || !rmdir ("conftest.dir/./"); + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_rmdir_works=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_rmdir_works=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + rm -rf conftest.dir conftest.file +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_rmdir_works" >&5 +$as_echo "$gl_cv_func_rmdir_works" >&6; } + if test x"$gl_cv_func_rmdir_works" != xyes; then + REPLACE_RMDIR=1 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS rmdir.$ac_objext" + + fi + + + + + GNULIB_RMDIR=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_RMDIR 1 +_ACEOF + + + + # Code from module rpmatch: + + + + + + + + + + + + + +for ac_func in rpmatch +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + + gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" + +fi +done + + + if test $ac_cv_func_rpmatch = no; then + HAVE_RPMATCH=0 + + { $as_echo "$as_me:$LINENO: checking for nl_langinfo and YESEXPR" >&5 +$as_echo_n "checking for nl_langinfo and YESEXPR... " >&6; } +if test "${gl_cv_langinfo_yesexpr+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +char* cs = nl_langinfo(YESEXPR); return !cs; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + gl_cv_langinfo_yesexpr=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_langinfo_yesexpr=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_langinfo_yesexpr" >&5 +$as_echo "$gl_cv_langinfo_yesexpr" >&6; } + if test $gl_cv_langinfo_yesexpr = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_LANGINFO_YESEXPR 1 +_ACEOF + + fi + + fi + + + + + GNULIB_RPMATCH=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_RPMATCH 1 +_ACEOF + + + + # Code from module safe-read: + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS safe-read.$ac_objext" + + + + + + + # Code from module safe-write: + + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS safe-write.$ac_objext" + + + + + + + + + # Code from module same-inode: + # Code from module save-cwd: + + + + @@ -35965,6 +38754,7 @@ _ACEOF + # Code from module savedir: @@ -35977,6 +38767,7 @@ _ACEOF gl_LIBOBJS="$gl_LIBOBJS savedir.$ac_objext" + # Code from module setenv: if test $HAVE_SETENV$REPLACE_SETENV != 10; then @@ -35994,15 +38785,18 @@ _ACEOF + GNULIB_SETENV=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_SETENV 1 +#define GNULIB_TEST_SETENV 1 _ACEOF + # Code from module size_max: for ac_header in stdint.h @@ -36838,8 +39632,8 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include - extern size_t foo; - extern unsigned long foo; + extern size_t foo; + extern unsigned long foo; int main () @@ -36900,6 +39694,7 @@ _ACEOF + # Code from module sleep: { $as_echo "$as_me:$LINENO: checking whether sleep is declared" >&5 @@ -37088,15 +39883,18 @@ $as_echo "$gl_cv_func_sleep_works" >&6; } + GNULIB_SLEEP=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_SLEEP 1 +#define GNULIB_TEST_SLEEP 1 _ACEOF + # Code from module snprintf: gl_cv_func_snprintf_usable=no @@ -37304,15 +40102,18 @@ $as_echo "$gl_cv_func_snprintf_size1" >&6; } + GNULIB_SNPRINTF=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_SNPRINTF 1 +#define GNULIB_TEST_SNPRINTF 1 _ACEOF + # Code from module ssize_t: { $as_echo "$as_me:$LINENO: checking for ssize_t" >&5 $as_echo_n "checking for ssize_t... " >&6; } @@ -37330,7 +40131,7 @@ int main () { int x = sizeof (ssize_t *) + sizeof (ssize_t); - return !x; + return !x; ; return 0; } @@ -37373,6 +40174,7 @@ _ACEOF fi + # Code from module stat: @@ -37554,15 +40356,19 @@ _ACEOF + GNULIB_STAT=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_STAT 1 +#define GNULIB_TEST_STAT 1 _ACEOF + # Code from module stat-macros: + # Code from module stat-time: @@ -38412,6 +41218,7 @@ fi fi + # Code from module stdarg: STDARG_H=''; NEXT_STDARG_H=''; @@ -38635,6 +41442,7 @@ _ACEOF fi fi + # Code from module stdbool: @@ -38654,6 +41462,7 @@ _ACEOF fi + # Code from module stddef: @@ -38782,6 +41591,7 @@ $as_echo "$gl_cv_next_stddef_h" >&6; } fi + # Code from module stdint: @@ -40514,6 +43324,8 @@ _ACEOF fi + # Code from module stdio: + @@ -40603,7 +43415,8 @@ $as_echo "$gl_cv_next_stdio_h" >&6; } - for gl_func in dprintf fpurge fseeko ftello getdelim getline popen renameat snprintf vdprintf vsnprintf; do + + for gl_func in dprintf fpurge fseeko ftello getdelim getline popen renameat snprintf tmpfile vdprintf vsnprintf; do as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 $as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } @@ -40672,6 +43485,7 @@ fi done + # Code from module stdlib: @@ -40941,7 +43755,11 @@ fi - for gl_func in atoll canonicalize_file_name getloadavg getsubopt mkdtemp mkostemp mkostemps mkstemp mkstemps random_r initstat_r srandom_r setstate_r realpath rpmatch setenv strtod strtoll strtoull unsetenv; do + + + + + for gl_func in _Exit atoll canonicalize_file_name getloadavg getsubopt grantpt mkdtemp mkostemp mkostemps mkstemp mkstemps ptsname random_r initstat_r srandom_r setstate_r realpath rpmatch setenv strtod strtoll strtoull unlockpt unsetenv; do as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 $as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } @@ -41016,6 +43834,7 @@ fi done + # Code from module stpcpy: @@ -41136,143 +43955,8 @@ fi done - if test $ac_cv_func_stpcpy = no; then - HAVE_STPCPY=0 - - : - - fi - - - - GNULIB_STPCPY=1 - - -cat >>confdefs.h <<\_ACEOF -#define GNULIB_STPCPY 1 -_ACEOF - - - - - - - - - - - - - - - -for ac_func in strcasecmp -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif - -int -main () -{ -return $ac_func (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_var=no" -fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -else - - gl_LIBOBJS="$gl_LIBOBJS $ac_func.$ac_objext" - -fi -done - - - if test $ac_cv_func_strcasecmp = no; then - HAVE_STRCASECMP=0 + if test $ac_cv_func_stpcpy = no; then + HAVE_STPCPY=0 : @@ -41281,15 +43965,30 @@ done + GNULIB_STPCPY=1 +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_STPCPY 1 +_ACEOF + # Code from module strcase: -for ac_func in strncasecmp + + + + + + + + + + +for ac_func in strcasecmp do as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 @@ -41394,86 +44093,12 @@ fi done - if test $ac_cv_func_strncasecmp = no; then + if test $ac_cv_func_strcasecmp = no; then + HAVE_STRCASECMP=0 : fi - { $as_echo "$as_me:$LINENO: checking whether strncasecmp is declared" >&5 -$as_echo_n "checking whether strncasecmp is declared... " >&6; } -if test "${ac_cv_have_decl_strncasecmp+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -#ifndef strncasecmp - (void) strncasecmp; -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_have_decl_strncasecmp=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_have_decl_strncasecmp=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_strncasecmp" >&5 -$as_echo "$ac_cv_have_decl_strncasecmp" >&6; } -if test "x$ac_cv_have_decl_strncasecmp" = x""yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRNCASECMP 1 -_ACEOF - - -else - cat >>confdefs.h <<_ACEOF -#define HAVE_DECL_STRNCASECMP 0 -_ACEOF - - -fi - - - if test $ac_cv_have_decl_strncasecmp = no; then - HAVE_DECL_STRNCASECMP=0 - fi - - - @@ -41486,7 +44111,7 @@ fi -for ac_func in strchrnul +for ac_func in strncasecmp do as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 @@ -41591,38 +44216,90 @@ fi done - if test $ac_cv_func_strchrnul = no; then - HAVE_STRCHRNUL=0 - : - fi - - + if test $ac_cv_func_strncasecmp = no; then - GNULIB_STRCHRNUL=1 + : + fi + { $as_echo "$as_me:$LINENO: checking whether strncasecmp is declared" >&5 +$as_echo_n "checking whether strncasecmp is declared... " >&6; } +if test "${ac_cv_have_decl_strncasecmp+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef strncasecmp + (void) strncasecmp; +#endif -cat >>confdefs.h <<\_ACEOF -#define GNULIB_STRCHRNUL 1 + ; + return 0; +} _ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_strncasecmp=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_have_decl_strncasecmp=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_strncasecmp" >&5 +$as_echo "$ac_cv_have_decl_strncasecmp" >&6; } +if test "x$ac_cv_have_decl_strncasecmp" = x""yes; then +cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRNCASECMP 1 +_ACEOF +else + cat >>confdefs.h <<_ACEOF +#define HAVE_DECL_STRNCASECMP 0 +_ACEOF - if test $gl_cv_func_malloc_posix != yes; then - REPLACE_STRDUP=1 +fi + if test $ac_cv_have_decl_strncasecmp = no; then + HAVE_DECL_STRNCASECMP=0 + fi + # Code from module strchrnul: - gl_LIBOBJS="$gl_LIBOBJS strdup.$ac_objext" - else @@ -41632,7 +44309,7 @@ _ACEOF -for ac_func in strdup +for ac_func in strchrnul do as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 @@ -41737,6 +44414,61 @@ fi done + if test $ac_cv_func_strchrnul = no; then + HAVE_STRCHRNUL=0 + : + fi + + + + + GNULIB_STRCHRNUL=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_STRCHRNUL 1 +_ACEOF + + + + # Code from module strdup-posix: + + + + + + + + + + if test $ac_cv_func_strdup = yes; then + if test $gl_cv_func_malloc_posix != yes; then + REPLACE_STRDUP=1 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS strdup.$ac_objext" + + : + fi + else + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS strdup.$ac_objext" + + : fi @@ -41745,19 +44477,22 @@ done if test $ac_cv_have_decl_strdup = no; then HAVE_DECL_STRDUP=0 fi - : + GNULIB_STRDUP=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_STRDUP 1 +#define GNULIB_TEST_STRDUP 1 _ACEOF + # Code from module streq: + # Code from module strerror: if test $REPLACE_STRERROR = 1; then @@ -41780,21 +44515,26 @@ _ACEOF + GNULIB_STRERROR=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_STRERROR 1 +#define GNULIB_TEST_STRERROR 1 _ACEOF + # Code from module string: + # Code from module strings: + # Code from module strndup: @@ -41821,10 +44561,12 @@ if test "${gl_cv_func_strndup_works+set}" = set; then $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then - case $host_os in - aix*) gl_cv_func_strndup_works="guessing no";; - *) gl_cv_func_strndup_works="guessing yes";; + + case $host_os in + aix | aix[3-6]*) gl_cv_func_strndup_works="guessing no";; + *) gl_cv_func_strndup_works="guessing yes";; esac + else cat >conftest.$ac_ext <<_ACEOF @@ -41920,15 +44662,19 @@ $as_echo "$gl_cv_func_strndup_works" >&6; } + GNULIB_STRNDUP=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_STRNDUP 1 +#define GNULIB_TEST_STRNDUP 1 _ACEOF + # Code from module strnlen: + @@ -41939,9 +44685,8 @@ _ACEOF if test $ac_cv_have_decl_strnlen = no; then HAVE_DECL_STRNLEN=0 - fi - - { $as_echo "$as_me:$LINENO: checking for working strnlen" >&5 + else + { $as_echo "$as_me:$LINENO: checking for working strnlen" >&5 $as_echo_n "checking for working strnlen... " >&6; } if test "${ac_cv_func_strnlen_working+set}" = set; then $as_echo_n "(cached) " >&6 @@ -42029,30 +44774,39 @@ test $ac_cv_func_strnlen_working = no && gl_LIBOBJS="$gl_LIBOBJS strnlen.$ac_objext" - if test $ac_cv_func_strnlen_working = no; then - # This is necessary because automake-1.6.1 doesn't understand - # that the above use of AC_FUNC_STRNLEN means we may have to use - # lib/strnlen.c. - #AC_LIBOBJ([strnlen]) + if test $ac_cv_func_strnlen_working = no; then + REPLACE_STRNLEN=1 + fi + fi + if test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1; then -cat >>confdefs.h <<\_ACEOF -#define strnlen rpl_strnlen -_ACEOF + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS strnlen.$ac_objext" : fi + GNULIB_STRNLEN=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_STRNLEN 1 +#define GNULIB_TEST_STRNLEN 1 _ACEOF + # Code from module strnlen1: + # Code from module strtoimax: @@ -42278,9 +45032,12 @@ fi + GNULIB_STRTOIMAX=1 + # Code from module strtol: + @@ -42396,6 +45153,7 @@ done + # Code from module strtoll: @@ -42524,15 +45282,18 @@ done + GNULIB_STRTOLL=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_STRTOLL 1 +#define GNULIB_TEST_STRTOLL 1 _ACEOF + # Code from module strtoul: @@ -42649,6 +45410,7 @@ done + # Code from module strtoull: @@ -42777,15 +45539,18 @@ done + GNULIB_STRTOULL=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_STRTOULL 1 +#define GNULIB_TEST_STRTOULL 1 _ACEOF + # Code from module strtoumax: @@ -43011,9 +45776,166 @@ fi + GNULIB_STRTOUMAX=1 + # Code from module symlink: + + + + + + + + + if test $ac_cv_func_symlink = no; then + HAVE_SYMLINK=0 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS symlink.$ac_objext" + + else + { $as_echo "$as_me:$LINENO: checking whether symlink handles trailing slash correctly" >&5 +$as_echo_n "checking whether symlink handles trailing slash correctly... " >&6; } +if test "${gl_cv_func_symlink_works+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + gl_cv_func_symlink_works="guessing no" +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +if (!symlink ("a", "conftest.link/")) return 1; + if (symlink ("conftest.f", "conftest.lnk2")) return 2; + if (!symlink ("a", "conftest.lnk2/")) return 3; + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_symlink_works=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_symlink_works=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + rm -f conftest.f conftest.link conftest.lnk2 +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_symlink_works" >&5 +$as_echo "$gl_cv_func_symlink_works" >&6; } + if test "$gl_cv_func_symlink_works" != yes; then + REPLACE_SYMLINK=1 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS symlink.$ac_objext" + + fi + fi + + + + + GNULIB_SYMLINK=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_SYMLINK 1 +_ACEOF + + + + # Code from module symlinkat: + + + + + + + + + + + if test $ac_cv_func_symlinkat = no; then + HAVE_SYMLINKAT=0 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS symlinkat.$ac_objext" + + fi + + + + + GNULIB_SYMLINKAT=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_SYMLINKAT 1 +_ACEOF + + + + # Code from module sys_stat: + @@ -43317,6 +46239,7 @@ fi $as_echo "$MKDIR_P" >&6; } + # Code from module sys_time: @@ -43363,6 +46286,7 @@ fi $as_echo "$MKDIR_P" >&6; } + # Code from module sysexits: @@ -43503,6 +46427,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + # Code from module tempname: @@ -43520,6 +46445,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext : + # Code from module time: + + + + # Code from module time_r: @@ -43529,7 +46459,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: checking whether localtime_r is compatible with its POSIX signature" >&5 + + + + if test $ac_cv_func_localtime_r = yes; then + { $as_echo "$as_me:$LINENO: checking whether localtime_r is compatible with its POSIX signature" >&5 $as_echo_n "checking whether localtime_r is compatible with its POSIX signature... " >&6; } if test "${gl_cv_time_r_posix+set}" = set; then $as_echo_n "(cached) " >&6 @@ -43545,12 +46479,239 @@ int main () { /* We don't need to append 'restrict's to the argument types, - even though the POSIX signature has the 'restrict's, - since C99 says they can't affect type compatibility. */ - struct tm * (*ptr) (time_t const *, struct tm *) = localtime_r; - if (ptr) return 0; - /* Check the return type is a pointer. On HP-UX 10 it is 'int'. */ - *localtime_r (0, 0); + even though the POSIX signature has the 'restrict's, + since C99 says they can't affect type compatibility. */ + struct tm * (*ptr) (time_t const *, struct tm *) = localtime_r; + if (ptr) return 0; + /* Check the return type is a pointer. + On HP-UX 10 it is 'int'. */ + *localtime_r (0, 0); + ; + return 0; +} + +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gl_cv_time_r_posix=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_time_r_posix=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_time_r_posix" >&5 +$as_echo "$gl_cv_time_r_posix" >&6; } + if test $gl_cv_time_r_posix = yes; then + REPLACE_LOCALTIME_R=0 + else + REPLACE_LOCALTIME_R=1 + fi + else + HAVE_LOCALTIME_R=0 + fi + if test $HAVE_LOCALTIME_R = 0 || test $REPLACE_LOCALTIME_R = 1; then + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS time_r.$ac_objext" + + + : + + fi + + + + + GNULIB_TIME_R=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_TIME_R 1 +_ACEOF + + + + # Code from module timespec: + + + + # Code from module unistd: + + + + + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_unistd_h='<'unistd.h'>' + else + { $as_echo "$as_me:$LINENO: checking absolute name of " >&5 +$as_echo_n "checking absolute name of ... " >&6; } +if test "${gl_cv_next_unistd_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + if test $ac_cv_header_unistd_h = yes; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + gl_cv_next_unistd_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n '\#/unistd.h#{ + s#.*"\(.*/unistd.h\)".*#\1# + s#^/[^/]#//&# + p + q + }'`'"' + else + gl_cv_next_unistd_h='<'unistd.h'>' + fi + +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_next_unistd_h" >&5 +$as_echo "$gl_cv_next_unistd_h" >&6; } + fi + NEXT_UNISTD_H=$gl_cv_next_unistd_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'unistd.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_unistd_h + fi + NEXT_AS_FIRST_DIRECTIVE_UNISTD_H=$gl_next_as_first_directive + + + + + + + + + + + if test $ac_cv_header_unistd_h = yes; then + HAVE_UNISTD_H=1 + else + HAVE_UNISTD_H=0 + fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + for gl_func in chown dup2 dup3 environ euidaccess faccessat fchdir fchownat fsync ftruncate getcwd getdomainname getdtablesize getgroups gethostname getlogin getlogin_r getpagesize getusershell setusershell endusershell lchown link linkat lseek pipe2 pread pwrite readlink readlinkat rmdir sleep symlink symlinkat ttyname_r unlink unlinkat usleep; do + as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` + { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 +$as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } +if { as_var=$as_gl_Symbol; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +/* Some systems declare various items in the wrong headers. */ +#ifndef __GLIBC__ +# include +# include +# include +# if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ +# include +# endif +#endif + +int +main () +{ +#undef $gl_func + (void) $gl_func; ; return 0; } @@ -43573,36 +46734,37 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - gl_cv_time_r_posix=yes + eval "$as_gl_Symbol=yes" else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - gl_cv_time_r_posix=no + eval "$as_gl_Symbol=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_time_r_posix" >&5 -$as_echo "$gl_cv_time_r_posix" >&6; } - if test $gl_cv_time_r_posix = yes; then - REPLACE_LOCALTIME_R=0 - else - REPLACE_LOCALTIME_R=1 - - - - +ac_res=`eval 'as_val=${'$as_gl_Symbol'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + as_val=`eval 'as_val=${'$as_gl_Symbol'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1 +_ACEOF + eval ac_cv_have_decl_$gl_func=yes +fi + done - gl_LIBOBJS="$gl_LIBOBJS time_r.$ac_objext" + # Code from module unistd-safer: - : - fi @@ -43615,6 +46777,7 @@ $as_echo "$gl_cv_time_r_posix" >&6; } + gl_LIBOBJS="$gl_LIBOBJS dup-safer.$ac_objext" @@ -43622,55 +46785,9 @@ $as_echo "$gl_cv_time_r_posix" >&6; } - if test $gl_cv_have_include_next = yes; then - gl_cv_next_unistd_h='<'unistd.h'>' - else - { $as_echo "$as_me:$LINENO: checking absolute name of " >&5 -$as_echo_n "checking absolute name of ... " >&6; } -if test "${gl_cv_next_unistd_h+set}" = set; then - $as_echo_n "(cached) " >&6 -else - if test $ac_cv_header_unistd_h = yes; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - gl_cv_next_unistd_h='"'`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n '\#/unistd.h#{ - s#.*"\(.*/unistd.h\)".*#\1# - s#^/[^/]#//&# - p - q - }'`'"' - else - gl_cv_next_unistd_h='<'unistd.h'>' - fi - -fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_next_unistd_h" >&5 -$as_echo "$gl_cv_next_unistd_h" >&6; } - fi - NEXT_UNISTD_H=$gl_cv_next_unistd_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'unistd.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_unistd_h - fi - NEXT_AS_FIRST_DIRECTIVE_UNISTD_H=$gl_next_as_first_directive + gl_LIBOBJS="$gl_LIBOBJS fd-safer.$ac_objext" @@ -43680,56 +46797,112 @@ $as_echo "$gl_cv_next_unistd_h" >&6; } - if test $ac_cv_header_unistd_h = yes; then - HAVE_UNISTD_H=1 - else - HAVE_UNISTD_H=0 - fi + gl_LIBOBJS="$gl_LIBOBJS pipe-safer.$ac_objext" + # Code from module unitypes: + if { test "$HAVE_LIBUNISTRING" != yes \ + || { + test $LIBUNISTRING_VERSION_MAJOR -lt 0 \ + || { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \ + && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ + || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ + && test $LIBUNISTRING_VERSION_SUBMINOR -lt 0 + } + } + } + } + }; then + LIBUNISTRING_UNITYPES_H='unitypes.h' + else + LIBUNISTRING_UNITYPES_H= + fi + # Code from module uniwidth/base: + if { test "$HAVE_LIBUNISTRING" != yes \ + || { + test $LIBUNISTRING_VERSION_MAJOR -lt 0 \ + || { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \ + && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ + || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ + && test $LIBUNISTRING_VERSION_SUBMINOR -lt 0 + } + } + } + } + }; then + LIBUNISTRING_UNIWIDTH_H='uniwidth.h' + else + LIBUNISTRING_UNIWIDTH_H= + fi + # Code from module uniwidth/width: + if { test "$HAVE_LIBUNISTRING" != yes \ + || { + test $LIBUNISTRING_VERSION_MAJOR -lt 0 \ + || { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \ + && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ + || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ + && test $LIBUNISTRING_VERSION_SUBMINOR -lt 0 + } + } + } + } + }; then + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE= + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE='#' +else + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE='#' + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE= +fi + # Code from module unlink: - for gl_func in chown dup2 dup3 environ euidaccess faccessat fchdir fchownat fsync ftruncate getcwd getdomainname getdtablesize getgroups gethostname getlogin getlogin_r getpagesize getusershell setusershell endusershell lchown link linkat lseek pipe2 pread readlink readlinkat rmdir sleep symlink symlinkat unlink unlinkat usleep; do - as_gl_Symbol=`$as_echo "gl_cv_have_raw_decl_$gl_func" | $as_tr_sh` - { $as_echo "$as_me:$LINENO: checking whether $gl_func is declared without a macro" >&5 -$as_echo_n "checking whether $gl_func is declared without a macro... " >&6; } -if { as_var=$as_gl_Symbol; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking whether unlink honors trailing slashes" >&5 +$as_echo_n "checking whether unlink honors trailing slashes... " >&6; } +if test "${gl_cv_func_unlink_honors_slashes+set}" = set; then $as_echo_n "(cached) " >&6 +else + touch conftest.file + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.file conftest.lnk + fi + if test "$cross_compiling" = yes; then + gl_cv_func_unlink_honors_slashes="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -43738,123 +46911,87 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include -/* Some systems declare various items in the wrong headers. */ -#ifndef __GLIBC__ -# include -# include -# include -# if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -# include -# endif -#endif + #include int main () { -#undef $gl_func - (void) $gl_func; +if (!unlink ("conftest.file/") || errno != ENOTDIR) return 1; +#if HAVE_LSTAT + if (!unlink ("conftest.lnk/") || errno != ENOTDIR) return 2; +#endif + ; return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" $as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 + (eval "$ac_link") 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - eval "$as_gl_Symbol=yes" + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gl_cv_func_unlink_honors_slashes=yes else - $as_echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_gl_Symbol=no" -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +( exit $ac_status ) +gl_cv_func_unlink_honors_slashes=no fi -ac_res=`eval 'as_val=${'$as_gl_Symbol'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - as_val=`eval 'as_val=${'$as_gl_Symbol'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_RAW_DECL_$gl_func" | $as_tr_cpp` 1 -_ACEOF - - eval ac_cv_have_decl_$gl_func=yes +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi - done - - - - - - - - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS dup-safer.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS fd-safer.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS pipe-safer.$ac_objext" - - - - - - { $as_echo "$as_me:$LINENO: checking whether unlink honors trailing slashes" >&5 -$as_echo_n "checking whether unlink honors trailing slashes... " >&6; } -if test "${gl_cv_func_unlink_works+set}" = set; then + rm -f conftest.file conftest.lnk +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_unlink_honors_slashes" >&5 +$as_echo "$gl_cv_func_unlink_honors_slashes" >&6; } + { $as_echo "$as_me:$LINENO: checking whether unlink of a parent directory fails is it should" >&5 +$as_echo_n "checking whether unlink of a parent directory fails is it should... " >&6; } +if test "${gl_cv_func_unlink_parent_fails+set}" = set; then $as_echo_n "(cached) " >&6 else - touch conftest.file - # Assume that if we have lstat, we can also check symlinks. - if test $ac_cv_func_lstat = yes; then - ln -s conftest.file conftest.lnk - fi - if test "$cross_compiling" = yes; then - gl_cv_func_unlink_works="guessing no" + case "$host_os" in + darwin*) + if { + # Use the mktemp program if available. If not available, hide the error + # message. + tmp=`(umask 077 && mktemp -d /tmp/gtXXXXXX) 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" + } || + { + # Use a simple mkdir command. It is guaranteed to fail if the directory + # already exists. $RANDOM is bash specific and expands to empty in shells + # other than bash, ksh and zsh. Its use does not increase security; + # rather, it minimizes the probability of failure in a very cluttered /tmp + # directory. + tmp=/tmp/gt$$-$RANDOM + (umask 077 && mkdir "$tmp") + }; then + mkdir "$tmp/subdir" + GL_SUBDIR_FOR_UNLINK="$tmp/subdir" + export GL_SUBDIR_FOR_UNLINK + if test "$cross_compiling" = yes; then + gl_cv_func_unlink_parent_fails="guessing no" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -43862,20 +46999,16 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include - #include -int -main () -{ -if (!unlink ("conftest.file/") || errno != ENOTDIR) return 1; -#if HAVE_LSTAT - if (!unlink ("conftest.lnk/") || errno != ENOTDIR) return 2; -#endif + #include + #include + int main () + { + if (chdir (getenv ("GL_SUBDIR_FOR_UNLINK")) != 0) + return 1; + return unlink ("..") == 0; + } - ; - return 0; -} _ACEOF rm -f conftest$ac_exeext if { (ac_try="$ac_link" @@ -43899,25 +47032,49 @@ $as_echo "$ac_try_echo") >&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - gl_cv_func_unlink_works=yes + gl_cv_func_unlink_parent_fails=yes else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -gl_cv_func_unlink_works=no +gl_cv_func_unlink_parent_fails=no fi rm -rf conftest.dSYM rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi - rm -f conftest.file conftest.lnk + unset GL_SUBDIR_FOR_UNLINK + rm -rf "$tmp" + else + gl_cv_func_unlink_parent_fails="guessing no" + fi + ;; + *) + gl_cv_func_unlink_parent_fails="guessing yes" + ;; + esac + fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_unlink_works" >&5 -$as_echo "$gl_cv_func_unlink_works" >&6; } - if test x"$gl_cv_func_unlink_works" != xyes; then +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_unlink_parent_fails" >&5 +$as_echo "$gl_cv_func_unlink_parent_fails" >&6; } + case "$gl_cv_func_unlink_parent_fails" in + *no) + +cat >>confdefs.h <<\_ACEOF +#define UNLINK_PARENT_BUG 1 +_ACEOF + + ;; + esac + if test "$gl_cv_func_unlink_honors_slashes" != yes \ + || { case "$gl_cv_func_unlink_parent_fails" in + *yes) false;; + *no) true;; + esac + }; then REPLACE_UNLINK=1 @@ -43933,15 +47090,18 @@ $as_echo "$gl_cv_func_unlink_works" >&6; } + GNULIB_UNLINK=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_UNLINK 1 +#define GNULIB_TEST_UNLINK 1 _ACEOF + # Code from module unlinkdir: @@ -43982,6 +47142,7 @@ _ACEOF ;; esac + # Code from module unlocked-io: cat >>confdefs.h <<\_ACEOF @@ -44044,6 +47205,7 @@ _ACEOF + # Code from module unsetenv: @@ -44180,6 +47342,7 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include extern #ifdef __cplusplus @@ -44248,8 +47411,8 @@ _ACEOF fi - { $as_echo "$as_me:$LINENO: checking whether unsetenv works on duplicates" >&5 -$as_echo_n "checking whether unsetenv works on duplicates... " >&6; } + { $as_echo "$as_me:$LINENO: checking whether unsetenv obeys POSIX" >&5 +$as_echo_n "checking whether unsetenv obeys POSIX... " >&6; } if test "${gl_cv_func_unsetenv_works+set}" = set; then $as_echo_n "(cached) " >&6 else @@ -44264,6 +47427,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include + #include int main () @@ -44275,6 +47439,7 @@ main () entry[0] = 'a'; unsetenv ("a"); if (getenv ("a")) return 3; + if (!unsetenv ("") || errno != EINVAL) return 4; ; return 0; @@ -44336,15 +47501,18 @@ $as_echo "$gl_cv_func_unsetenv_works" >&6; } + GNULIB_UNSETENV=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_UNSETENV 1 +#define GNULIB_TEST_UNSETENV 1 _ACEOF + # Code from module utimens: @@ -44428,29 +47596,192 @@ $as_echo "$ac_try_echo") >&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - gl_cv_func_futimesat_works=yes + gl_cv_func_futimesat_works=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gl_cv_func_futimesat_works=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + rm -f conftest.file +fi +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_futimesat_works" >&5 +$as_echo "$gl_cv_func_futimesat_works" >&6; } + if test "$gl_cv_func_futimesat_works" != yes; then + +cat >>confdefs.h <<\_ACEOF +#define FUTIMESAT_NULL_BUG 1 +_ACEOF + + fi + fi + + # Code from module utimensat: + + + + + + + + + + if test $ac_cv_func_utimensat = no; then + HAVE_UTIMENSAT=0 + + + + + + + + + gl_LIBOBJS="$gl_LIBOBJS utimensat.$ac_objext" + + else + { $as_echo "$as_me:$LINENO: checking whether utimensat works" >&5 +$as_echo_n "checking whether utimensat works... " >&6; } +if test "${gl_cv_func_utimensat_works+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + gl_cv_func_utimensat_works="guessing no" +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#include + +int +main () +{ +struct timespec ts[2] = { { 1, UTIME_OMIT }, { 1, UTIME_NOW } }; + struct stat st; + const char *f = "conftest.file"; + if (close (creat (f, 0600))) return 1; + if (utimensat (AT_FDCWD, f, NULL, AT_SYMLINK_NOFOLLOW)) return 2; + if (utimensat (AT_FDCWD, f, ts, 0)) return 3; + sleep (1); + ts[0].tv_nsec = UTIME_NOW; + ts[1].tv_nsec = UTIME_OMIT; + if (utimensat (AT_FDCWD, f, ts, 0)) return 4; + if (stat (f, &st)) return 5; + if (st.st_ctime < st.st_atime) return 6; + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#ifdef __linux__ +/* The Linux kernel added utimensat in 2.6.22, but has bugs with UTIME_OMIT + in several file systems as recently as 2.6.32. Always replace utimensat + to support older kernels. */ +choke me +#endif + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gl_cv_func_utimensat_works=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gl_cv_func_utimensat_works="needs runtime check" +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -gl_cv_func_futimesat_works=no +gl_cv_func_utimensat_works=no fi rm -rf conftest.dSYM rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi - rm -f conftest.file fi -{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_futimesat_works" >&5 -$as_echo "$gl_cv_func_futimesat_works" >&6; } - if test "$gl_cv_func_futimesat_works" != yes; then +{ $as_echo "$as_me:$LINENO: result: $gl_cv_func_utimensat_works" >&5 +$as_echo "$gl_cv_func_utimensat_works" >&6; } + if test "$gl_cv_func_utimensat_works" != yes; then + REPLACE_UTIMENSAT=1 + -cat >>confdefs.h <<\_ACEOF -#define FUTIMESAT_NULL_BUG 1 -_ACEOF + + + + + + + gl_LIBOBJS="$gl_LIBOBJS utimensat.$ac_objext" fi fi @@ -44458,6 +47789,20 @@ _ACEOF + GNULIB_UTIMENSAT=1 + + + +cat >>confdefs.h <<\_ACEOF +#define GNULIB_TEST_UTIMENSAT 1 +_ACEOF + + + + # Code from module vasnprintf: + + + @@ -44640,6 +47985,7 @@ fi fi + # Code from module vasprintf: for ac_func in vasprintf @@ -44782,11 +48128,13 @@ done + GNULIB_VASPRINTF=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_VASPRINTF 1 +#define GNULIB_TEST_VASPRINTF 1 _ACEOF @@ -44799,6 +48147,8 @@ _ACEOF XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=vasprintf:2:c-format" + # Code from module verify: + # Code from module version-etc: # Check whether --with-packager was given. if test "${with_packager+set}" = set; then @@ -44852,6 +48202,8 @@ $as_echo "$as_me: error: The --with-packager-{bug-reports,version} options requi { (exit 1); exit 1; }; } fi + # Code from module version-etc-fsf: + # Code from module vsnprintf: gl_cv_func_vsnprintf_usable=no @@ -45059,15 +48411,19 @@ $as_echo "$gl_cv_func_snprintf_size1" >&6; } + GNULIB_VSNPRINTF=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_VSNPRINTF 1 +#define GNULIB_TEST_VSNPRINTF 1 _ACEOF + # Code from module warn-on-use: + # Code from module wchar: @@ -45242,6 +48598,7 @@ fi done + # Code from module wcrtomb: @@ -45273,10 +48630,10 @@ if test "${gl_cv_func_mbrtowc_incomplete_state+set}" = set; then else case "$host_os" in - # Guess no on AIX and OSF/1. - osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; + # Guess no on AIX and OSF/1. + aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; esac if test $LOCALE_JA != none; then if test "$cross_compiling" = yes; then @@ -45459,9 +48816,7 @@ $as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } fi - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_WCRTOMB=1 - fi + @@ -45470,27 +48825,29 @@ $as_echo "$gl_cv_func_mbrtowc_sanitycheck" >&6; } if test $ac_cv_func_wcrtomb = no; then HAVE_WCRTOMB=0 - fi - if test $HAVE_WCRTOMB != 0 && test $REPLACE_WCRTOMB != 1; then + else + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_WCRTOMB=1 + else - { $as_echo "$as_me:$LINENO: checking whether wcrtomb return value is correct" >&5 + { $as_echo "$as_me:$LINENO: checking whether wcrtomb return value is correct" >&5 $as_echo_n "checking whether wcrtomb return value is correct... " >&6; } if test "${gl_cv_func_wcrtomb_retval+set}" = set; then $as_echo_n "(cached) " >&6 else - case "$host_os" in - # Guess no on AIX 4, OSF/1 and Solaris. - aix4* | osf* | solaris*) gl_cv_func_wcrtomb_retval="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_wcrtomb_retval="guessing yes" ;; - esac - if test $LOCALE_FR != none || test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes; then + case "$host_os" in + # Guess no on AIX 4, OSF/1 and Solaris. + aix4* | osf* | solaris*) gl_cv_func_wcrtomb_retval="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_wcrtomb_retval="guessing yes" ;; + esac + if test $LOCALE_FR != none || test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then + if test "$cross_compiling" = yes; then : else cat >conftest.$ac_ext <<_ACEOF @@ -45565,15 +48922,16 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$a fi - fi + fi fi { $as_echo "$as_me:$LINENO: result: $gl_cv_func_wcrtomb_retval" >&5 $as_echo "$gl_cv_func_wcrtomb_retval" >&6; } - case "$gl_cv_func_wcrtomb_retval" in - *yes) ;; - *) REPLACE_WCRTOMB=1 ;; - esac + case "$gl_cv_func_wcrtomb_retval" in + *yes) ;; + *) REPLACE_WCRTOMB=1 ;; + esac + fi fi if test $HAVE_WCRTOMB = 0 || test $REPLACE_WCRTOMB = 1; then @@ -45596,15 +48954,18 @@ $as_echo "$gl_cv_func_wcrtomb_retval" >&6; } + GNULIB_WCRTOMB=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_WCRTOMB 1 +#define GNULIB_TEST_WCRTOMB 1 _ACEOF + # Code from module wctype: @@ -45629,6 +48990,30 @@ _ACEOF + + if test $ac_cv_func_iswblank = yes; then + HAVE_ISWBLANK=1 + REPLACE_ISWBLANK=0 + else + HAVE_ISWBLANK=0 + if test $ac_cv_have_decl_iswblank = yes; then + REPLACE_ISWBLANK=1 + else + REPLACE_ISWBLANK=0 + fi + fi + + + + + + + + + + + + if test $gt_cv_c_wint_t = yes; then HAVE_WINT_T=1 else @@ -45822,6 +49207,7 @@ $as_echo "$gl_cv_next_wctype_h" >&6; } fi + # Code from module wcwidth: @@ -45928,9 +49314,7 @@ fi HAVE_DECL_WCWIDTH=0 fi - if test $ac_cv_func_wcwidth = no; then - REPLACE_WCWIDTH=1 - else + if test $ac_cv_func_wcwidth = yes; then { $as_echo "$as_me:$LINENO: checking whether wcwidth works reasonably in UTF-8 locales" >&5 $as_echo_n "checking whether wcwidth works reasonably in UTF-8 locales... " >&6; } if test "${gl_cv_func_wcwidth_works+set}" = set; then @@ -45940,9 +49324,9 @@ else if test "$cross_compiling" = yes; then case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_wcwidth_works="guessing yes";; - *) gl_cv_func_wcwidth_works="guessing no";; + # Guess yes on glibc and AIX 7 systems. + *-gnu* | aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; + *) gl_cv_func_wcwidth_works="guessing no";; esac else @@ -46024,7 +49408,7 @@ $as_echo "$gl_cv_func_wcwidth_works" >&6; } *no) REPLACE_WCWIDTH=1 ;; esac fi - if test $REPLACE_WCWIDTH = 1; then + if test $ac_cv_func_wcwidth != yes || test $REPLACE_WCWIDTH = 1; then @@ -46036,8 +49420,8 @@ $as_echo "$gl_cv_func_wcwidth_works" >&6; } gl_LIBOBJS="$gl_LIBOBJS wcwidth.$ac_objext" fi - - if test $REPLACE_WCWIDTH = 1 || test $HAVE_DECL_WCWIDTH = 0; then + if test $ac_cv_func_wcwidth != yes || test $REPLACE_WCWIDTH = 1 \ + || test $HAVE_DECL_WCWIDTH = 0; then : @@ -46045,15 +49429,19 @@ $as_echo "$gl_cv_func_wcwidth_works" >&6; } + GNULIB_WCWIDTH=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_WCWIDTH 1 +#define GNULIB_TEST_WCWIDTH 1 _ACEOF + # Code from module write: + @@ -46063,12 +49451,14 @@ _ACEOF GNULIB_WRITE=1 + cat >>confdefs.h <<\_ACEOF -#define GNULIB_WRITE 1 +#define GNULIB_TEST_WRITE 1 _ACEOF + # Code from module xalloc: @@ -46089,6 +49479,8 @@ _ACEOF : + # Code from module xalloc-die: + # Code from module xgetcwd: @@ -46103,6 +49495,7 @@ _ACEOF + # Code from module xsize: @@ -46258,11 +49651,13 @@ fi done + # Code from module xstrndup: : + # Code from module xstrtol: @@ -46295,6 +49690,8 @@ done gl_LIBOBJS="$gl_LIBOBJS xstrtol-error.$ac_objext" + # Code from module xstrtoumax: + # Code from module xvasprintf: @@ -46302,6 +49699,7 @@ done XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=xasprintf:1:c-format" + # End of code from modules @@ -46323,6 +49721,11 @@ done gl_source_base='tests' + gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS + + gl_module_indicator_condition=$gltests_WITNESS + + @@ -46519,8 +49922,6 @@ fi - - # Set LIB_SETSOCKOPT to -lnsl -lsocket if necessary. pu_save_LIBS=$LIBS LIB_SETSOCKOPT= @@ -47406,105 +50807,19 @@ fi -for ac_func in fsync getdtablesize lstat mkfifo readlink symlink setlocale utimes -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ -#ifdef __STDC__ -# include -#else -# include -#endif -#undef $ac_func -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif -int -main () -{ -return $ac_func (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - eval "$as_ac_var=no" -fi -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF -fi -done + + + + + { $as_echo "$as_me:$LINENO: checking whether getgrgid is declared" >&5 $as_echo_n "checking whether getgrgid is declared... " >&6; } @@ -48260,15 +51575,14 @@ fi # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh + # 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 ac_prog=ld if test "$GCC" = yes; then @@ -48543,7 +51857,7 @@ fi done if test -z "$already_handled"; then names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` eval value=\"\$HAVE_LIB$uppername\" if test -n "$value"; then if test "$value" = yes; then @@ -48975,14 +52289,16 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include #include + int main () { iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); ; return 0; } @@ -49028,14 +52344,16 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include #include + int main () { iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); ; return 0; } @@ -49086,15 +52404,17 @@ if test "${am_cv_func_iconv_works+set}" = set; then $as_echo_n "(cached) " >&6 else - am_save_LIBS="$LIBS" + am_save_LIBS="$LIBS" if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" fi if test "$cross_compiling" = yes; then - case "$host_os" in + + case "$host_os" in aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; *) am_cv_func_iconv_works="guessing yes" ;; esac + else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -49145,6 +52465,24 @@ int main () return 1; } } + /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ + { + iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); + if (cd_88591_to_utf8 != (iconv_t)(-1)) + { + static const char input[] = "\304"; + static char buf[2] = { (char)0xDE, (char)0xAD }; + const char *inptr = input; + size_t inbytesleft = 1; + char *outptr = buf; + size_t outbytesleft = 1; + size_t res = iconv (cd_88591_to_utf8, + (char **) &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) + return 1; + } + } #if 0 /* This bug could be worked around by the caller. */ /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ { @@ -49324,6 +52662,7 @@ _ACEOF fi + for ac_header in iconv.h do as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` @@ -49606,7 +52945,7 @@ $as_echo "$USE_NLS" >&6; } - GETTEXT_MACRO_VERSION=0.17 + GETTEXT_MACRO_VERSION=0.18 @@ -49614,15 +52953,14 @@ $as_echo "$USE_NLS" >&6; } # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh + # 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 # Find out how to test for executable files. Don't use a zero-byte file, @@ -49737,15 +53075,14 @@ fi # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh + # 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 # Find out how to test for executable files. Don't use a zero-byte file, @@ -49815,15 +53152,14 @@ fi # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh + # 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 # Find out how to test for executable files. Don't use a zero-byte file, @@ -49911,6 +53247,7 @@ fi + { $as_echo "$as_me:$LINENO: checking for CFPreferencesCopyAppValue" >&5 @@ -50096,15 +53433,19 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include $gt_revision_test_code extern int _nl_msg_cat_cntr; extern int *_nl_domain_bindings; + int main () { + bindtextdomain ("", ""); return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings + ; return 0; } @@ -50192,14 +53533,16 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include #include + int main () { iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); ; return 0; } @@ -50245,14 +53588,16 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include #include + int main () { iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); ; return 0; } @@ -50303,15 +53648,17 @@ if test "${am_cv_func_iconv_works+set}" = set; then $as_echo_n "(cached) " >&6 else - am_save_LIBS="$LIBS" + am_save_LIBS="$LIBS" if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" fi if test "$cross_compiling" = yes; then - case "$host_os" in + + case "$host_os" in aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; *) am_cv_func_iconv_works="guessing yes" ;; esac + else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -50362,6 +53709,24 @@ int main () return 1; } } + /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ + { + iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); + if (cd_88591_to_utf8 != (iconv_t)(-1)) + { + static const char input[] = "\304"; + static char buf[2] = { (char)0xDE, (char)0xAD }; + const char *inptr = input; + size_t inbytesleft = 1; + char *outptr = buf; + size_t outbytesleft = 1; + size_t res = iconv (cd_88591_to_utf8, + (char **) &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) + return 1; + } + } #if 0 /* This bug could be worked around by the caller. */ /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ { @@ -50539,7 +53904,7 @@ fi done if test -z "$already_handled"; then names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` eval value=\"\$HAVE_LIB$uppername\" if test -n "$value"; then if test "$value" = yes; then @@ -50941,6 +54306,7 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include $gt_revision_test_code extern int _nl_msg_cat_cntr; @@ -50949,11 +54315,14 @@ extern "C" #endif const char *_nl_expand_alias (const char *); + int main () { + bindtextdomain ("", ""); return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") + ; return 0; } @@ -50998,6 +54367,7 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ + #include $gt_revision_test_code extern int _nl_msg_cat_cntr; @@ -51006,11 +54376,14 @@ extern "C" #endif const char *_nl_expand_alias (const char *); + int main () { + bindtextdomain ("", ""); return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") + ; return 0; } @@ -51037,8 +54410,8 @@ $as_echo "$ac_try_echo") >&5 $as_test_x conftest$ac_exeext }; then LIBINTL="$LIBINTL $LIBICONV" - LTLIBINTL="$LTLIBINTL $LTLIBICONV" - eval "$gt_func_gnugettext_libintl=yes" + LTLIBINTL="$LTLIBINTL $LTLIBICONV" + eval "$gt_func_gnugettext_libintl=yes" else $as_echo "$as_me: failed program was:" >&5 @@ -51326,6 +54699,13 @@ if test -z "${GL_COND_LIBTOOL_TRUE}" && test -z "${GL_COND_LIBTOOL_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"GL_COND_LIBTOOL\" was never defined. Usually this means the macro was only invoked conditionally." >&5 $as_echo "$as_me: error: conditional \"GL_COND_LIBTOOL\" was never defined. +Usually this means the macro was only invoked conditionally." >&2;} + { (exit 1); exit 1; }; } +fi +if test -z "${LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE}" && test -z "${LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE}"; then + { { $as_echo "$as_me:$LINENO: error: conditional \"LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH\" was never defined. +Usually this means the macro was only invoked conditionally." >&5 +$as_echo "$as_me: error: conditional \"LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi @@ -51683,7 +55063,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by GNU tar $as_me 1.23, which was +This file was extended by GNU tar $as_me 1.24, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -51746,7 +55126,7 @@ Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -GNU tar config.status 1.23 +GNU tar config.status 1.24 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/configure.ac b/configure.ac index 5535b70..1de1ed3 100644 --- a/configure.ac +++ b/configure.ac @@ -19,12 +19,12 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. -AC_INIT([GNU tar], [1.23], [bug-tar@gnu.org]) +AC_INIT([GNU tar], [1.24], [bug-tar@gnu.org]) AC_CONFIG_SRCDIR([src/tar.c]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_HEADERS([config.h]) AC_PREREQ([2.63]) -AM_INIT_AUTOMAKE([1.11 gnits tar-ustar dist-bzip2 dist-shar std-options silent-rules]) +AM_INIT_AUTOMAKE([1.11 gnits tar-ustar dist-bzip2 dist-xz dist-shar std-options silent-rules]) # Enable silent rules by default: AM_SILENT_RULES([yes]) @@ -40,8 +40,8 @@ AC_ISC_POSIX AC_C_INLINE AC_CHECK_HEADERS_ONCE(fcntl.h linux/fd.h memory.h net/errno.h \ - sgtty.h string.h stropts.h \ - sys/param.h sys/device.h sys/filio.h sys/gentape.h \ + sgtty.h string.h \ + sys/param.h sys/device.h sys/gentape.h \ sys/inet.h sys/io/trioctl.h \ sys/mtio.h sys/time.h sys/tprintf.h sys/tape.h \ unistd.h locale.h) @@ -90,7 +90,7 @@ gl_INIT # paxutils modules tar_PAXUTILS -AC_CHECK_FUNCS(fsync getdtablesize lstat mkfifo readlink symlink setlocale utimes) +AC_CHECK_FUNCS_ONCE([fchmod fchown fsync lstat mkfifo readlink symlink]) AC_CHECK_DECLS([getgrgid],,, [#include ]) AC_CHECK_DECLS([getpwuid],,, [#include ]) AC_CHECK_DECLS([time],,, [#include ]) diff --git a/doc/Makefile.am b/doc/Makefile.am index ec771ca..205a1ad 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -24,9 +24,9 @@ tar_TEXINFOS = \ fdl.texi\ freemanuals.texi\ genfile.texi\ - getdate.texi\ header.texi\ intern.texi\ + parse-datetime.texi\ rendition.texi\ snapshot.texi\ sparse.texi\ @@ -124,7 +124,7 @@ check-unrevised: all-check-docs: check-format check-options check-refs check-fixmes check-unrevised -check-docs: +check-docs: $(MAKE) -k all-check-docs # @@ -144,4 +144,3 @@ manual: MAKEINFO="$(MAKEINFO) $(MAKEINFOFLAGS)" \ TEXI2DVI="$(TEXI2DVI) -t @finalout" \ $(GENDOCS) --texi2html tar 'GNU tar manual' - diff --git a/doc/Makefile.in b/doc/Makefile.in index fe32c18..471f868 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -44,11 +44,11 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/argmatch.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/backupfile.m4 \ - $(top_srcdir)/m4/bison.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/canonicalize.m4 \ + $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/backupfile.m4 $(top_srcdir)/m4/bison.m4 \ + $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/canonicalize.m4 \ $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/chown.m4 \ - $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/cloexec.m4 \ $(top_srcdir)/m4/close-stream.m4 $(top_srcdir)/m4/close.m4 \ $(top_srcdir)/m4/closeout.m4 $(top_srcdir)/m4/codeset.m4 \ $(top_srcdir)/m4/d-ino.m4 $(top_srcdir)/m4/dirent-safer.m4 \ @@ -61,17 +61,17 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/fchdir.m4 $(top_srcdir)/m4/fclose.m4 \ $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopendir.m4 \ - $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpending.m4 \ - $(top_srcdir)/m4/fseeko.m4 $(top_srcdir)/m4/ftruncate.m4 \ + $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \ + $(top_srcdir)/m4/fpending.m4 $(top_srcdir)/m4/fseeko.m4 \ + $(top_srcdir)/m4/futimens.m4 \ $(top_srcdir)/m4/getcwd-abort-bug.m4 \ $(top_srcdir)/m4/getcwd-path-max.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdate.m4 $(top_srcdir)/m4/getdelim.m4 \ - $(top_srcdir)/m4/getdtablesize.m4 $(top_srcdir)/m4/getline.m4 \ - $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \ - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gettime.m4 \ - $(top_srcdir)/m4/gettimeofday.m4 $(top_srcdir)/m4/glibc21.m4 \ - $(top_srcdir)/m4/gnulib-common.m4 \ + $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ + $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ + $(top_srcdir)/m4/getpagesize.m4 $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \ + $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ $(top_srcdir)/m4/gnulib-comp.m4 $(top_srcdir)/m4/hash.m4 \ $(top_srcdir)/m4/human.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \ @@ -81,54 +81,61 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/lchown.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \ - $(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-zh.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \ - $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/malloc.m4 \ - $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/mbchar.m4 \ - $(top_srcdir)/m4/mbiter.m4 $(top_srcdir)/m4/mbrtowc.m4 \ - $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbsrtowcs.m4 \ - $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/memchr.m4 \ - $(top_srcdir)/m4/mempcpy.m4 $(top_srcdir)/m4/memrchr.m4 \ - $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkdtemp.m4 \ + $(top_srcdir)/m4/libunistring-base.m4 \ + $(top_srcdir)/m4/link-follow.m4 $(top_srcdir)/m4/link.m4 \ + $(top_srcdir)/m4/linkat.m4 $(top_srcdir)/m4/localcharset.m4 \ + $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ + $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \ + $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ + $(top_srcdir)/m4/mbchar.m4 $(top_srcdir)/m4/mbiter.m4 \ + $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ + $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ + $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ + $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mkdir.m4 \ + $(top_srcdir)/m4/mkdtemp.m4 $(top_srcdir)/m4/mkfifo.m4 \ + $(top_srcdir)/m4/mkfifoat.m4 $(top_srcdir)/m4/mknod.m4 \ $(top_srcdir)/m4/mktime.m4 $(top_srcdir)/m4/mmap-anon.m4 \ $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/modechange.m4 \ $(top_srcdir)/m4/multiarch.m4 $(top_srcdir)/m4/nl_langinfo.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/paxutils.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/priv-set.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/quote.m4 \ - $(top_srcdir)/m4/quotearg.m4 $(top_srcdir)/m4/rawmemchr.m4 \ - $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rmdir.m4 \ + $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/parse-datetime.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/paxutils.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/priv-set.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \ + $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/readlink.m4 \ + $(top_srcdir)/m4/readlinkat.m4 $(top_srcdir)/m4/realloc.m4 \ + $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rename.m4 \ + $(top_srcdir)/m4/renameat.m4 $(top_srcdir)/m4/rmdir.m4 \ $(top_srcdir)/m4/rmt.m4 $(top_srcdir)/m4/rpmatch.m4 \ $(top_srcdir)/m4/rtapelib.m4 $(top_srcdir)/m4/safe-read.m4 \ - $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/same.m4 \ - $(top_srcdir)/m4/save-cwd.m4 $(top_srcdir)/m4/savedir.m4 \ - $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/sleep.m4 $(top_srcdir)/m4/snprintf.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/stpcpy.m4 $(top_srcdir)/m4/strcase.m4 \ - $(top_srcdir)/m4/strchrnul.m4 $(top_srcdir)/m4/strdup.m4 \ - $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/string_h.m4 \ - $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strndup.m4 \ - $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoimax.m4 \ - $(top_srcdir)/m4/strtol.m4 $(top_srcdir)/m4/strtoll.m4 \ - $(top_srcdir)/m4/strtoul.m4 $(top_srcdir)/m4/strtoull.m4 \ - $(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/sys_stat_h.m4 \ - $(top_srcdir)/m4/sys_time_h.m4 $(top_srcdir)/m4/sysexits.m4 \ - $(top_srcdir)/m4/system.m4 $(top_srcdir)/m4/tempname.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/unistd-safer.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlink.m4 $(top_srcdir)/m4/unlinkdir.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/utimbuf.m4 \ - $(top_srcdir)/m4/utimens.m4 $(top_srcdir)/m4/utimes.m4 \ + $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/save-cwd.m4 \ + $(top_srcdir)/m4/savedir.m4 $(top_srcdir)/m4/setenv.m4 \ + $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ + $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \ + $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ + $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ + $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ + $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ + $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ + $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ + $(top_srcdir)/m4/strtoimax.m4 $(top_srcdir)/m4/strtol.m4 \ + $(top_srcdir)/m4/strtoll.m4 $(top_srcdir)/m4/strtoul.m4 \ + $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/strtoumax.m4 \ + $(top_srcdir)/m4/symlink.m4 $(top_srcdir)/m4/symlinkat.m4 \ + $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \ + $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/system.m4 \ + $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd-safer.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \ + $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/utimbuf.m4 $(top_srcdir)/m4/utimens.m4 \ + $(top_srcdir)/m4/utimensat.m4 $(top_srcdir)/m4/utimes.m4 \ $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/vasprintf.m4 \ $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/vsnprintf.m4 \ $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/wchar_h.m4 \ @@ -194,6 +201,7 @@ ALLOCA_H = @ALLOCA_H@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ +ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOM4TE = @AUTOM4TE@ @@ -291,6 +299,7 @@ GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ +GNULIB_GRANTPT = @GNULIB_GRANTPT@ GNULIB_IMAXABS = @GNULIB_IMAXABS@ GNULIB_IMAXDIV = @GNULIB_IMAXDIV@ GNULIB_LCHMOD = @GNULIB_LCHMOD@ @@ -346,10 +355,12 @@ GNULIB_POPEN = @GNULIB_POPEN@ GNULIB_PREAD = @GNULIB_PREAD@ GNULIB_PRINTF = @GNULIB_PRINTF@ GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ +GNULIB_PTSNAME = @GNULIB_PTSNAME@ GNULIB_PUTC = @GNULIB_PUTC@ GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ GNULIB_PUTENV = @GNULIB_PUTENV@ GNULIB_PUTS = @GNULIB_PUTS@ +GNULIB_PWRITE = @GNULIB_PWRITE@ GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ GNULIB_READLINK = @GNULIB_READLINK@ @@ -374,6 +385,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ GNULIB_STRDUP = @GNULIB_STRDUP@ GNULIB_STRERROR = @GNULIB_STRERROR@ +GNULIB_STRNCAT = @GNULIB_STRNCAT@ GNULIB_STRNDUP = @GNULIB_STRNDUP@ GNULIB_STRNLEN = @GNULIB_STRNLEN@ GNULIB_STRPBRK = @GNULIB_STRPBRK@ @@ -390,11 +402,16 @@ GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@ GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ GNULIB_SYMLINK = @GNULIB_SYMLINK@ GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ +GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ GNULIB_TIMEGM = @GNULIB_TIMEGM@ +GNULIB_TIME_R = @GNULIB_TIME_R@ +GNULIB_TMPFILE = @GNULIB_TMPFILE@ +GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@ GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ GNULIB_UNLINK = @GNULIB_UNLINK@ GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ +GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ GNULIB_UNSETENV = @GNULIB_UNSETENV@ GNULIB_USLEEP = @GNULIB_USLEEP@ GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ @@ -412,20 +429,23 @@ GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ GNULIB_WCTOB = @GNULIB_WCTOB@ GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ GNULIB_WRITE = @GNULIB_WRITE@ +GNULIB__EXIT = @GNULIB__EXIT@ GREP = @GREP@ HAVE_ALPHASORT = @HAVE_ALPHASORT@ HAVE_ATOLL = @HAVE_ATOLL@ HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_CALLOC_POSIX = @HAVE_CALLOC_POSIX@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ HAVE_CHOWN = @HAVE_CHOWN@ HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ +HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ +HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ +HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ @@ -433,7 +453,6 @@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR = @HAVE_DECL_STRERROR@ HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ @@ -449,12 +468,15 @@ HAVE_DUP2 = @HAVE_DUP2@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_FACCESSAT = @HAVE_FACCESSAT@ +HAVE_FCHDIR = @HAVE_FCHDIR@ HAVE_FCHMODAT = @HAVE_FCHMODAT@ HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ HAVE_FCNTL = @HAVE_FCNTL@ HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ +HAVE_FSEEKO = @HAVE_FSEEKO@ HAVE_FSTATAT = @HAVE_FSTATAT@ HAVE_FSYNC = @HAVE_FSYNC@ +HAVE_FTELLO = @HAVE_FTELLO@ HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ HAVE_FUTIMENS = @HAVE_FUTIMENS@ HAVE_GETDOMAINNAME = @HAVE_GETDOMAINNAME@ @@ -466,25 +488,29 @@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ -HAVE_GETUSERSHELL = @HAVE_GETUSERSHELL@ +HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ +HAVE_ISWBLANK = @HAVE_ISWBLANK@ HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ +HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ +HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ HAVE_LCHMOD = @HAVE_LCHMOD@ HAVE_LCHOWN = @HAVE_LCHOWN@ HAVE_LINK = @HAVE_LINK@ HAVE_LINKAT = @HAVE_LINKAT@ +HAVE_LOCALTIME_R = @HAVE_LOCALTIME_R@ HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MALLOC_POSIX = @HAVE_MALLOC_POSIX@ HAVE_MBRLEN = @HAVE_MBRLEN@ HAVE_MBRTOWC = @HAVE_MBRTOWC@ HAVE_MBSINIT = @HAVE_MBSINIT@ HAVE_MBSLEN = @HAVE_MBSLEN@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ +HAVE_MEMCHR = @HAVE_MEMCHR@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ @@ -494,18 +520,21 @@ HAVE_MKNOD = @HAVE_MKNOD@ HAVE_MKNODAT = @HAVE_MKNODAT@ HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ +HAVE_MKSTEMP = @HAVE_MKSTEMP@ HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ +HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ HAVE_OPENAT = @HAVE_OPENAT@ HAVE_OS_H = @HAVE_OS_H@ HAVE_PIPE2 = @HAVE_PIPE2@ HAVE_PREAD = @HAVE_PREAD@ +HAVE_PTSNAME = @HAVE_PTSNAME@ +HAVE_PWRITE = @HAVE_PWRITE@ HAVE_RANDOM_H = @HAVE_RANDOM_H@ HAVE_RANDOM_R = @HAVE_RANDOM_R@ HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ HAVE_READLINK = @HAVE_READLINK@ HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOC_POSIX = @HAVE_REALLOC_POSIX@ HAVE_REALPATH = @HAVE_REALPATH@ HAVE_RENAMEAT = @HAVE_RENAMEAT@ HAVE_RPMATCH = @HAVE_RPMATCH@ @@ -522,6 +551,7 @@ HAVE_STRCASECMP = @HAVE_STRCASECMP@ HAVE_STRCASESTR = @HAVE_STRCASESTR@ HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ HAVE_STRPBRK = @HAVE_STRPBRK@ +HAVE_STRPTIME = @HAVE_STRPTIME@ HAVE_STRSEP = @HAVE_STRSEP@ HAVE_STRTOD = @HAVE_STRTOD@ HAVE_STRTOLL = @HAVE_STRTOLL@ @@ -538,8 +568,11 @@ HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ +HAVE_TIMEGM = @HAVE_TIMEGM@ +HAVE_TTYNAME_R = @HAVE_TTYNAME_R@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ +HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_UNSETENV = @HAVE_UNSETENV@ HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -554,6 +587,7 @@ HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ HAVE_WINT_T = @HAVE_WINT_T@ HAVE__BOOL = @HAVE__BOOL@ +HAVE__EXIT = @HAVE__EXIT@ INCLUDE_NEXT = @INCLUDE_NEXT@ INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ INSTALL = @INSTALL@ @@ -572,6 +606,8 @@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ +LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ LIB_SETSOCKOPT = @LIB_SETSOCKOPT@ LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ @@ -638,21 +674,24 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ POSUB = @POSUB@ +PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@ +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ PU_RMT_PROG = @PU_RMT_PROG@ RANLIB = @RANLIB@ REPLACE_BTOWC = @REPLACE_BTOWC@ +REPLACE_CALLOC = @REPLACE_CALLOC@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ +REPLACE_DIRFD = @REPLACE_DIRFD@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_FCHDIR = @REPLACE_FCHDIR@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ @@ -675,6 +714,7 @@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ +REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ REPLACE_LCHOWN = @REPLACE_LCHOWN@ REPLACE_LINK = @REPLACE_LINK@ @@ -682,6 +722,7 @@ REPLACE_LINKAT = @REPLACE_LINKAT@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ +REPLACE_MALLOC = @REPLACE_MALLOC@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ @@ -707,7 +748,9 @@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PUTENV = @REPLACE_PUTENV@ +REPLACE_PWRITE = @REPLACE_PWRITE@ REPLACE_READLINK = @REPLACE_READLINK@ +REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -719,17 +762,21 @@ REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRDUP = @REPLACE_STRDUP@ REPLACE_STRERROR = @REPLACE_STRERROR@ +REPLACE_STRNCAT = @REPLACE_STRNCAT@ REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRPTIME = @REPLACE_STRPTIME@ +REPLACE_STRNLEN = @REPLACE_STRNLEN@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ REPLACE_STRSTR = @REPLACE_STRSTR@ REPLACE_STRTOD = @REPLACE_STRTOD@ REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TMPFILE = @REPLACE_TMPFILE@ +REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ REPLACE_UNLINK = @REPLACE_UNLINK@ REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ REPLACE_UNSETENV = @REPLACE_UNSETENV@ @@ -799,6 +846,7 @@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ +gltests_WITNESS = @gltests_WITNESS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -834,9 +882,9 @@ tar_TEXINFOS = \ fdl.texi\ freemanuals.texi\ genfile.texi\ - getdate.texi\ header.texi\ intern.texi\ + parse-datetime.texi\ rendition.texi\ snapshot.texi\ sparse.texi\ @@ -1367,7 +1415,7 @@ check-unrevised: all-check-docs: check-format check-options check-refs check-fixmes check-unrevised -check-docs: +check-docs: $(MAKE) -k all-check-docs # diff --git a/doc/dumpdir.texi b/doc/dumpdir.texi index faf9ca2..7af3ba7 100644 --- a/doc/dumpdir.texi +++ b/doc/dumpdir.texi @@ -16,7 +16,7 @@ dumped directory in special data blocks called @dfn{dumpdirs}. @noindent where @var{C} is one of the @dfn{control codes} described below, @var{filename} is the name of the file @var{C} operates upon, and -@samp{\0} represents a nul character (ASCII 0). The white space +@samp{\0} represents a nul character (ASCII 0). The white space characters were added for readability, real dumpdirs do not contain them. @@ -68,7 +68,7 @@ directory}. For example, consider the following scenario: @enumerate 1 @item Previous run dumped a directory @file{foo} which contained the -following three directories: +following three directories: @smallexample a @@ -93,7 +93,7 @@ New incremental dump was made. renaming @file{a} to @file{b} will destroy the existing directory. To correctly process it, @GNUTAR{} needs a temporary directory, so it creates the following dumpdir (newlines have been added for -readability): +readability): @smallexample @group @@ -114,7 +114,7 @@ work as usual, and, finally, the last command, @samp{R\0Tfoo/a\0} tells tar to rename the temporary directory to @file{foo/a}. The exact placement of a dumpdir in the archive depends on the -archive format (@pxref{Formats}): +archive format (@pxref{Formats}): @itemize @item PAX archives diff --git a/doc/fdl.texi b/doc/fdl.texi index fe78df8..fc19ddd 100644 --- a/doc/fdl.texi +++ b/doc/fdl.texi @@ -1,13 +1,12 @@ +@c The GNU Free Documentation License. +@center Version 1.3, 3 November 2008 -@node GNU Free Documentation License -@appendixsec GNU Free Documentation License - -@cindex FDL, GNU Free Documentation License -@center Version 1.2, November 2002 +@c This file is intended to be included within another document, +@c hence no sectioning command or @node. @display -Copyright @copyright{} 2000,2001,2002 Free Software Foundation, Inc. -51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA +Copyright @copyright{} 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. +@uref{http://fsf.org/} Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -93,16 +92,16 @@ An image format is not Transparent if used for any substantial amount of text. A copy that is not ``Transparent'' is called ``Opaque''. Examples of suitable formats for Transparent copies include plain -@sc{ascii} without markup, Texinfo input format, La@TeX{} input -format, @acronym{SGML} or @acronym{XML} using a publicly available -@acronym{DTD}, and standard-conforming simple @acronym{HTML}, -PostScript or @acronym{PDF} designed for human modification. Examples -of transparent image formats include @acronym{PNG}, @acronym{XCF} and -@acronym{JPG}. Opaque formats include proprietary formats that can be -read and edited only by proprietary word processors, @acronym{SGML} or -@acronym{XML} for which the @acronym{DTD} and/or processing tools are -not generally available, and the machine-generated @acronym{HTML}, -PostScript or @acronym{PDF} produced by some word processors for +ASCII without markup, Texinfo input format, La@TeX{} input +format, SGML or XML using a publicly available +DTD, and standard-conforming simple HTML, +PostScript or PDF designed for human modification. Examples +of transparent image formats include PNG, XCF and +JPG. Opaque formats include proprietary formats that can be +read and edited only by proprietary word processors, SGML or +XML for which the DTD and/or processing tools are +not generally available, and the machine-generated HTML, +PostScript or PDF produced by some word processors for output purposes only. The ``Title Page'' means, for a printed book, the title page itself, @@ -112,6 +111,9 @@ formats which do not have any title page as such, ``Title Page'' means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. +The ``publisher'' means any person or entity that distributes copies +of the Document to the public. + A section ``Entitled XYZ'' means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a @@ -380,13 +382,30 @@ title. @item TERMINATION -You may not copy, modify, sublicense, or distribute the Document except -as expressly provided for under this License. Any other attempt to -copy, modify, sublicense or distribute the Document is void, and will -automatically terminate your rights under this License. However, -parties who have received copies, or rights, from you under this -License will not have their licenses terminated so long as such -parties remain in full compliance. +You may not copy, modify, sublicense, or distribute the Document +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense, or distribute it is void, and +will automatically terminate your rights under this License. + +However, if you cease all violation of this License, then your license +from a particular copyright holder is reinstated (a) provisionally, +unless and until the copyright holder explicitly and finally +terminates your license, and (b) permanently, if the copyright holder +fails to notify you of the violation by some reasonable means prior to +60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, receipt of a copy of some or all of the same material does +not give you any rights to use it. @item FUTURE REVISIONS OF THIS LICENSE @@ -404,11 +423,46 @@ following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not -as a draft) by the Free Software Foundation. +as a draft) by the Free Software Foundation. If the Document +specifies that a proxy can decide which future versions of this +License can be used, that proxy's public statement of acceptance of a +version permanently authorizes you to choose that version for the +Document. + +@item +RELICENSING + +``Massive Multiauthor Collaboration Site'' (or ``MMC Site'') means any +World Wide Web server that publishes copyrightable works and also +provides prominent facilities for anybody to edit those works. A +public wiki that anybody can edit is an example of such a server. A +``Massive Multiauthor Collaboration'' (or ``MMC'') contained in the +site means any set of copyrightable works thus published on the MMC +site. + +``CC-BY-SA'' means the Creative Commons Attribution-Share Alike 3.0 +license published by Creative Commons Corporation, a not-for-profit +corporation with a principal place of business in San Francisco, +California, as well as future copyleft versions of that license +published by that same organization. + +``Incorporate'' means to publish or republish a Document, in whole or +in part, as part of another Document. + +An MMC is ``eligible for relicensing'' if it is licensed under this +License, and if all works that were first published under this License +somewhere other than this MMC, and subsequently incorporated in whole +or in part into the MMC, (1) had no cover texts or invariant sections, +and (2) were thus incorporated prior to November 1, 2008. + +The operator of an MMC Site may republish an MMC contained in the site +under CC-BY-SA on the same site at any time before August 1, 2009, +provided the MMC is eligible for relicensing. + @end enumerate @page -@appendixsubsec ADDENDUM: How to use this License for your documents +@heading ADDENDUM: How to use this License for your documents To use this License in a document you have written, include a copy of the License in the document and put the following copyright and @@ -418,7 +472,7 @@ license notices just after the title page: @group Copyright (C) @var{year} @var{your name}. Permission is granted to copy, distribute and/or modify this document - under the terms of the GNU Free Documentation License, Version 1.2 + under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU @@ -427,7 +481,7 @@ license notices just after the title page: @end smallexample If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, -replace the ``with...Texts.'' line with this: +replace the ``with@dots{}Texts.'' line with this: @smallexample @group diff --git a/doc/gendocs_template b/doc/gendocs_template index 2f989ed..1bdd5b0 100755 --- a/doc/gendocs_template +++ b/doc/gendocs_template @@ -36,7 +36,7 @@

The manual for %%PACKAGE%% is available in the following formats:

    -
  • HTML +
  • HTML (%%HTML_MONO_SIZE%%K bytes) - entirely on one web page.
  • HTML - with one web page per node.
  • @@ -49,7 +49,7 @@ chapter. %%ENDIF HTML_CHAPTER%%
  • HTML compressed - (%%HTML_MONO_GZ_SIZE%%K gzipped characters) - entirely on + (%%HTML_MONO_GZ_SIZE%%K gzipped characters) - entirely on one web page.
  • HTML compressed (%%HTML_NODE_TGZ_SIZE%%K gzipped tar file) - @@ -96,9 +96,9 @@ Return to the GNU Project home page.

    -Please send FSF & GNU inquiries to +Please send FSF & GNU inquiries to gnu@gnu.org. -There are also other ways to contact +There are also other ways to contact the FSF.
    Please send broken links and other corrections (or suggestions) to diff --git a/doc/intern.texi b/doc/intern.texi index 3580a7b..7a918c4 100644 --- a/doc/intern.texi +++ b/doc/intern.texi @@ -107,10 +107,10 @@ group permission could be copied from the @emph{other} permission. The @code{uid} and @code{gid} fields are the numeric user and group @acronym{ID} of the file owners, respectively. If the operating system does not support numeric user or group @acronym{ID}s, these fields should -be ignored. +be ignored. The @code{size} field is the size of the file in bytes; linked files -are archived with this field specified as zero. +are archived with this field specified as zero. The @code{mtime} field is the data modification time of the file at the time it was archived. It is the ASCII representation of the octal @@ -330,4 +330,3 @@ checksum error. @node Dumpdir @unnumberedsec Dumpdir @include dumpdir.texi - diff --git a/doc/mastermenu.el b/doc/mastermenu.el index 5f1dbe1..db8c631 100644 --- a/doc/mastermenu.el +++ b/doc/mastermenu.el @@ -27,11 +27,11 @@ ;; This file redefines texinfo-master-menu-list so that it takes into ;; account included files. -;; Known bugs: @menu without previous sectioning command will inherit +;; Known bugs: @menu without previous sectioning command will inherit ;; documentation string from the previous menu. However, since such a ;; menu is illegal in a texinfo file, we can live with it. -(require 'texinfo) +(require 'texinfo) (require 'texnfo-upd) (defun texinfo-master-menu-list-recursive (title) diff --git a/doc/getdate.texi b/doc/parse-datetime.texi similarity index 95% rename from doc/getdate.texi rename to doc/parse-datetime.texi index 48e8b68..8218d9f 100644 --- a/doc/getdate.texi +++ b/doc/parse-datetime.texi @@ -14,7 +14,7 @@ @chapter Date input formats @cindex date input formats -@findex get_date +@findex parse_datetime First, a quote: @@ -45,7 +45,7 @@ or a week from Sunday, with feelings of helpless confusion. @dots{} This section describes the textual date representations that @sc{gnu} programs accept. These are the strings you, as a user, can supply as arguments to the various programs. The C interface (via the -@code{get_date} function) is not described here. +@code{parse_datetime} function) is not described here. @menu * General date syntax:: Common rules. @@ -57,7 +57,7 @@ arguments to the various programs. The C interface (via the * Pure numbers in date strings:: 19931219, 1440. * Seconds since the Epoch:: @@1078100502. * Specifying time zone rules:: TZ="America/New_York", TZ="UTC0". -* Authors of get_date:: Bellovin, Eggert, Salz, Berets, et al. +* Authors of parse_datetime:: Bellovin, Eggert, Salz, Berets, et al. @end menu @@ -530,10 +530,12 @@ daylight saving time; other rules can specify simple daylight saving regimes. @xref{TZ Variable,, Specifying the Time Zone with @code{TZ}, libc, The GNU C Library}. -@node Authors of get_date -@section Authors of @code{get_date} +@node Authors of parse_datetime +@section Authors of @code{parse_datetime} +@c the anchor keeps the old node name, to try to avoid breaking links +@anchor{Authors of get_date} -@cindex authors of @code{get_date} +@cindex authors of @code{parse_datetime} @cindex Bellovin, Steven M. @cindex Salz, Rich @@ -541,16 +543,22 @@ libc, The GNU C Library}. @cindex MacKenzie, David @cindex Meyering, Jim @cindex Eggert, Paul -@code{get_date} was originally implemented by Steven M. Bellovin +@code{parse_datetime} started life as @code{getdate}, as originally +implemented by Steven M. Bellovin (@email{smb@@research.att.com}) while at the University of North Carolina at Chapel Hill. The code was later tweaked by a couple of people on Usenet, then completely overhauled by Rich $alz (@email{rsalz@@bbn.com}) and Jim Berets (@email{jberets@@bbn.com}) in August, 1990. Various revisions for the @sc{gnu} system were made by David MacKenzie, Jim Meyering, -Paul Eggert and others. +Paul Eggert and others, including renaming it to @code{get_date} to +avoid a conflict with the alternative Posix function @code{getdate}, +and a later rename to @code{parse_datetime}. The Posix function +@code{getdate} can parse more locale-specific dates using +@code{strptime}, but relies on an environment variable and external +file, and lacks the thread-safety of @code{parse_datetime}. @cindex Pinard, F. @cindex Berry, K. This chapter was originally produced by Fran@,{c}ois Pinard -(@email{pinard@@iro.umontreal.ca}) from the @file{getdate.y} source code, +(@email{pinard@@iro.umontreal.ca}) from the @file{parse_datetime.y} source code, and then edited by K.@: Berry (@email{kb@@cs.umb.edu}). diff --git a/doc/snapshot.texi b/doc/snapshot.texi index 656fd18..5607a08 100644 --- a/doc/snapshot.texi +++ b/doc/snapshot.texi @@ -137,4 +137,3 @@ previous versions it is not quoted; @end enumerate @c End of snapshot.texi - diff --git a/doc/sparse.texi b/doc/sparse.texi index d48375c..bd8f75f 100644 --- a/doc/sparse.texi +++ b/doc/sparse.texi @@ -232,4 +232,3 @@ into a separate directory. Then, using a simple program it would be possible to expand the file to its original form even without @GNUTAR{}. @xref{Sparse Recovery}, for the detailed information on how to extract sparse members without @GNUTAR{}. - diff --git a/doc/stamp-vti b/doc/stamp-vti index 591fd0e..f38c5d8 100644 --- a/doc/stamp-vti +++ b/doc/stamp-vti @@ -1,4 +1,4 @@ -@set UPDATED 9 March 2010 -@set UPDATED-MONTH March 2010 -@set EDITION 1.23 -@set VERSION 1.23 +@set UPDATED 24 October 2010 +@set UPDATED-MONTH October 2010 +@set EDITION 1.24 +@set VERSION 1.24 diff --git a/doc/tar-snapshot-edit.texi b/doc/tar-snapshot-edit.texi index 9c930ef..ed9640c 100644 --- a/doc/tar-snapshot-edit.texi +++ b/doc/tar-snapshot-edit.texi @@ -55,4 +55,3 @@ file version 2 $ @kbd{tar-snapshot-edit -b -r 0x0306-0x4500 /var/backup/snap.a} file version 2 @end smallexample - diff --git a/doc/tar.info b/doc/tar.info index 0ac94fe..b2e7b91 100644 --- a/doc/tar.info +++ b/doc/tar.info @@ -1,6 +1,6 @@ This is tar.info, produced by makeinfo version 4.13 from tar.texi. -This manual is for GNU `tar' (version 1.23, 9 March 2010), which +This manual is for GNU `tar' (version 1.24, 24 October 2010), which creates and extracts files from archives. Copyright (C) 1992, 1994, 1995, 1996, 1997, 1999, 2000, 2001, 2003, @@ -8,9 +8,9 @@ creates and extracts files from archives. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, - Version 1.1 or any later version published by the Free Software + Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with the Front-Cover Texts - being "A GNU Manual," and with the Back-Cover Texts as in (a) + being "A GNU Manual", and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled "GNU Free Documentation License". @@ -30,385 +30,400 @@ END-INFO-DIR-ENTRY  Indirect: -tar.info-1: 1252 -tar.info-2: 299753 +tar.info-1: 1255 +tar.info-2: 301175  Tag Table: (Indirect) -Node: Top1252 -Node: Introduction10541 -Node: Book Contents11328 -Node: Definitions13500 -Node: What tar Does15303 -Node: Naming tar Archives18069 -Node: Authors18789 -Node: Reports20602 -Node: Tutorial20959 -Node: assumptions21772 -Node: stylistic conventions24247 -Node: basic tar options24690 -Node: frequent operations28328 -Node: Two Frequent Options28980 -Node: file tutorial29611 -Node: verbose tutorial30968 -Ref: verbose member listing33182 -Node: help tutorial35935 -Node: create36289 -Node: prepare for examples37790 -Node: Creating the archive39559 -Node: create verbose42391 -Node: short create43211 -Node: create dir45964 -Node: list48672 -Ref: listing member and file names49946 -Node: list dir52260 -Node: extract53249 -Node: extracting archives54363 -Node: extracting files54853 -Ref: extracting files-Footnote-157500 -Node: extract dir57880 -Node: extracting untrusted archives60263 -Node: failing commands61142 -Node: going further62236 -Node: tar invocation62449 -Node: Synopsis63911 -Node: using tar options68866 -Ref: TAR_OPTIONS70443 -Node: Styles71460 -Ref: Styles-Footnote-172959 -Node: Long Options73215 -Node: Short Options75387 -Ref: Short Options-Footnote-177195 -Node: Old Options77412 -Ref: Old Options-Footnote-180299 -Node: Mixing80469 -Ref: Mixing-Footnote-182835 -Node: All Options82955 -Node: Operation Summary83560 -Ref: --append83680 -Ref: --catenate83760 -Ref: --compare83831 -Ref: --concatenate84034 -Ref: --create84144 -Ref: --delete84212 -Ref: --diff84326 -Ref: --extract84382 -Ref: --get84484 -Ref: --list84542 -Ref: --update84610 -Node: Option Summary84820 -Ref: --absolute-names84975 -Ref: --after-date85153 -Ref: --anchored85205 -Ref: --atime-preserve85338 -Ref: --auto-compress87858 -Ref: --backup88085 -Ref: --block-number88276 -Ref: --blocking-factor88450 -Ref: --bzip288602 -Ref: --check-device88709 -Ref: --checkpoint88904 -Ref: --checkpoint-action89346 -Ref: --check-links90497 -Ref: --compress90774 -Ref: --uncompress90774 -Ref: --confirmation90978 -Ref: --delay-directory-restore91046 -Ref: --dereference91247 -Ref: --directory91432 -Ref: --exclude91685 -Ref: --exclude-backups91804 -Ref: --exclude-from91894 -Ref: --exclude-caches92040 -Ref: --exclude-caches-under92248 -Ref: --exclude-caches-all92426 -Ref: --exclude-tag92555 -Ref: --exclude-tag-under92726 -Ref: --exclude-tag-all92916 -Ref: --exclude-vcs93045 -Ref: --file93211 -Ref: --files-from93411 -Ref: --force-local93614 -Ref: --format93805 -Ref: --group94475 -Ref: --gzip94823 -Ref: --gunzip94823 -Ref: --ungzip94823 -Ref: --hard-dereference95046 -Ref: --help95233 -Ref: --ignore-case95367 -Ref: --ignore-command-error95494 -Ref: --ignore-failed-read95605 -Ref: --ignore-zeros95735 -Ref: --incremental95880 -Ref: --index-file96145 -Ref: --info-script96230 -Ref: --new-volume-script96230 -Ref: --interactive96551 -Ref: --keep-newer-files96763 -Ref: --keep-old-files96905 -Ref: --label97036 -Ref: --level97324 -Ref: --listed-incremental97765 -Ref: --lzip98129 -Ref: --lzma98229 -Ref: --mode98429 -Ref: --mtime98720 -Ref: --multi-volume99161 -Ref: --newer99365 -Ref: --newer-mtime99643 -Ref: --no-anchored99867 -Ref: --no-auto-compress100004 -Ref: --no-check-device100155 -Ref: --no-delay-directory-restore100338 -Ref: --no-ignore-case100591 -Ref: --no-ignore-command-error100684 -Ref: --no-null100839 -Ref: --no-overwrite-dir101044 -Ref: --no-quote-chars101187 -Ref: --no-recursion101368 -Ref: --no-same-owner101473 -Ref: --no-same-permissions101656 -Ref: --no-seek101858 -Ref: --no-unquote102076 -Ref: --no-wildcards102214 -Ref: --no-wildcards-match-slash102298 -Ref: --null102400 -Ref: --numeric-owner102628 -Ref: --occurrence103279 -Ref: --old-archive103846 -Ref: --one-file-system103895 -Ref: --overwrite104073 -Ref: --overwrite-dir104215 -Ref: --owner104360 -Ref: --pax-option104739 -Ref: --portability105046 -Ref: --posix105111 -Ref: --preserve105153 -Ref: --preserve-order105291 -Ref: --preserve-permissions105355 -Ref: --same-permissions105355 -Ref: --quote-chars105769 -Ref: --quoting-style105922 -Ref: --read-full-records106243 -Ref: --record-size106408 -Ref: --recursion106539 -Ref: --recursive-unlink106642 -Ref: --remove-files106809 -Ref: --restrict106955 -Ref: --rmt-command107143 -Ref: --rsh-command107284 -Ref: --same-order107406 -Ref: --same-owner107698 -Ref: --seek108075 -Ref: --show-defaults108444 -Ref: --show-omitted-dirs108934 -Ref: --show-transformed-names109088 -Ref: --show-stored-names109088 -Ref: --sparse109477 -Ref: --sparse-version109616 -Ref: --starting-file109840 -Ref: --strip-components110029 -Ref: --suffix110341 -Ref: --tape-length110460 -Ref: --test-label110615 -Ref: --to-command110767 -Ref: --to-stdout110926 -Ref: --totals111079 -Ref: --touch111310 -Ref: --transform111512 -Ref: --xform111512 -Ref: --unlink-first112123 -Ref: --unquote112291 -Ref: --use-compress-program112398 -Ref: --utc112576 -Ref: --verbose112669 -Ref: --verify112921 -Ref: --version113039 -Ref: --volno-file113211 -Ref: --warning113398 -Ref: --wildcards113575 -Ref: --wildcards-match-slash113695 -Ref: --xz113787 -Ref: Option Summary-Footnote-1113918 -Node: Short Option Summary114136 -Node: help116337 -Ref: help-Footnote-1120221 -Node: defaults120432 -Node: verbose121451 -Ref: totals123752 -Ref: Progress information125342 -Ref: show-omitted-dirs126321 -Ref: block-number126740 -Ref: verbose-Footnote-1127767 -Node: checkpoints127874 -Node: warnings133268 -Node: interactive135992 -Node: operations138074 -Node: Basic tar138333 -Ref: Basic tar-Footnote-1141437 -Node: Advanced tar141581 -Node: Operations142426 -Node: append144325 -Ref: append-Footnote-1147420 -Node: appending files147583 -Node: multiple149301 -Node: update151991 -Node: how to update152967 -Node: concatenate154749 -Ref: concatenate-Footnote-1157997 -Node: delete158135 -Node: compare159908 -Node: create options161336 -Node: override161794 -Node: Ignore Failed Read165226 -Node: extract options165446 -Node: Reading166279 -Node: read full records167779 -Node: Ignore Zeros168115 -Node: Writing169106 -Node: Dealing with Old Files169663 -Node: Overwrite Old Files172090 -Node: Keep Old Files173547 -Node: Keep Newer Files174057 -Node: Unlink First174347 -Node: Recursive Unlink174751 -Node: Data Modification Times175304 -Node: Setting Access Permissions176114 -Node: Directory Modification Times and Permissions176746 -Node: Writing to Standard Output180358 -Node: Writing to an External Program181893 -Node: remove files185032 -Node: Scarce185225 -Node: Starting File185473 -Node: Same Order186293 -Node: backup187129 -Node: Applications190215 -Node: looking ahead191678 -Node: Backups192504 -Node: Full Dumps194085 -Node: Incremental Dumps195891 -Ref: --level=0198805 -Ref: device numbers199338 -Ref: incremental-op203669 -Ref: Incremental Dumps-Footnote-1204043 -Ref: Incremental Dumps-Footnote-2204193 -Node: Backup Levels204681 -Node: Backup Parameters207068 -Node: General-Purpose Variables208249 -Ref: RSH211410 -Node: Magnetic Tape Control213289 -Node: User Hooks214627 -Node: backup-specs example215956 -Node: Scripted Backups217099 -Ref: Scripted Backups-Footnote-1219962 -Node: Scripted Restoration220346 -Node: Choosing222957 -Node: file224079 -Ref: remote-dev226715 -Ref: local and remote archives227100 -Node: Selecting Archive Members228131 -Ref: input name quoting228812 -Node: files230798 -Ref: files-Footnote-1234072 -Node: nul234230 -Node: exclude236629 -Node: problems with exclude241803 -Node: wildcards243848 -Node: controlling pattern-matching246432 -Ref: controlling pattern-matching-Footnote-1250422 -Node: quoting styles250638 -Ref: escape sequences250984 -Node: transform257119 -Ref: show-transformed-names259110 -Node: after265298 -Node: recurse268900 -Node: one271624 -Node: directory273057 -Node: absolute276119 -Ref: absolute-Footnote-1279199 -Node: Date input formats279550 -Node: General date syntax281866 -Node: Calendar date items284817 -Node: Time of day items286814 -Node: Time zone items289010 -Node: Day of week items290244 -Node: Relative items in date strings291233 -Node: Pure numbers in date strings294035 -Node: Seconds since the Epoch295016 -Node: Specifying time zone rules296637 -Node: Authors of get_date299001 -Node: Formats299753 -Node: Compression304441 -Node: gzip304733 -Ref: auto-compress307999 -Ref: gzip-Footnote-1312247 -Node: sparse312296 -Node: Attributes315350 -Node: Portability321171 -Node: Portable Names322657 -Node: dereference323362 -Node: hard links324763 -Ref: hard links-Footnote-1327661 -Node: old327717 -Node: ustar328901 -Node: gnu329492 -Node: posix330369 -Node: PAX keywords330850 -Node: Checksumming336460 -Node: Large or Negative Values338386 -Node: Other Tars339986 -Node: Split Recovery341122 -Node: Sparse Recovery344854 -Ref: extracting sparse v.0.x348487 -Ref: Sparse Recovery-Footnote-1351776 -Ref: Sparse Recovery-Footnote-2351799 -Node: cpio351920 -Node: Media356677 -Node: Device358607 -Node: Remote Tape Server363681 -Node: Common Problems and Solutions367404 -Node: Blocking367796 -Node: Format Variations374240 -Node: Blocking Factor375152 -Node: Many386804 -Node: Tape Positioning390598 -Node: mt392471 -Node: Using Multiple Tapes394026 -Node: Multi-Volume Archives396092 -Ref: tape-length397577 -Ref: change volume prompt397881 -Ref: volno-file398752 -Ref: info-script399304 -Ref: Multi-Volume Archives-Footnote-1404491 -Ref: Multi-Volume Archives-Footnote-2404601 -Node: Tape Files404669 -Node: Tarcat406151 -Node: label407196 -Ref: --test-label option408826 -Ref: label-Footnote-1411870 -Node: verify412105 -Node: Write Protection415405 -Node: Changes416235 -Node: Configuring Help Summary419831 -Node: Fixing Snapshot Files426332 -Node: Tar Internals428518 -Node: Standard428850 -Node: Extensions451051 -Node: Sparse Formats453611 -Node: Old GNU Format454901 -Node: PAX 0457302 -Node: PAX 1460433 -Node: Snapshot Files462171 -Node: Dumpdir466632 -Node: Genfile469878 -Node: Generate Mode470971 -Node: Status Mode475268 -Node: Exec Mode477067 -Node: Free Software Needs Free Documentation479812 -Node: Copying This Manual484783 -Node: GNU Free Documentation License485065 -Node: Index of Command Line Options507472 -Node: Index532883 +Node: Top1255 +Node: Introduction10671 +Node: Book Contents11458 +Node: Definitions13630 +Node: What tar Does15433 +Node: Naming tar Archives18199 +Node: Authors18919 +Node: Reports20732 +Node: Tutorial21089 +Node: assumptions21902 +Node: stylistic conventions24377 +Node: basic tar options24820 +Node: frequent operations28458 +Node: Two Frequent Options29110 +Node: file tutorial29741 +Node: verbose tutorial31098 +Ref: verbose member listing33312 +Node: help tutorial36065 +Node: create36419 +Node: prepare for examples37920 +Node: Creating the archive39689 +Node: create verbose42521 +Node: short create43341 +Node: create dir46094 +Node: list48802 +Ref: listing member and file names50076 +Node: list dir52390 +Node: extract53379 +Node: extracting archives54493 +Node: extracting files54983 +Ref: extracting files-Footnote-157630 +Node: extract dir58010 +Node: extracting untrusted archives60393 +Node: failing commands61272 +Node: going further62366 +Node: tar invocation62579 +Node: Synopsis64041 +Node: using tar options68996 +Ref: TAR_OPTIONS70573 +Node: Styles71590 +Ref: Styles-Footnote-173089 +Node: Long Options73345 +Node: Short Options75517 +Ref: Short Options-Footnote-177325 +Node: Old Options77542 +Ref: Old Options-Footnote-180429 +Node: Mixing80599 +Ref: Mixing-Footnote-182965 +Node: All Options83085 +Node: Operation Summary83690 +Ref: --append83810 +Ref: --catenate83890 +Ref: --compare83961 +Ref: --concatenate84164 +Ref: --create84274 +Ref: --delete84342 +Ref: --diff84456 +Ref: --extract84512 +Ref: --get84614 +Ref: --list84672 +Ref: --update84740 +Node: Option Summary84950 +Ref: --absolute-names85105 +Ref: --after-date85283 +Ref: --anchored85335 +Ref: --atime-preserve85468 +Ref: --auto-compress87988 +Ref: --backup88215 +Ref: --block-number88406 +Ref: --blocking-factor88580 +Ref: --bzip288732 +Ref: --check-device88839 +Ref: --checkpoint89034 +Ref: --checkpoint-action89476 +Ref: --check-links90627 +Ref: --compress90904 +Ref: --uncompress90904 +Ref: --confirmation91108 +Ref: --delay-directory-restore91176 +Ref: --dereference91377 +Ref: --directory91571 +Ref: --exclude91824 +Ref: --exclude-backups91943 +Ref: --exclude-from92033 +Ref: --exclude-caches92179 +Ref: --exclude-caches-under92387 +Ref: --exclude-caches-all92565 +Ref: --exclude-tag92694 +Ref: --exclude-tag-under92865 +Ref: --exclude-tag-all93055 +Ref: --exclude-vcs93184 +Ref: --file93350 +Ref: --files-from93550 +Ref: --force-local93753 +Ref: --format93944 +Ref: --full-time94614 +Ref: --group95294 +Ref: --gzip95642 +Ref: --gunzip95642 +Ref: --ungzip95642 +Ref: --hard-dereference95865 +Ref: --help96052 +Ref: --ignore-case96186 +Ref: --ignore-command-error96313 +Ref: --ignore-failed-read96424 +Ref: --ignore-zeros96554 +Ref: --incremental96699 +Ref: --index-file96964 +Ref: --info-script97049 +Ref: --new-volume-script97049 +Ref: --interactive97370 +Ref: --keep-newer-files97582 +Ref: --keep-old-files97724 +Ref: --label97855 +Ref: --level98143 +Ref: --listed-incremental98584 +Ref: --lzip98948 +Ref: --lzma99048 +Ref: --mode99248 +Ref: --mtime99539 +Ref: --multi-volume99980 +Ref: --newer100184 +Ref: --newer-mtime100462 +Ref: --no-anchored100686 +Ref: --no-auto-compress100823 +Ref: --no-check-device100974 +Ref: --no-delay-directory-restore101157 +Ref: --no-ignore-case101410 +Ref: --no-ignore-command-error101503 +Ref: --no-null101658 +Ref: --no-overwrite-dir101863 +Ref: --no-quote-chars102006 +Ref: --no-recursion102187 +Ref: --no-same-owner102292 +Ref: --no-same-permissions102475 +Ref: --no-seek102677 +Ref: --no-unquote102895 +Ref: --no-wildcards103033 +Ref: --no-wildcards-match-slash103117 +Ref: --null103219 +Ref: --numeric-owner103447 +Ref: --occurrence104098 +Ref: --old-archive104665 +Ref: --one-file-system104714 +Ref: --overwrite104892 +Ref: --overwrite-dir105034 +Ref: --owner105179 +Ref: --pax-option105558 +Ref: --portability105865 +Ref: --posix105930 +Ref: --preserve105972 +Ref: --preserve-order106110 +Ref: --preserve-permissions106174 +Ref: --same-permissions106174 +Ref: --quote-chars106588 +Ref: --quoting-style106741 +Ref: --read-full-records107062 +Ref: --record-size107227 +Ref: --recursion107571 +Ref: --recursive-unlink107674 +Ref: --remove-files107841 +Ref: --restrict107987 +Ref: --rmt-command108175 +Ref: --rsh-command108316 +Ref: --same-order108438 +Ref: --same-owner108730 +Ref: --seek109107 +Ref: --show-defaults109476 +Ref: --show-omitted-dirs109966 +Ref: --show-transformed-names110120 +Ref: --show-stored-names110120 +Ref: --sparse110509 +Ref: --sparse-version110648 +Ref: --starting-file110872 +Ref: --strip-components111061 +Ref: --suffix111373 +Ref: --tape-length111492 +Ref: --test-label111907 +Ref: --to-command112059 +Ref: --to-stdout112218 +Ref: --totals112371 +Ref: --touch112602 +Ref: --transform112804 +Ref: --xform112804 +Ref: --unlink-first113415 +Ref: --unquote113583 +Ref: --use-compress-program113690 +Ref: --utc113868 +Ref: --verbose113961 +Ref: --verify114213 +Ref: --version114331 +Ref: --volno-file114503 +Ref: --warning114690 +Ref: --wildcards114867 +Ref: --wildcards-match-slash114987 +Ref: --xz115079 +Ref: Option Summary-Footnote-1115210 +Node: Short Option Summary115428 +Node: help117629 +Ref: help-Footnote-1121513 +Node: defaults121724 +Node: verbose122743 +Ref: totals125044 +Ref: Progress information126634 +Ref: show-omitted-dirs127613 +Ref: block-number128032 +Ref: verbose-Footnote-1129059 +Node: checkpoints129166 +Node: warnings134560 +Node: interactive137284 +Node: operations139366 +Node: Basic tar139625 +Ref: Basic tar-Footnote-1142729 +Node: Advanced tar142873 +Node: Operations143718 +Node: append145617 +Ref: append-Footnote-1148712 +Node: appending files148875 +Node: multiple150593 +Node: update153285 +Node: how to update154261 +Node: concatenate156045 +Ref: concatenate-Footnote-1159293 +Node: delete159436 +Node: compare161209 +Node: create options162641 +Node: override163099 +Node: Ignore Failed Read166527 +Node: extract options166747 +Node: Reading167580 +Node: read full records169080 +Node: Ignore Zeros169416 +Node: Writing170407 +Node: Dealing with Old Files170964 +Node: Overwrite Old Files173391 +Node: Keep Old Files174848 +Node: Keep Newer Files175358 +Node: Unlink First175648 +Node: Recursive Unlink176052 +Node: Data Modification Times176605 +Node: Setting Access Permissions177415 +Node: Directory Modification Times and Permissions178047 +Node: Writing to Standard Output181659 +Node: Writing to an External Program183194 +Node: remove files186333 +Node: Scarce186526 +Node: Starting File186774 +Node: Same Order187575 +Node: backup188411 +Node: Applications191497 +Node: looking ahead192958 +Node: Backups193784 +Node: Full Dumps195365 +Node: Incremental Dumps197171 +Ref: --level=0200085 +Ref: device numbers200618 +Ref: incremental-op204596 +Ref: Incremental Dumps-Footnote-1204970 +Ref: Incremental Dumps-Footnote-2205120 +Node: Backup Levels205608 +Node: Backup Parameters207995 +Node: General-Purpose Variables209176 +Ref: RSH212337 +Node: Magnetic Tape Control214216 +Node: User Hooks215554 +Node: backup-specs example216883 +Node: Scripted Backups218026 +Ref: Scripted Backups-Footnote-1220889 +Node: Scripted Restoration221273 +Node: Choosing223884 +Node: file225006 +Ref: remote-dev227642 +Ref: local and remote archives228027 +Node: Selecting Archive Members229058 +Ref: input name quoting229739 +Node: files231725 +Ref: files-Footnote-1234998 +Node: nul235156 +Node: exclude237555 +Node: problems with exclude242729 +Node: wildcards244774 +Node: controlling pattern-matching247358 +Ref: controlling pattern-matching-Footnote-1251348 +Node: quoting styles251564 +Ref: escape sequences251910 +Node: transform258045 +Ref: show-transformed-names260036 +Node: after266227 +Node: recurse269829 +Node: one272553 +Node: directory273986 +Node: absolute277048 +Ref: absolute-Footnote-1280219 +Node: Date input formats280570 +Node: General date syntax282892 +Node: Calendar date items285843 +Node: Time of day items287840 +Node: Time zone items290036 +Node: Day of week items291270 +Node: Relative items in date strings292259 +Node: Pure numbers in date strings295061 +Node: Seconds since the Epoch296042 +Node: Specifying time zone rules297663 +Node: Authors of parse_datetime300033 +Ref: Authors of get_date300212 +Node: Formats301175 +Node: Compression305863 +Node: gzip306155 +Ref: auto-compress311603 +Ref: gzip-Footnote-1313843 +Node: lbzip2313892 +Node: sparse314989 +Node: Attributes318043 +Node: Portability323864 +Node: Portable Names325350 +Node: dereference326055 +Node: hard links327182 +Ref: hard links-Footnote-1330080 +Node: old330136 +Node: ustar331320 +Node: gnu331911 +Node: posix332788 +Node: PAX keywords333269 +Node: Checksumming338879 +Node: Large or Negative Values340805 +Node: Other Tars342405 +Node: Split Recovery343541 +Node: Sparse Recovery347273 +Ref: extracting sparse v.0.x350906 +Ref: Sparse Recovery-Footnote-1354195 +Ref: Sparse Recovery-Footnote-2354218 +Node: cpio354339 +Node: Media359096 +Node: Device361043 +Ref: size-suffixes365832 +Node: Remote Tape Server366942 +Node: Common Problems and Solutions370665 +Node: Blocking371057 +Node: Format Variations377501 +Node: Blocking Factor378413 +Node: Many390065 +Node: Tape Positioning393859 +Node: mt395732 +Node: Using Multiple Tapes397287 +Node: Multi-Volume Archives399353 +Ref: tape-length400838 +Ref: change volume prompt401398 +Ref: volno-file402269 +Ref: info-script402821 +Ref: Multi-Volume Archives-Footnote-1408008 +Ref: Multi-Volume Archives-Footnote-2408118 +Node: Tape Files408186 +Node: Tarcat409668 +Node: label410713 +Ref: --test-label option412287 +Ref: label-Footnote-1415732 +Ref: label-Footnote-2415841 +Ref: label-Footnote-3415974 +Node: verify416209 +Node: Write Protection419509 +Node: Reliability and security420339 +Node: Reliability420727 +Node: Permissions problems421505 +Node: Data corruption and repair421944 +Node: Race conditions422870 +Node: Security424610 +Node: Privacy425213 +Node: Integrity426462 +Node: Live untrusted data428503 +Node: Security rules of thumb430843 +Node: Changes432372 +Node: Configuring Help Summary435987 +Node: Fixing Snapshot Files442488 +Node: Tar Internals444674 +Node: Standard445006 +Node: Extensions467207 +Node: Sparse Formats469767 +Node: Old GNU Format471057 +Node: PAX 0473458 +Node: PAX 1476589 +Node: Snapshot Files478327 +Node: Dumpdir482788 +Node: Genfile486034 +Node: Generate Mode487127 +Node: Status Mode491424 +Node: Exec Mode493223 +Node: Free Software Needs Free Documentation495968 +Node: GNU Free Documentation License500950 +Node: Index of Command Line Options526163 +Node: Index551662  End Tag Table diff --git a/doc/tar.info-1 b/doc/tar.info-1 index c67ede6..84a8454 100644 --- a/doc/tar.info-1 +++ b/doc/tar.info-1 @@ -1,6 +1,6 @@ This is tar.info, produced by makeinfo version 4.13 from tar.texi. -This manual is for GNU `tar' (version 1.23, 9 March 2010), which +This manual is for GNU `tar' (version 1.24, 24 October 2010), which creates and extracts files from archives. Copyright (C) 1992, 1994, 1995, 1996, 1997, 1999, 2000, 2001, 2003, @@ -8,9 +8,9 @@ creates and extracts files from archives. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, - Version 1.1 or any later version published by the Free Software + Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with the Front-Cover Texts - being "A GNU Manual," and with the Back-Cover Texts as in (a) + being "A GNU Manual", and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled "GNU Free Documentation License". @@ -34,7 +34,7 @@ File: tar.info, Node: Top, Next: Introduction, Up: (dir) GNU tar: an archiver tool ************************* -This manual is for GNU `tar' (version 1.23, 9 March 2010), which +This manual is for GNU `tar' (version 1.24, 24 October 2010), which creates and extracts files from archives. Copyright (C) 1992, 1994, 1995, 1996, 1997, 1999, 2000, 2001, 2003, @@ -42,9 +42,9 @@ creates and extracts files from archives. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, - Version 1.1 or any later version published by the Free Software + Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with the Front-Cover Texts - being "A GNU Manual," and with the Back-Cover Texts as in (a) + being "A GNU Manual", and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled "GNU Free Documentation License". @@ -66,6 +66,7 @@ document. The rest of the menu lists all the lower level nodes. * Date input formats:: * Formats:: * Media:: +* Reliability and security:: Appendices @@ -75,7 +76,7 @@ Appendices * Tar Internals:: * Genfile:: * Free Software Needs Free Documentation:: -* Copying This Manual:: +* GNU Free Documentation License:: * Index of Command Line Options:: * Index:: @@ -275,7 +276,7 @@ Date input formats * Pure numbers in date strings:: 19931219, 1440. * Seconds since the Epoch:: @1078100502. * Specifying time zone rules:: TZ="America/New_York", TZ="UTC0". -* Authors of get_date:: Bellovin, Eggert, Salz, Berets, et al. +* Authors of parse_datetime:: Bellovin, Eggert, Salz, Berets, et al. Controlling the Archive Format @@ -289,6 +290,10 @@ Using Less Space through Compression * gzip:: Creating and Reading Compressed Archives * sparse:: Archiving Sparse Files +Creating and Reading Compressed Archives + +* lbzip2:: Using lbzip2 with GNU `tar'. + Making `tar' Archives More Portable * Portable Names:: Portable Names @@ -409,7 +414,7 @@ tutorial explains how to use the three most frequently used operations (`create', `list', and `extract') as well as two frequently used options (`file' and `verbose'). The other chapters do not refer to the tutorial frequently; however, if a section discusses something which is -a complex variant of a basic concept, there may be a cross reference to +a complex variant of a basic concept, there may be a cross-reference to that basic concept. (The entire book, including the tutorial, assumes that the reader understands some basic concepts of using a Unix-type operating system; *note Tutorial::.) @@ -562,7 +567,7 @@ in version 1.11. Thomas Bushnell, n/BSG and Amy Gorin worked on a tutorial and manual for GNU `tar'. Franc,ois Pinard put version 1.11.8 of the manual together by taking information from all these sources and merging them. Melissa Weisshaus finally edited and redesigned the book -to create version 1.12. The book for versions from 1.14 up to 1.23 +to create version 1.12. The book for versions from 1.14 up to 1.24 were edited by the current maintainer, Sergey Poznyakoff. For version 1.12, Daniel Hagerty contributed a great deal of @@ -2302,9 +2307,9 @@ File: tar.info, Node: Option Summary, Next: Short Option Summary, Prev: Opera `--dereference' `-h' - When creating a `tar' archive, `tar' will archive the file that a - symbolic link points to, rather than archiving the symlink. *Note - dereference::. + When reading or writing a file to be archived, `tar' accesses the + file that a symbolic link points to, rather than the symlink + itself. *Note dereference::. `--directory=DIR' `-C DIR' @@ -2404,6 +2409,24 @@ File: tar.info, Node: Option Summary, Next: Short Option Summary, Prev: Opera *Note Formats::, for a detailed discussion of these formats. +`--full-time' + This option instructs `tar' to print file times to their full + resolution. Usually this means 1-second resolution, but that + depends on the underlying file system. The `--full-time' option + takes effect only when detailed output (verbosity level 2 or + higher) has been requested using the `--verbose' option, e.g., + when listing or extracting archives: + + $ tar -t -v --full-time -f archive.tar + + or, when creating an archive: + + $ tar -c -vv --full-time -f archive.tar . + + Notice, thar when creating the archive you need to specify + `--verbose' twice to get a detailed output (*note verbose + tutorial::). + `--group=GROUP' Files added to the `tar' archive will have a group ID of GROUP, rather than the group from the source file. GROUP is first decoded @@ -2491,7 +2514,7 @@ File: tar.info, Node: Option Summary, Next: Short Option Summary, Prev: Opera `--level=N' Force incremental backup of level N. As of GNU `tar' version - 1.23, the option `--level=0' truncates the snapshot file, thereby + 1.24, the option `--level=0' truncates the snapshot file, thereby forcing the level 0 dump. Other values of N are effectively ignored. *Note --level=0::, for details and examples. @@ -2733,9 +2756,12 @@ File: tar.info, Node: Option Summary, Next: Short Option Summary, Prev: Opera Specifies that `tar' should reblock its input, for reading from pipes on systems with buggy implementations. *Note Reading::. -`--record-size=SIZE' +`--record-size=SIZE[SUF]' Instructs `tar' to use SIZE bytes per record when accessing the - archive. *Note Blocking Factor::. + archive. The argument can be suffixed with a "size suffix", e.g. + `--record-size=10K' for 10 Kilobytes. *Note size-suffixes::, for + a list of valid suffixes. *Note Blocking Factor::, for a detailed + description of this option. `--recursion' With this option, `tar' recurses into directories (default). @@ -2842,10 +2868,14 @@ File: tar.info, Node: Option Summary, Next: Short Option Summary, Prev: Opera Alters the suffix `tar' uses when backing up files from the default `~'. *Note backup::. -`--tape-length=NUM' -`-L NUM' +`--tape-length=NUM[SUF]' +`-L NUM[SUF]' Specifies the length of tapes that `tar' is writing as being - NUM x 1024 bytes long. *Note Using Multiple Tapes::. + NUM x 1024 bytes long. If optional SUF is given, it specifies a + multiplicative factor to be used instead of 1024. For example, + `-L2M' means 2 megabytes. *Note size-suffixes::, for a list of + allowed suffixes. *Note Using Multiple Tapes::, for a detailed + discussion of this option. `--test-label' Reads the volume label. If an argument is specified, test whether @@ -2886,10 +2916,10 @@ File: tar.info, Node: Option Summary, Next: Short Option Summary, Prev: Opera `--show-transformed-names' option (*note show-transformed-names::). `--uncompress' - (See `--compress'. *note gzip::) + (See `--compress', *note gzip::) `--ungzip' - (See `--gzip'. *note gzip::) + (See `--gzip', *note gzip::) `--unlink-first' `-U' @@ -3028,7 +3058,7 @@ information about its name, version, origin and legal status, all on standard output, and then exit successfully. For example, `tar --version' might print: - tar (GNU tar) 1.23 + tar (GNU tar) 1.24 Copyright (C) 2010 Free Software Foundation, Inc. Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . @@ -3880,9 +3910,8 @@ example: $ tar --extract -vv --occurrence --file=collection.tar blues -rw-r--r-- me user 21 1996-09-23 16:44 blues - *Note Writing::, for more information on `--extract' and *Note --occurrence: Option Summary, for the description of `--occurrence' -option. + *Note Writing::, for more information on `--extract' and see *note +-occurrence: Option Summary, for a description of `--occurrence' option.  File: tar.info, Node: update, Next: concatenate, Prev: append, Up: Advanced tar @@ -3924,7 +3953,7 @@ tell you that it didn't do anything (which may end up confusing you). `classical', in your practice directory, and some extra text to the file `blues', using any text editor. Then invoke `tar' with the `update' operation and the `--verbose' (`-v') option specified, using -the names of all the files in the practice directory as file name +the names of all the files in the `practice' directory as file name arguments: $ tar --update -v -f collection.tar blues folk rock classical @@ -4029,8 +4058,9 @@ improperly combined using the `cat' shell utility. ---------- Footnotes ---------- - (1) This can cause multiple members to have the same name, for -information on how this affects reading the archive, *note multiple::. + (1) This can cause multiple members to have the same name. For +information on how this affects reading the archive, see *note +multiple::.  File: tar.info, Node: delete, Next: compare, Prev: concatenate, Up: Advanced tar @@ -4109,7 +4139,7 @@ report an error message.) The spirit behind the `--compare' (`--diff', `-d') option is to check whether the archive represents the current state of files on disk, more than validating the integrity of the archive media. For -this latter goal, *Note verify::. +this latter goal, see *note verify::.  File: tar.info, Node: create options, Next: extract options, Prev: Advanced tar, Up: operations @@ -4163,8 +4193,8 @@ stored in the archive. `/' or `.'. In the latter case, the modification time of that file will be used. - The following example will set the modification date to 00:00:00 - UTC, January 1, 1970: + The following example will set the modification date to 00:00:00, + January 1, 1970: $ tar -c -f archive.tar --mtime='1970-01-01' . @@ -4759,9 +4789,9 @@ space, you can use `--starting-file=NAME' (`-K NAME') to start extracting only after member NAME of the archive. This assumes, of course, that there is now free space, or that you are now extracting into a different file system. (You could also choose to suspend `tar', -remove unnecessary files from the file system, and then restart the -same `tar' operation. In this case, `--starting-file' is not necessary. -*Note Incremental Dumps::, *Note interactive::, and *note exclude::.) +remove unnecessary files from the file system, and then resume the same +`tar' operation. In this case, `--starting-file' is not necessary.) +See also *note interactive::, and *note exclude::.  File: tar.info, Node: Same Order, Prev: Starting File, Up: Scarce @@ -4895,7 +4925,7 @@ The command also works using long option forms: or - $ tar --directory sourcedir --create --file=- . ) \ + $ tar --directory sourcedir --create --file=- . \ | tar --directory targetdir --extract --file=- This is one of the easiest methods to transfer a `tar' archive. @@ -5147,19 +5177,7 @@ system, one would do(1): To list the contents of an incremental archive, use `--list' (*note list::), as usual. To obtain more information about the archive, use `--listed-incremental' or `--incremental' combined with two `--verbose' -optionsTwo -`--verbose' options were selected to avoid breaking usual -verbose listing output (`--list --verbose') when using in -scripts. - - - - - -Versions of GNU `tar' up to 1.15.1 used to dump verbatim binary -contents of the DUMPDIR header (with terminating nulls) when -`--incremental' or `--listed-incremental' option was -given, no matter what the verbosity level(2): +options(2): tar --list --incremental --verbose --verbose archive.tar @@ -5953,7 +5971,6 @@ resulting archive `foo.tar' will contain: libc.a - Notice that the option parsing algorithm used with `-T' is stricter than the one used by shell. Namely, when specifying option arguments, you should observe the following rules: @@ -6092,7 +6109,7 @@ difficult to catch using text editors. systems: `CVS', `RCS', `SCCS', `SVN', `Arch', `Bazaar', `Mercurial', and `Darcs'. - As of version 1.23, the following files are excluded: + As of version 1.24, the following files are excluded: * `CVS/', and everything under it @@ -6872,8 +6889,8 @@ transformations. The result is: --show-transformed /lib drwxr-xr-x root/root 0 2008-07-08 16:20 /usr/local/lib/ -rwxr-xr-x root/root 1250840 2008-05-25 07:44 /usr/local/lib/libc-2.3.2.so - lrwxrwxrwx root/root 0 2008-06-24 17:12 /usr/local/lib/libc.so.6 -> - libc-2.3.2.so + lrwxrwxrwx root/root 0 2008-06-24 17:12 /usr/local/lib/libc.so.6 \ + -> libc-2.3.2.so Unlike `--strip-components', `--transform' can be used in any GNU `tar' operation mode. For example, the following command adds files to @@ -7232,6 +7249,9 @@ directory first, and then avoid absolute notation. For example: $ tar -c -f archive.tar -C / home + *Note Integrity::, for some of the security-related implications of +using this option. + ---------- Footnotes ---------- (1) A side effect of this is that when `--create' is used with @@ -7275,8 +7295,8 @@ First, a quote: This section describes the textual date representations that GNU programs accept. These are the strings you, as a user, can supply as -arguments to the various programs. The C interface (via the `get_date' -function) is not described here. +arguments to the various programs. The C interface (via the +`parse_datetime' function) is not described here. * Menu: @@ -7289,7 +7309,7 @@ function) is not described here. * Pure numbers in date strings:: 19931219, 1440. * Seconds since the Epoch:: @1078100502. * Specifying time zone rules:: TZ="America/New_York", TZ="UTC0". -* Authors of get_date:: Bellovin, Eggert, Salz, Berets, et al. +* Authors of parse_datetime:: Bellovin, Eggert, Salz, Berets, et al.  File: tar.info, Node: General date syntax, Next: Calendar date items, Up: Date input formats @@ -7636,7 +7656,7 @@ UTC, `@915148800' represents 1999-01-01 00:00:00 UTC, and there is no way to represent the intervening leap second 1998-12-31 23:59:60 UTC.  -File: tar.info, Node: Specifying time zone rules, Next: Authors of get_date, Prev: Seconds since the Epoch, Up: Date input formats +File: tar.info, Node: Specifying time zone rules, Next: Authors of parse_datetime, Prev: Seconds since the Epoch, Up: Date input formats 7.9 Specifying time zone rules ============================== @@ -7684,20 +7704,25 @@ saving regimes. *Note Specifying the Time Zone with `TZ': (libc)TZ Variable.  -File: tar.info, Node: Authors of get_date, Prev: Specifying time zone rules, Up: Date input formats +File: tar.info, Node: Authors of parse_datetime, Prev: Specifying time zone rules, Up: Date input formats -7.10 Authors of `get_date' -========================== +7.10 Authors of `parse_datetime' +================================ -`get_date' was originally implemented by Steven M. Bellovin -() while at the University of North Carolina at -Chapel Hill. The code was later tweaked by a couple of people on -Usenet, then completely overhauled by Rich $alz () and -Jim Berets () in August, 1990. Various revisions for -the GNU system were made by David MacKenzie, Jim Meyering, Paul Eggert -and others. +`parse_datetime' started life as `getdate', as originally implemented +by Steven M. Bellovin () while at the University +of North Carolina at Chapel Hill. The code was later tweaked by a +couple of people on Usenet, then completely overhauled by Rich $alz +() and Jim Berets () in August, 1990. +Various revisions for the GNU system were made by David MacKenzie, Jim +Meyering, Paul Eggert and others, including renaming it to `get_date' to +avoid a conflict with the alternative Posix function `getdate', and a +later rename to `parse_datetime'. The Posix function `getdate' can +parse more locale-specific dates using `strptime', but relies on an +environment variable and external file, and lacks the thread-safety of +`parse_datetime'. This chapter was originally produced by Franc,ois Pinard -() from the `getdate.y' source code, and then -edited by K. Berry (). +() from the `parse_datetime.y' source code, +and then edited by K. Berry (). diff --git a/doc/tar.info-2 b/doc/tar.info-2 index cd19ccc..a8f408e 100644 --- a/doc/tar.info-2 +++ b/doc/tar.info-2 @@ -1,6 +1,6 @@ This is tar.info, produced by makeinfo version 4.13 from tar.texi. -This manual is for GNU `tar' (version 1.23, 9 March 2010), which +This manual is for GNU `tar' (version 1.24, 24 October 2010), which creates and extracts files from archives. Copyright (C) 1992, 1994, 1995, 1996, 1997, 1999, 2000, 2001, 2003, @@ -8,9 +8,9 @@ creates and extracts files from archives. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, - Version 1.1 or any later version published by the Free Software + Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with the Front-Cover Texts - being "A GNU Manual," and with the Back-Cover Texts as in (a) + being "A GNU Manual", and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled "GNU Free Documentation License". @@ -77,7 +77,7 @@ v7 Makefiles. This practice will change in the future, in the meantime, however this means that projects containing file names more than 99 characters long will not be able to use GNU `tar' - 1.23 and Automake prior to 1.9. + 1.24 and Automake prior to 1.9. ustar Archive format defined by POSIX.1-1988 specification. It stores @@ -180,7 +180,7 @@ program. For example: $ tar cfz archive.tar.gz . - You can also let GNU `tar' select the compression program basing on + You can also let GNU `tar' select the compression program based on the suffix of the archive file name. This is done using `--auto-compress' (`-a') command line option. For example, the following invocation will use `bzip2' for compression: @@ -192,7 +192,7 @@ whereas the following one will use `lzma': $ tar cfa archive.tar.lzma . For a complete list of file name suffixes recognized by GNU `tar', -*note auto-compress::. +see *note auto-compress::. Reading compressed archive is even simpler: you don't need to specify any additional options as GNU `tar' recognizes its format @@ -207,7 +207,7 @@ archive created in previous example: The format recognition algorithm is based on "signatures", a special byte sequences in the beginning of file, that are specific for certain compression formats. If this approach fails, `tar' falls back to using -archive name suffix to determine its format (*Note auto-compress::, for +archive name suffix to determine its format (*note auto-compress::, for a list of recognized suffixes). The only case when you have to specify a decompression option while @@ -232,7 +232,73 @@ members to them. Likewise, you cannot append another `tar' archive to a compressed archive using `--concatenate' (`-A'). Secondly, multi-volume archives cannot be compressed. - The following table summarizes compression options used by GNU `tar'. + The following options allow to select a particular compressor +program: + +`-z' +`--gzip' +`--ungzip' + Filter the archive through `gzip'. + +`-J' +`--xz' + Filter the archive through `xz'. + +`-j' +`--bzip2' + Filter the archive through `bzip2'. + +`--lzip' + Filter the archive through `lzip'. + +`--lzma' + Filter the archive through `lzma'. + +`--lzop' + Filter the archive through `lzop'. + +`-Z' +`--compress' +`--uncompress' + Filter the archive through `compress'. + + When any of these options is given, GNU `tar' searches the compressor +binary in the current path and invokes it. The name of the compressor +program is specified at compilation time using a corresponding +`--with-COMPNAME' option to `configure', e.g. `--with-bzip2' to select +a specific `bzip2' binary. *Note lbzip2::, for a detailed discussion. + + The output produced by `tar --help' shows the actual compressor +names along with each of these options. + + You can use any of these options on physical devices (tape drives, +etc.) and remote files as well as on normal files; data to or from such +devices or remote files is reblocked by another copy of the `tar' +program to enforce the specified (or default) record size. The default +compression parameters are used. Most compression programs allow to +override these by setting a program-specific environment variable. For +example, when using `gzip' you can use `GZIP' as in the example below: + + $ GZIP=--best tar cfz archive.tar.gz subdir + +Another way would be to use the `-I' option instead (see below), e.g.: + + $ tar -cf archive.tar.gz -I 'gzip --best' subdir + +Finally, the third, traditional, way to achieve the same result is to +use pipe: + + $ tar cf - subdir | gzip --best -c - > archive.tar.gz + + About corrupted compressed archives: compressed files have no +redundancy, for maximum compression. The adaptive nature of the +compression scheme means that the compression tables are implicitly +spread all over the archive. If you lose a few blocks, the dynamic +construction of the compression tables becomes unsynchronized, and there +is little chance that you could recover later in the archive. + + Another compression options provide a better control over creating +compressed archives. These are: `--auto-compress' `-a' @@ -256,62 +322,6 @@ multi-volume archives cannot be compressed. `.lzo' `lzop' `.xz' `xz' -`-z' -`--gzip' -`--ungzip' - Filter the archive through `gzip'. - - You can use `--gzip' and `--gunzip' on physical devices (tape - drives, etc.) and remote files as well as on normal files; data to - or from such devices or remote files is reblocked by another copy - of the `tar' program to enforce the specified (or default) record - size. The default compression parameters are used; if you need to - override them, set `GZIP' environment variable, e.g.: - - $ GZIP=--best tar cfz archive.tar.gz subdir - - Another way would be to avoid the `--gzip' (`--gunzip', - `--ungzip', `-z') option and run `gzip' explicitly: - - $ tar cf - subdir | gzip --best -c - > archive.tar.gz - - About corrupted compressed archives: `gzip''ed files have no - redundancy, for maximum compression. The adaptive nature of the - compression scheme means that the compression tables are implicitly - spread all over the archive. If you lose a few blocks, the dynamic - construction of the compression tables becomes unsynchronized, and - there is little chance that you could recover later in the archive. - - There are pending suggestions for having a per-volume or per-file - compression in GNU `tar'. This would allow for viewing the - contents without decompression, and for resynchronizing - decompression at every volume or file, in case of corrupted - archives. Doing so, we might lose some compressibility. But this - would have make recovering easier. So, there are pros and cons. - We'll see! - -`-J' -`--xz' - Filter the archive through `xz'. Otherwise like `--gzip'. - -`-j' -`--bzip2' - Filter the archive through `bzip2'. Otherwise like `--gzip'. - -`--lzip' - Filter the archive through `lzip'. Otherwise like `--gzip'. - -`--lzma' - Filter the archive through `lzma'. Otherwise like `--gzip'. - -`--lzop' - Filter the archive through `lzop'. Otherwise like `--gzip'. - -`-Z' -`--compress' -`--uncompress' - Filter the archive through `compress'. Otherwise like `--gzip'. - `--use-compress-program=PROG' `-I=PROG' Use external compression program PROG. Use this option if you are @@ -350,10 +360,43 @@ Likewise, the command below will list its contents: $ tar -tf foo.tar.gpgz -Igpgz . +* Menu: + +* lbzip2:: Using lbzip2 with GNU `tar'. + ---------- Footnotes ---------- (1) It also had patent problems in the past. + +File: tar.info, Node: lbzip2, Up: gzip + +8.1.1.1 Using lbzip2 with GNU `tar'. +.................................... + +`Lbzip2' is a multithreaded utility for handling `bzip2' compression, +written by Laszlo Ersek. It makes use of multiple processors to speed +up its operation and in general works considerably faster than `bzip2'. +For a detailed description of `lbzip2' see +`http://freshmeat.net/projects/lbzip2' and lbzip2: parallel bzip2 +utility +(http://www.linuxinsight.com/lbzip2-parallel-bzip2-utility.html). + + Recent versions of `lbzip2' are mostly command line compatible with +`bzip2', which makes it possible to automatically invoke it via the +`--bzip2' GNU `tar' command line option. To do so, GNU `tar' must be +configured with the `--with-bzip2' command line option, like this: + + $ ./configure --with-bzip2=lbzip2 [OTHER-OPTIONS] + + Once configured and compiled this way, `tar --help' will show the +following: + + $ tar --help | grep -- --bzip2 + -j, --bzip2 filter the archive through lbzip2 + +which means that running `tar --bzip2' will invoke `lbzip2'. +  File: tar.info, Node: sparse, Prev: gzip, Up: Compression @@ -605,27 +648,22 @@ File: tar.info, Node: dereference, Next: hard links, Prev: Portable Names, U Normally, when `tar' archives a symbolic link, it writes a block to the archive naming the target of the link. In that way, the `tar' archive -is a faithful record of the file system contents. `--dereference' -(`-h') is used with `--create' (`-c'), and causes `tar' to archive the -files symbolic links point to, instead of the links themselves. When -this option is used, when `tar' encounters a symbolic link, it will -archive the linked-to file, instead of simply recording the presence of -a symbolic link. - - The name under which the file is stored in the file system is not -recorded in the archive. To record both the symbolic link name and the -file name in the system, archive the file under both names. If all -links were recorded automatically by `tar', an extracted file might be -linked to a file name that no longer exists in the file system. - - If a linked-to file is encountered again by `tar' while creating the -same archive, an entire second copy of it will be stored. (This -_might_ be considered a bug.) - - So, for portable archives, do not archive symbolic links as such, -and use `--dereference' (`-h'): many systems do not support symbolic -links, and moreover, your distribution might be unusable if it contains -unresolved symbolic links. +is a faithful record of the file system contents. When `--dereference' +(`-h') is used with `--create' (`-c'), `tar' archives the files +symbolic links point to, instead of the links themselves. + + When creating portable archives, use `--dereference' (`-h'): some +systems do not support symbolic links, and moreover, your distribution +might be unusable if it contains unresolved symbolic links. + + When reading from an archive, the `--dereference' (`-h') option +causes `tar' to follow an already-existing symbolic link when `tar' +writes or reads a file named in the archive. Ordinarily, `tar' does +not follow such a link, though it may remove the link before writing a +new file. *Note Dealing with Old Files::. + + The `--dereference' option is unsafe if an untrusted user can modify +directories while `tar' is running. *Note Security::.  File: tar.info, Node: hard links, Next: old, Prev: dereference, Up: Portability @@ -736,7 +774,7 @@ File: tar.info, Node: ustar, Next: gnu, Prev: old, Up: Portability Archive format defined by POSIX.1-1988 specification is called `ustar'. Although it is more flexible than the V7 format, it still has many -restrictions (*Note ustar: Formats, for the detailed description of +restrictions (*note ustar: Formats, for the detailed description of `ustar' format). Along with V7 format, `ustar' format is a good choice for archives intended to be read with other implementations of `tar'. @@ -1270,7 +1308,7 @@ header: (1) *Note PAX 1::. - (2) technically speaking, N is a "process ID" of the `tar' process + (2) Technically speaking, N is a "process ID" of the `tar' process which created the archive (*note PAX keywords::).  @@ -1378,7 +1416,7 @@ test, because the resulting archive gets smaller, and GNU `cpio' can no longer read it).  -File: tar.info, Node: Media, Next: Changes, Prev: Formats, Up: Top +File: tar.info, Node: Media, Next: Reliability and security, Prev: Formats, Up: Top 9 Tapes and Other Archive Media ******************************* @@ -1522,19 +1560,37 @@ could also check for `DEFTAPE' in `'. *Note Multi-Volume Archives::. `-L NUM' -`--tape-length=NUM' - Change tape after writing NUM x 1024 bytes. - - This option might be useful when your tape drivers do not properly - detect end of physical tapes. By being slightly conservative on - the maximum tape length, you might avoid the problem entirely. +`--tape-length=SIZE[SUF]' + Change tape after writing SIZE units of data. Unless SUF is + given, SIZE is treated as kilobytes, i.e. `SIZE x 1024' bytes. + The following suffixes alter this behavior: -`-F FILE' -`--info-script=FILE' -`--new-volume-script=FILE' - Execute `file' at end of each tape. This implies `--multi-volume' - (`-M'). *Note info-script::, for a detailed description of this - option. + Suffix Units Byte Equivalent + -------------------------------------------------------- + b Blocks SIZE x 512 + B Kilobytes SIZE x 1024 + c Bytes SIZE + G Gigabytes SIZE x 1024^3 + K Kilobytes SIZE x 1024 + k Kilobytes SIZE x 1024 + M Megabytes SIZE x 1024^2 + P Petabytes SIZE x 1024^5 + T Terabytes SIZE x 1024^4 + w Words SIZE x 2 + + Table 9.1: Size Suffixes + + This option might be useful when your tape drivers do not + properly detect end of physical tapes. By being slightly + conservative on the maximum tape length, you might avoid the + problem entirely. + + `-F FILE' + `--info-script=FILE' + `--new-volume-script=FILE' + Execute `file' at end of each tape. This implies + `--multi-volume' (`-M'). *Note info-script::, for a detailed + description of this option.  File: tar.info, Node: Remote Tape Server, Next: Common Problems and Solutions, Prev: Device, Up: Media @@ -2256,14 +2312,22 @@ fails on some operating systems or on some devices. If `tar' cannot detect the end of the tape itself, you can use `--tape-length' option to inform it about the capacity of the tape: -`--tape-length=SIZE' -`-L SIZE' - Set maximum length of a volume. The SIZE argument should then be - the usable size of the tape in units of 1024 bytes. This option - selects `--multi-volume' automatically. For example: +`--tape-length=SIZE[SUF]' +`-L SIZE[SUF]' + Set maximum length of a volume. The SUF, if given, specifies + units in which SIZE is expressed, e.g. `2M' mean 2 megabytes + (*note Table 9.1: size-suffixes, for a list of allowed size + suffixes). Without SUF, units of 1024 bytes (kilobyte) are + assumed. + + This option selects `--multi-volume' automatically. For example: $ tar --create --tape-length=41943040 --file=/dev/tape FILES + or, which is equivalent: + + $ tar --create --tape-length=4G --file=/dev/tape FILES + When GNU `tar' comes to the end of a storage media, it asks you to change the volume. The built-in prompt for POSIX locale is(1): @@ -2451,8 +2515,9 @@ listed with `--list'. If you are creating a multi-volume archive with `--multi-volume' (*note Using Multiple Tapes::), then the volume label will have `Volume NNN' appended to the name you give, where NNN is the number of the volume of the archive. If you use the -`--label=VOLUME-LABEL') option when reading an archive, it checks to -make sure the label on the tape matches the one you give. *Note label::. +`--label=VOLUME-LABEL' option when reading an archive, it checks to +make sure the label on the tape matches the one you gave. *Note +label::. When `tar' writes an archive to tape, it creates a single tape file. If multiple archives are written to the same tape, one after the other, @@ -2498,14 +2563,12 @@ File: tar.info, Node: label, Next: verify, Prev: Using Multiple Tapes, Up: M 9.7 Including a Label in the Archive ==================================== - _(This message will disappear, once this node revised.)_ - To avoid problems caused by misplaced paper labels on the archive -media, you can include a "label" entry--an archive member which -contains the name of the archive--in the archive itself. Use the -`--label=ARCHIVE-LABEL' (`-V ARCHIVE-LABEL') option in conjunction with -the `--create' operation to include a label entry in the archive as it -is being created. +media, you can include a "label" entry -- an archive member which +contains the name of the archive -- in the archive itself. Use the +`--label=ARCHIVE-LABEL' (`-V ARCHIVE-LABEL') option(1) in conjunction +with the `--create' operation to include a label entry in the archive +as it is being created. `--label=ARCHIVE-LABEL' `-V ARCHIVE-LABEL' @@ -2531,7 +2594,7 @@ marked as in the example below: However, `--list' option will cause listing entire contents of the archive, which may be undesirable (for example, if the archive is -stored on a tape). You can request checking only the volume by +stored on a tape). You can request checking only the volume label by specifying `--test-label' option. This option reads only the first block of an archive, so it can be used with slow storage devices. For example: @@ -2539,14 +2602,25 @@ example: $ tar --test-label --file=iamanarchive iamalabel - If `--test-label' is used with a single command line argument, `tar' -compares the volume label with the argument. It exits with code 0 if -the two strings match, and with code 2 otherwise. In this case no -output is displayed. For example: + If `--test-label' is used with one or more command line arguments, +`tar' compares the volume label with each argument. It exits with code +0 if a match is found, and with code 1 otherwise(2). No output is +displayed, unless you also used the `--verbose' option. For example: - $ tar --test-label --file=iamanarchive 'iamalable' + $ tar --test-label --file=iamanarchive 'iamalabel' => 0 - $ tar --test-label --file=iamanarchive 'iamalable' alabel + $ tar --test-label --file=iamanarchive 'alabel' + => 1 + + When used with the `--verbose' option, `tar' prints the actual +volume label (if any), and a verbose diagnostics in case of a mismatch: + + $ tar --test-label --verbose --file=iamanarchive 'iamalabel' + iamalabel + => 0 + $ tar --test-label --verbose --file=iamanarchive 'alabel' + iamalabel + tar: Archive label mismatch => 1 If you request any operation, other than `--create', along with @@ -2566,16 +2640,13 @@ not labeled at all. label doesn't match the ARCHIVE-LABEL specified. In those cases, ARCHIVE-LABEL argument is interpreted as a globbing-style pattern which must match the actual magnetic volume label. *Note exclude::, for a -precise description of how match is attempted(1). If the switch +precise description of how match is attempted(3). If the switch `--multi-volume' (`-M') is being used, the volume label matcher will also suffix ARCHIVE-LABEL by ` Volume [1-9]*' if the initial match fails, before giving up. Since the volume numbering is automatically added in labels at creation time, it sounded logical to equally help the user taking care of it when the archive is being read. - The `--label' was once called `--volume', but is not available under -that name anymore. - You can also use `--label' to get a common information on all tapes of a series. For having this information different in each series created through a single script used on a regular basis, just manage to @@ -2585,17 +2656,27 @@ get some date string as part of the label. For example: $ tar --create --file=/dev/tape --multi-volume \ --label="Daily backup for `date +%Y-%m-%d`" - Also note that each label has its own date and time, which -corresponds to when GNU `tar' initially attempted to write it, often -soon after the operator launches `tar' or types the carriage return -telling that the next tape is ready. Comparing date labels does give -an idea of tape throughput only if the delays for rewinding tapes and -the operator switching them were negligible, which is usually not the -case. + Some more notes about volume labels: + + * Each label has its own date and time, which corresponds to the + time when GNU `tar' initially attempted to write it, often soon + after the operator launches `tar' or types the carriage return + telling that the next tape is ready. + + * Comparing date labels to get an idea of tape throughput is + unreliable. It gives correct results only if the delays for + rewinding tapes and the operator switching them were negligible, + which is usually not the case. ---------- Footnotes ---------- - (1) Previous versions of `tar' used full regular expression + (1) Until version 1.10, that option was called `--volume', but is +not available under that name anymore. + + (2) Note that GNU `tar' versions up to 1.23 indicated mismatch with +an exit code 2 and printed a spurious diagnostics on stderr. + + (3) Previous versions of `tar' used full regular expression matching, or before that, only exact string matching, instead of wildcard matchers. We decided for the sake of simplicity to use a uniform matching device through `tar'. @@ -2689,13 +2770,290 @@ which can be removed from the center of a tape reel, or some other changeable feature.  -File: tar.info, Node: Changes, Next: Configuring Help Summary, Prev: Media, Up: Top +File: tar.info, Node: Reliability and security, Next: Changes, Prev: Media, Up: Top + +10 Reliability and Security +*************************** + +The `tar' command reads and writes files as any other application does, +and is subject to the usual caveats about reliability and security. +This section contains some commonsense advice on the topic. + +* Menu: + +* Reliability:: +* Security:: + + +File: tar.info, Node: Reliability, Next: Security, Up: Reliability and security + +10.1 Reliability +================ + +Ideally, when `tar' is creating an archive, it reads from a file system +that is not being modified, and encounters no errors or inconsistencies +while reading and writing. If this is the case, the archive should +faithfully reflect what was read. Similarly, when extracting from an +archive, ideally `tar' ideally encounters no errors and the extracted +files faithfully reflect what was in the archive. + + However, when reading or writing real-world file systems, several +things can go wrong; these include permissions problems, corruption of +data, and race conditions. + +* Menu: + +* Permissions problems:: +* Data corruption and repair:: +* Race conditions:: + + +File: tar.info, Node: Permissions problems, Next: Data corruption and repair, Up: Reliability + +10.1.1 Permissions Problems +--------------------------- + +If `tar' encounters errors while reading or writing files, it normally +reports an error and exits with nonzero status. The work it does may +therefore be incomplete. For example, when creating an archive, if +`tar' cannot read a file then it cannot copy the file into the archive. + + +File: tar.info, Node: Data corruption and repair, Next: Race conditions, Prev: Permissions problems, Up: Reliability + +10.1.2 Data Corruption and Repair +--------------------------------- + +If an archive becomes corrupted by an I/O error, this may corrupt the +data in an extracted file. Worse, it may corrupt the file's metadata, +which may cause later parts of the archive to become misinterpreted. +An tar-format archive contains a checksum that most likely will detect +errors in the metadata, but it will not detect errors in the data. + + If data corruption is a concern, you can compute and check your own +checksums of an archive by using other programs, such as `cksum'. + + When attempting to recover from a read error or data corruption in an +archive, you may need to skip past the questionable data and read the +rest of the archive. This requires some expertise in the archive +format and in other software tools. + + +File: tar.info, Node: Race conditions, Prev: Data corruption and repair, Up: Reliability + +10.1.3 Race conditions +---------------------- + +If some other process is modifying the file system while `tar' is +reading or writing files, the result may well be inconsistent due to +race conditions. For example, if another process creates some files in +a directory while `tar' is creating an archive containing the +directory's files, `tar' may see some of the files but not others, or +it may see a file that is in the process of being created. The +resulting archive may not be a snapshot of the file system at any point +in time. If an application such as a database system depends on an +accurate snapshot, restoring from the `tar' archive of a live file +system may therefore break that consistency and may break the +application. The simplest way to avoid the consistency issues is to +avoid making other changes to the file system while tar is reading it +or writing it. + + When creating an archive, several options are available to avoid race +conditions. Some hosts have a way of snapshotting a file system, or of +temporarily suspending all changes to a file system, by (say) +suspending the only virtual machine that can modify a file system; if +you use these facilities and have `tar -c' read from a snapshot when +creating an archive, you can avoid inconsistency problems. More +drastically, before starting `tar' you could suspend or shut down all +processes other than `tar' that have access to the file system, or you +could unmount the file system and then mount it read-only. + + When extracting from an archive, one approach to avoid race +conditions is to create a directory that no other process can write to, +and extract into that. + + +File: tar.info, Node: Security, Prev: Reliability, Up: Reliability and security + +10.2 Security +============= + +In some cases `tar' may be used in an adversarial situation, where an +untrusted user is attempting to gain information about or modify +otherwise-inaccessible files. Dealing with untrusted data (that is, +data generated by an untrusted user) typically requires extra care, +because even the smallest mistake in the use of `tar' is more likely to +be exploited by an adversary than by a race condition. + +* Menu: + +* Privacy:: +* Integrity:: +* Live untrusted data:: +* Security rules of thumb:: + + +File: tar.info, Node: Privacy, Next: Integrity, Up: Security + +10.2.1 Privacy +-------------- + +Standard privacy concerns apply when using `tar'. For example, suppose +you are archiving your home directory into a file +`/archive/myhome.tar'. Any secret information in your home directory, +such as your SSH secret keys, are copied faithfully into the archive. +Therefore, if your home directory contains any file that should not be +read by some other user, the archive itself should be not be readable +by that user. And even if the archive's data are inaccessible to +untrusted users, its metadata (such as size or last-modified date) may +reveal some information about your home directory; if the metadata are +intended to be private, the archive's parent directory should also be +inaccessible to untrusted users. + + One precaution is to create `/archive' so that it is not accessible +to any user, unless that user also has permission to access all the +files in your home directory. + + Similarly, when extracting from an archive, take care that the +permissions of the extracted files are not more generous than what you +want. Even if the archive itself is readable only to you, files +extracted from it have their own permissions that may differ. + + +File: tar.info, Node: Integrity, Next: Live untrusted data, Prev: Privacy, Up: Security + +10.2.2 Integrity +---------------- + +When creating archives, take care that they are not writable by a +untrusted user; otherwise, that user could modify the archive, and when +you later extract from the archive you will get incorrect data. + + When `tar' extracts from an archive, by default it writes into files +relative to the working directory. If the archive was generated by an +untrusted user, that user therefore can write into any file under the +working directory. If the working directory contains a symbolic link +to another directory, the untrusted user can also write into any file +under the referenced directory. When extracting from an untrusted +archive, it is therefore good practice to create an empty directory and +run `tar' in that directory. + + When extracting from two or more untrusted archives, each one should +be extracted independently, into different empty directories. +Otherwise, the first archive could create a symbolic link into an area +outside the working directory, and the second one could follow the link +and overwrite data that is not under the working directory. For +example, when restoring from a series of incremental dumps, the +archives should have been created by a trusted process, as otherwise +the incremental restores might alter data outside the working directory. + + If you use the `--absolute-names' (`-P') option when extracting, +`tar' respects any file names in the archive, even file names that +begin with `/' or contain `..'. As this lets the archive overwrite any +file in your system that you can write, the `--absolute-names' (`-P') +option should be used only for trusted archives. + + Conversely, with the `--keep-old-files' (`-k') option, `tar' refuses +to replace existing files when extracting; and with the +`--no-overwrite-dir' option, `tar' refuses to replace the permissions +or ownership of already-existing directories. These options may help +when extracting from untrusted archives. + + +File: tar.info, Node: Live untrusted data, Next: Security rules of thumb, Prev: Integrity, Up: Security + +10.2.3 Dealing with Live Untrusted Data +--------------------------------------- + +Extra care is required when creating from or extracting into a file +system that is accessible to untrusted users. For example, superusers +who invoke `tar' must be wary about its actions being hijacked by an +adversary who is reading or writing the file system at the same time +that `tar' is operating. + + When creating an archive from a live file system, `tar' is +vulnerable to denial-of-service attacks. For example, an adversarial +user could create the illusion of an indefinitely-deep directory +hierarchy `d/e/f/g/...' by creating directories one step ahead of +`tar', or the illusion of an indefinitely-long file by creating a +sparse file but arranging for blocks to be allocated just before `tar' +reads them. There is no easy way for `tar' to distinguish these +scenarios from legitimate uses, so you may need to monitor `tar', just +as you'd need to monitor any other system service, to detect such +attacks. + + While a superuser is extracting from an archive into a live file +system, an untrusted user might replace a directory with a symbolic +link, in hopes that `tar' will follow the symbolic link and extract +data into files that the untrusted user does not have access to. Even +if the archive was generated by the superuser, it may contain a file +such as `d/etc/passwd' that the untrusted user earlier created in order +to break in; if the untrusted user replaces the directory `d/etc' with +a symbolic link to `/etc' while `tar' is running, `tar' will overwrite +`/etc/passwd'. This attack can be prevented by extracting into a +directory that is inaccessible to untrusted users. + + Similar attacks via symbolic links are also possible when creating an +archive, if the untrusted user can modify an ancestor of a top-level +argument of `tar'. For example, an untrusted user that can modify +`/home/eve' can hijack a running instance of `tar -cf - +/home/eve/Documents/yesterday' by replacing `/home/eve/Documents' with +a symbolic link to some other location. Attacks like these can be +prevented by making sure that untrusted users cannot modify any files +that are top-level arguments to `tar', or any ancestor directories of +these files. + + +File: tar.info, Node: Security rules of thumb, Prev: Live untrusted data, Up: Security + +10.2.4 Security Rules of Thumb +------------------------------ + +This section briefly summarizes rules of thumb for avoiding security +pitfalls. + + * Protect archives at least as much as you protect any of the files + being archived. + + * Extract from an untrusted archive only into an otherwise-empty + directory. This directory and its parent should be accessible + only to trusted users. For example: + + $ chmod go-rwx . + $ mkdir -m go-rwx dir + $ cd dir + $ tar -xvf /archives/got-it-off-the-net.tar.gz + + As a corollary, do not do an incremental restore from an untrusted + archive. + + * Do not let untrusted users access files extracted from untrusted + archives without checking first for problems such as setuid + programs. + + * Do not let untrusted users modify directories that are ancestors of + top-level arguments of `tar'. For example, while you are + executing `tar -cf /archive/u-home.tar /u/home', do not let an + untrusted user modify `/', `/archive', or `/u'. + + * Pay attention to the diagnostics and exit status of `tar'. + + * When archiving live file systems, monitor running instances of + `tar' to detect denial-of-service attacks. + + * Avoid unusual options such as `--absolute-names' (`-P'), + `--dereference' (`-h'), `--overwrite', `--recursive-unlink', and + `--remove-files' unless you understand their security implications. + + + +File: tar.info, Node: Changes, Next: Configuring Help Summary, Prev: Reliability and security, Up: Top Appendix A Changes ****************** This appendix lists some important user-visible changes between version -GNU `tar' 1.23 and previous versions. An up-to-date version of this +GNU `tar' 1.24 and previous versions. An up-to-date version of this document is available at the GNU `tar' documentation page (http://www.gnu.org/software/tar/manual/changes.html). @@ -3731,12 +4089,12 @@ backups (*note Incremental Dumps::). It contains the status of the file system at the time of the dump and is used to determine which files were modified since the last backup. - GNU `tar' version 1.23 supports three snapshot file formats. The + GNU `tar' version 1.24 supports three snapshot file formats. The first format, called "format 0", is the one used by GNU `tar' versions up to 1.15.1. The second format, called "format 1" is an extended version of this format, that contains more metadata and allows for further extensions. It was used by version 1.15.1. Starting from -version 1.16 and up to 1.23, the "format 2" is used. +version 1.16 and up to 1.24, the "format 2" is used. GNU `tar' is able to read all three formats, but will create snapshots only in format 2. @@ -3792,7 +4150,7 @@ snapshots only in format 2. 2. `Format 2' snapshot file begins with a format identifier, as described for version 1, e.g.: - GNU tar-1.23-2 + GNU tar-1.24-2 This line is followed by newline. Rest of file consists of records, separated by null (ASCII 0) characters. Thus, in contrast @@ -4242,7 +4600,7 @@ Use the following syntax instead: Notice, that the use of compatibility mode is deprecated.  -File: tar.info, Node: Free Software Needs Free Documentation, Next: Copying This Manual, Prev: Genfile, Up: Top +File: tar.info, Node: Free Software Needs Free Documentation, Next: GNU Free Documentation License, Prev: Genfile, Up: Top Appendix F Free Software Needs Free Documentation ************************************************* @@ -4334,25 +4692,15 @@ published by other publishers, at `http://www.fsf.org/doc/other-free-books.html'.  -File: tar.info, Node: Copying This Manual, Next: Index of Command Line Options, Prev: Free Software Needs Free Documentation, Up: Top +File: tar.info, Node: GNU Free Documentation License, Next: Index of Command Line Options, Prev: Free Software Needs Free Documentation, Up: Top -Appendix G Copying This Manual -****************************** +Appendix G GNU Free Documentation License +***************************************** -* Menu: + Version 1.3, 3 November 2008 -* GNU Free Documentation License:: License for copying this manual - - -File: tar.info, Node: GNU Free Documentation License, Up: Copying This Manual - -G.1 GNU Free Documentation License -================================== - - Version 1.2, November 2002 - - Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. + `http://fsf.org/' Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -4454,6 +4802,9 @@ G.1 GNU Free Documentation License Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. + The "publisher" means any person or entity that distributes copies + of the Document to the public. + A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ @@ -4719,12 +5070,29 @@ G.1 GNU Free Documentation License 9. TERMINATION You may not copy, modify, sublicense, or distribute the Document - except as expressly provided for under this License. Any other - attempt to copy, modify, sublicense or distribute the Document is - void, and will automatically terminate your rights under this - License. However, parties who have received copies, or rights, - from you under this License will not have their licenses - terminated so long as such parties remain in full compliance. + except as expressly provided under this License. Any attempt + otherwise to copy, modify, sublicense, or distribute it is void, + and will automatically terminate your rights under this License. + + However, if you cease all violation of this License, then your + license from a particular copyright holder is reinstated (a) + provisionally, unless and until the copyright holder explicitly + and finally terminates your license, and (b) permanently, if the + copyright holder fails to notify you of the violation by some + reasonable means prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is + reinstated permanently if the copyright holder notifies you of the + violation by some reasonable means, this is the first time you have + received notice of violation of this License (for any work) from + that copyright holder, and you cure the violation prior to 30 days + after your receipt of the notice. + + Termination of your rights under this section does not terminate + the licenses of parties who have received copies or rights from + you under this License. If your rights have been terminated and + not permanently reinstated, receipt of a copy of some or all of + the same material does not give you any rights to use it. 10. FUTURE REVISIONS OF THIS LICENSE @@ -4742,10 +5110,44 @@ G.1 GNU Free Documentation License published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the - Free Software Foundation. + Free Software Foundation. If the Document specifies that a proxy + can decide which future versions of this License can be used, that + proxy's public statement of acceptance of a version permanently + authorizes you to choose that version for the Document. + + 11. RELICENSING + + "Massive Multiauthor Collaboration Site" (or "MMC Site") means any + World Wide Web server that publishes copyrightable works and also + provides prominent facilities for anybody to edit those works. A + public wiki that anybody can edit is an example of such a server. + A "Massive Multiauthor Collaboration" (or "MMC") contained in the + site means any set of copyrightable works thus published on the MMC + site. + + "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0 + license published by Creative Commons Corporation, a not-for-profit + corporation with a principal place of business in San Francisco, + California, as well as future copyleft versions of that license + published by that same organization. + + "Incorporate" means to publish or republish a Document, in whole or + in part, as part of another Document. + + An MMC is "eligible for relicensing" if it is licensed under this + License, and if all works that were first published under this + License somewhere other than this MMC, and subsequently + incorporated in whole or in part into the MMC, (1) had no cover + texts or invariant sections, and (2) were thus incorporated prior + to November 1, 2008. + + The operator of an MMC Site may republish an MMC contained in the + site under CC-BY-SA on the same site at any time before August 1, + 2009, provided the MMC is eligible for relicensing. -G.1.1 ADDENDUM: How to use this License for your documents ----------------------------------------------------------- + +ADDENDUM: How to use this License for your documents +==================================================== To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license @@ -4753,7 +5155,7 @@ notices just after the title page: Copyright (C) YEAR YOUR NAME. Permission is granted to copy, distribute and/or modify this document - under the terms of the GNU Free Documentation License, Version 1.2 + under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU @@ -4776,14 +5178,14 @@ free software license, such as the GNU General Public License, to permit their use in free software.  -File: tar.info, Node: Index of Command Line Options, Next: Index, Prev: Copying This Manual, Up: Top +File: tar.info, Node: Index of Command Line Options, Next: Index, Prev: GNU Free Documentation License, Up: Top Appendix H Index of Command Line Options **************************************** This appendix contains an index of all GNU `tar' long command line options. The options are listed without the preceding double-dash. For -a cross-reference of short command line options, *note Short Option +a cross-reference of short command line options, see *note Short Option Summary::. [index] @@ -4791,7 +5193,7 @@ Summary::. * absolute-names: absolute. (line 10) * absolute-names, summary: Option Summary. (line 6) -* add-file: files. (line 85) +* add-file: files. (line 84) * after-date: after. (line 24) * after-date, summary: Option Summary. (line 12) * anchored: controlling pattern-matching. @@ -4802,7 +5204,7 @@ Summary::. * append, summary: Operation Summary. (line 6) * atime-preserve: Attributes. (line 10) * atime-preserve, summary: Option Summary. (line 19) -* auto-compress: gzip. (line 78) +* auto-compress: gzip. (line 144) * auto-compress, summary: Option Summary. (line 65) * backup: backup. (line 41) * backup, summary: Option Summary. (line 71) @@ -4810,7 +5212,6 @@ Summary::. * block-number, summary: Option Summary. (line 76) * blocking-factor: Blocking Factor. (line 8) * blocking-factor, summary: Option Summary. (line 82) -* bzip2: gzip. (line 134) * bzip2, summary: Option Summary. (line 87) * catenate: concatenate. (line 6) * catenate, summary: Operation Summary. (line 10) @@ -4826,7 +5227,7 @@ Summary::. * checkpoint-action, summary: Option Summary. (line 105) * compare: compare. (line 6) * compare, summary: Operation Summary. (line 14) -* compress: gzip. (line 151) +* compress: gzip. (line 101) * compress, summary: Option Summary. (line 152) * concatenate: concatenate. (line 6) * concatenate, summary: Operation Summary. (line 20) @@ -4887,252 +5288,254 @@ Summary::. * force-local, short description: Device. (line 70) * force-local, summary: Option Summary. (line 241) * format, summary: Option Summary. (line 246) +* full-time, summary: Option Summary. (line 271) * get, summary: Operation Summary. (line 42) * group: override. (line 75) -* group, summary: Option Summary. (line 271) -* gunzip, summary: Option Summary. (line 279) -* gzip: gzip. (line 100) -* gzip, summary: Option Summary. (line 279) +* group, summary: Option Summary. (line 289) +* gunzip, summary: Option Summary. (line 297) +* gzip: gzip. (line 79) +* gzip, summary: Option Summary. (line 297) * hard-dereference, described: hard links. (line 59) -* hard-dereference, summary: Option Summary. (line 287) +* hard-dereference, summary: Option Summary. (line 305) * help: help tutorial. (line 6) * help, introduction: help. (line 27) -* help, summary: Option Summary. (line 293) +* help, summary: Option Summary. (line 311) * ignore-case: controlling pattern-matching. (line 86) -* ignore-case, summary: Option Summary. (line 298) +* ignore-case, summary: Option Summary. (line 316) * ignore-command-error: Writing to an External Program. (line 98) -* ignore-command-error, summary: Option Summary. (line 302) +* ignore-command-error, summary: Option Summary. (line 320) * ignore-failed-read: Ignore Failed Read. (line 7) -* ignore-failed-read, summary: Option Summary. (line 306) +* ignore-failed-read, summary: Option Summary. (line 324) * ignore-zeros: Ignore Zeros. (line 6) * ignore-zeros, short description: Blocking Factor. (line 156) -* ignore-zeros, summary: Option Summary. (line 310) -* incremental, summary: Option Summary. (line 315) -* incremental, using with --list: Incremental Dumps. (line 157) -* index-file, summary: Option Summary. (line 322) +* ignore-zeros, summary: Option Summary. (line 328) +* incremental, summary: Option Summary. (line 333) +* incremental, using with --list: Incremental Dumps. (line 186) +* index-file, summary: Option Summary. (line 340) * info-script: Multi-Volume Archives. - (line 80) -* info-script, short description: Device. (line 104) -* info-script, summary: Option Summary. (line 325) + (line 88) +* info-script, short description: Device. (line 122) +* info-script, summary: Option Summary. (line 343) * interactive: interactive. (line 14) -* interactive, summary: Option Summary. (line 333) +* interactive, summary: Option Summary. (line 351) * keep-newer-files: Keep Newer Files. (line 6) -* keep-newer-files, summary: Option Summary. (line 340) +* keep-newer-files, summary: Option Summary. (line 358) * keep-old-files: Keep Old Files. (line 6) * keep-old-files, introduced: Dealing with Old Files. (line 16) -* keep-old-files, summary: Option Summary. (line 344) -* label <1>: label. (line 8) +* keep-old-files, summary: Option Summary. (line 362) +* label <1>: label. (line 6) * label: Tape Files. (line 6) -* label, summary: Option Summary. (line 349) +* label, summary: Option Summary. (line 367) * level, described: Incremental Dumps. (line 76) -* level, summary: Option Summary. (line 356) +* level, summary: Option Summary. (line 374) * list: list. (line 6) * list, summary: Operation Summary. (line 46) -* list, using with --incremental: Incremental Dumps. (line 159) -* list, using with --listed-incremental: Incremental Dumps. (line 160) +* list, using with --incremental: Incremental Dumps. (line 186) +* list, using with --listed-incremental: Incremental Dumps. (line 186) * list, using with --verbose: list. (line 30) * list, using with file name arguments: list. (line 68) * listed-incremental, described: Incremental Dumps. (line 14) -* listed-incremental, summary: Option Summary. (line 366) +* listed-incremental, summary: Option Summary. (line 384) * listed-incremental, using with --extract: Incremental Dumps. (line 121) -* listed-incremental, using with --list: Incremental Dumps. (line 158) -* lzip: gzip. (line 142) -* lzip, summary: Option Summary. (line 374) -* lzma: gzip. (line 145) -* lzma, summary: Option Summary. (line 378) -* lzop: gzip. (line 148) +* listed-incremental, using with --list: Incremental Dumps. (line 186) +* lzip: gzip. (line 92) +* lzip, summary: Option Summary. (line 392) +* lzma: gzip. (line 95) +* lzma, summary: Option Summary. (line 396) +* lzop: gzip. (line 98) * mode: override. (line 14) -* mode, summary: Option Summary. (line 386) +* mode, summary: Option Summary. (line 404) * mtime: override. (line 29) -* mtime, summary: Option Summary. (line 392) +* mtime, summary: Option Summary. (line 410) * multi-volume: Multi-Volume Archives. (line 6) * multi-volume, short description: Device. (line 88) -* multi-volume, summary: Option Summary. (line 401) +* multi-volume, summary: Option Summary. (line 419) * new-volume-script: Multi-Volume Archives. - (line 80) -* new-volume-script, short description: Device. (line 104) -* new-volume-script, summary: Option Summary. (line 325) + (line 88) +* new-volume-script, short description: Device. (line 122) +* new-volume-script, summary: Option Summary. (line 343) * newer: after. (line 24) -* newer, summary: Option Summary. (line 409) +* newer, summary: Option Summary. (line 427) * newer-mtime: after. (line 35) -* newer-mtime, summary: Option Summary. (line 417) +* newer-mtime, summary: Option Summary. (line 435) * no-anchored: controlling pattern-matching. (line 79) -* no-anchored, summary: Option Summary. (line 422) -* no-auto-compress, summary: Option Summary. (line 426) +* no-anchored, summary: Option Summary. (line 440) +* no-auto-compress, summary: Option Summary. (line 444) * no-check-device, described: Incremental Dumps. (line 104) -* no-check-device, summary: Option Summary. (line 430) +* no-check-device, summary: Option Summary. (line 448) * no-delay-directory-restore: Directory Modification Times and Permissions. (line 68) -* no-delay-directory-restore, summary: Option Summary. (line 435) +* no-delay-directory-restore, summary: Option Summary. (line 453) * no-ignore-case: controlling pattern-matching. (line 86) -* no-ignore-case, summary: Option Summary. (line 441) +* no-ignore-case, summary: Option Summary. (line 459) * no-ignore-command-error: Writing to an External Program. (line 103) -* no-ignore-command-error, summary: Option Summary. (line 444) +* no-ignore-command-error, summary: Option Summary. (line 462) * no-null, described: nul. (line 15) -* no-null, summary: Option Summary. (line 448) -* no-overwrite-dir, summary: Option Summary. (line 453) -* no-quote-chars, summary: Option Summary. (line 457) +* no-null, summary: Option Summary. (line 466) +* no-overwrite-dir, summary: Option Summary. (line 471) +* no-quote-chars, summary: Option Summary. (line 475) * no-recursion: recurse. (line 11) -* no-recursion, summary: Option Summary. (line 462) +* no-recursion, summary: Option Summary. (line 480) * no-same-owner: Attributes. (line 63) -* no-same-owner, summary: Option Summary. (line 466) -* no-same-permissions, summary: Option Summary. (line 472) -* no-seek, summary: Option Summary. (line 477) +* no-same-owner, summary: Option Summary. (line 484) +* no-same-permissions, summary: Option Summary. (line 490) +* no-seek, summary: Option Summary. (line 495) * no-unquote: Selecting Archive Members. (line 42) -* no-unquote, summary: Option Summary. (line 482) +* no-unquote, summary: Option Summary. (line 500) * no-wildcards: controlling pattern-matching. (line 41) -* no-wildcards, summary: Option Summary. (line 486) +* no-wildcards, summary: Option Summary. (line 504) * no-wildcards-match-slash: controlling pattern-matching. (line 92) -* no-wildcards-match-slash, summary: Option Summary. (line 489) +* no-wildcards-match-slash, summary: Option Summary. (line 507) * null, described: nul. (line 11) -* null, summary: Option Summary. (line 492) +* null, summary: Option Summary. (line 510) * numeric-owner: Attributes. (line 69) -* numeric-owner, summary: Option Summary. (line 498) +* numeric-owner, summary: Option Summary. (line 516) * occurrence, described: append. (line 34) -* occurrence, summary: Option Summary. (line 515) -* old-archive, summary: Option Summary. (line 529) +* occurrence, summary: Option Summary. (line 533) +* old-archive, summary: Option Summary. (line 547) * one-file-system: one. (line 14) -* one-file-system, summary: Option Summary. (line 532) +* one-file-system, summary: Option Summary. (line 550) * overwrite: Overwrite Old Files. (line 6) * overwrite, introduced: Dealing with Old Files. (line 22) -* overwrite, summary: Option Summary. (line 537) +* overwrite, summary: Option Summary. (line 555) * overwrite-dir: Overwrite Old Files. (line 28) * overwrite-dir, introduced: Dealing with Old Files. (line 6) -* overwrite-dir, summary: Option Summary. (line 541) +* overwrite-dir, summary: Option Summary. (line 559) * owner: override. (line 57) -* owner, summary: Option Summary. (line 545) +* owner, summary: Option Summary. (line 563) * pax-option: PAX keywords. (line 6) -* pax-option, summary: Option Summary. (line 554) -* portability, summary: Option Summary. (line 560) -* posix, summary: Option Summary. (line 564) +* pax-option, summary: Option Summary. (line 572) +* portability, summary: Option Summary. (line 578) +* posix, summary: Option Summary. (line 582) * preserve: Attributes. (line 122) -* preserve, summary: Option Summary. (line 567) +* preserve, summary: Option Summary. (line 585) * preserve-order: Same Order. (line 6) -* preserve-order, summary: Option Summary. (line 571) +* preserve-order, summary: Option Summary. (line 589) * preserve-permissions: Setting Access Permissions. (line 10) * preserve-permissions, short description: Attributes. (line 109) -* preserve-permissions, summary: Option Summary. (line 574) -* quote-chars, summary: Option Summary. (line 584) +* preserve-permissions, summary: Option Summary. (line 592) +* quote-chars, summary: Option Summary. (line 602) * quoting-style: quoting styles. (line 38) -* quoting-style, summary: Option Summary. (line 588) +* quoting-style, summary: Option Summary. (line 606) * read-full-records <1>: read full records. (line 6) * read-full-records: Reading. (line 6) * read-full-records, short description: Blocking Factor. (line 172) -* read-full-records, summary: Option Summary. (line 595) -* record-size, summary: Option Summary. (line 600) +* read-full-records, summary: Option Summary. (line 613) +* record-size, summary: Option Summary. (line 618) * recursion: recurse. (line 22) -* recursion, summary: Option Summary. (line 604) +* recursion, summary: Option Summary. (line 625) * recursive-unlink: Recursive Unlink. (line 6) -* recursive-unlink, summary: Option Summary. (line 608) +* recursive-unlink, summary: Option Summary. (line 629) * remove-files: remove files. (line 6) -* remove-files, summary: Option Summary. (line 613) -* restrict, summary: Option Summary. (line 617) -* rmt-command, summary: Option Summary. (line 622) +* remove-files, summary: Option Summary. (line 634) +* restrict, summary: Option Summary. (line 638) +* rmt-command, summary: Option Summary. (line 643) * rsh-command: Device. (line 73) -* rsh-command, summary: Option Summary. (line 626) +* rsh-command, summary: Option Summary. (line 647) * same-order: Same Order. (line 6) -* same-order, summary: Option Summary. (line 630) +* same-order, summary: Option Summary. (line 651) * same-owner: Attributes. (line 44) -* same-owner, summary: Option Summary. (line 638) +* same-owner, summary: Option Summary. (line 659) * same-permissions: Setting Access Permissions. (line 10) * same-permissions, short description: Attributes. (line 109) -* same-permissions, summary: Option Summary. (line 574) -* seek, summary: Option Summary. (line 647) +* same-permissions, summary: Option Summary. (line 592) +* seek, summary: Option Summary. (line 668) * show-defaults: defaults. (line 6) -* show-defaults, summary: Option Summary. (line 656) +* show-defaults, summary: Option Summary. (line 677) * show-omitted-dirs: verbose. (line 107) -* show-omitted-dirs, summary: Option Summary. (line 668) +* show-omitted-dirs, summary: Option Summary. (line 689) * show-stored-names: list. (line 60) -* show-stored-names, summary: Option Summary. (line 672) +* show-stored-names, summary: Option Summary. (line 693) * show-transformed-names: transform. (line 45) -* show-transformed-names, summary: Option Summary. (line 672) +* show-transformed-names, summary: Option Summary. (line 693) * sparse: sparse. (line 22) -* sparse, summary: Option Summary. (line 680) +* sparse, summary: Option Summary. (line 701) * sparse-version: sparse. (line 57) -* sparse-version, summary: Option Summary. (line 685) +* sparse-version, summary: Option Summary. (line 706) * starting-file: Starting File. (line 6) -* starting-file, summary: Option Summary. (line 690) +* starting-file, summary: Option Summary. (line 711) * strip-components: transform. (line 25) -* strip-components, summary: Option Summary. (line 696) +* strip-components, summary: Option Summary. (line 717) * suffix: backup. (line 68) -* suffix, summary: Option Summary. (line 705) +* suffix, summary: Option Summary. (line 726) * tape-length: Multi-Volume Archives. (line 33) * tape-length, short description: Device. (line 96) -* tape-length, summary: Option Summary. (line 709) -* test-label: label. (line 37) -* test-label, summary: Option Summary. (line 714) +* tape-length, summary: Option Summary. (line 730) +* test-label: label. (line 35) +* test-label, summary: Option Summary. (line 739) * to-command: Writing to an External Program. (line 9) -* to-command, summary: Option Summary. (line 718) +* to-command, summary: Option Summary. (line 743) * to-stdout: Writing to Standard Output. (line 14) -* to-stdout, summary: Option Summary. (line 722) +* to-stdout, summary: Option Summary. (line 747) * totals: verbose. (line 46) -* totals, summary: Option Summary. (line 727) +* totals, summary: Option Summary. (line 752) * touch <1>: Attributes. (line 33) * touch: Data Modification Times. (line 15) -* touch, summary: Option Summary. (line 732) +* touch, summary: Option Summary. (line 757) * transform: transform. (line 74) -* transform, summary: Option Summary. (line 738) -* uncompress: gzip. (line 151) +* transform, summary: Option Summary. (line 763) +* uncompress: gzip. (line 101) * uncompress, summary: Option Summary. (line 152) -* ungzip: gzip. (line 100) -* ungzip, summary: Option Summary. (line 279) +* ungzip: gzip. (line 79) +* ungzip, summary: Option Summary. (line 297) * unlink-first: Unlink First. (line 6) * unlink-first, introduced: Dealing with Old Files. (line 42) -* unlink-first, summary: Option Summary. (line 758) +* unlink-first, summary: Option Summary. (line 783) * unquote: Selecting Archive Members. (line 39) -* unquote, summary: Option Summary. (line 764) +* unquote, summary: Option Summary. (line 789) * update <1>: how to update. (line 6) * update: update. (line 6) * update, summary: Operation Summary. (line 50) * usage: help. (line 54) -* use-compress-program: gzip. (line 156) -* use-compress-program, summary: Option Summary. (line 768) -* utc, summary: Option Summary. (line 773) +* use-compress-program: gzip. (line 166) +* use-compress-program, summary: Option Summary. (line 793) +* utc, summary: Option Summary. (line 798) * verbose: verbose. (line 18) * verbose, introduced: verbose tutorial. (line 6) -* verbose, summary: Option Summary. (line 777) +* verbose, summary: Option Summary. (line 802) * verbose, using with --create: create verbose. (line 6) * verbose, using with --list: list. (line 30) * verify, short description: verify. (line 8) -* verify, summary: Option Summary. (line 784) +* verify, summary: Option Summary. (line 809) * verify, using with --create: verify. (line 24) * version: help. (line 6) -* version, summary: Option Summary. (line 789) +* version, summary: Option Summary. (line 814) * volno-file: Multi-Volume Archives. - (line 71) -* volno-file, summary: Option Summary. (line 794) + (line 79) +* volno-file, summary: Option Summary. (line 819) * warning, explained: warnings. (line 12) -* warning, summary: Option Summary. (line 799) +* warning, summary: Option Summary. (line 824) * wildcards: controlling pattern-matching. (line 38) -* wildcards, summary: Option Summary. (line 804) +* wildcards, summary: Option Summary. (line 829) * wildcards-match-slash: controlling pattern-matching. (line 92) -* wildcards-match-slash, summary: Option Summary. (line 808) +* wildcards-match-slash, summary: Option Summary. (line 833) * xform: transform. (line 74) -* xform, summary: Option Summary. (line 738) -* xz, summary: Option Summary. (line 811) +* xform, summary: Option Summary. (line 763) +* xz: gzip. (line 84) +* xz, summary: Option Summary. (line 836)  File: tar.info, Node: Index, Prev: Index of Command Line Options, Up: Top @@ -5185,7 +5588,8 @@ Appendix I Index * atrributes, files: Attributes. (line 6) * Attempting extraction of symbolic links as hard links, warning message: warnings. (line 77) -* authors of get_date: Authors of get_date. (line 6) +* authors of parse_datetime: Authors of parse_datetime. + (line 6) * Avoiding recursion in directories: recurse. (line 6) * backup options: backup. (line 6) * backup suffix: backup. (line 68) @@ -5203,9 +5607,12 @@ Appendix I Index * beginning of time, for POSIX: Seconds since the Epoch. (line 13) * bell, checkpoint action: checkpoints. (line 65) -* Bellovin, Steven M.: Authors of get_date. (line 6) -* Berets, Jim: Authors of get_date. (line 6) -* Berry, K.: Authors of get_date. (line 14) +* Bellovin, Steven M.: Authors of parse_datetime. + (line 6) +* Berets, Jim: Authors of parse_datetime. + (line 6) +* Berry, K.: Authors of parse_datetime. + (line 19) * binary equivalent archives, creating: PAX keywords. (line 132) * block: Blocking. (line 6) * Block number where error occurred: verbose. (line 115) @@ -5232,7 +5639,7 @@ Appendix I Index * Concatenating Archives: concatenate. (line 6) * contains a cache directory tag, warning message: warnings. (line 43) * contiguous-cast: warnings. (line 74) -* corrupted archives <1>: gzip. (line 119) +* corrupted archives <1>: gzip. (line 134) * corrupted archives: Full Dumps. (line 8) * Creation of the archive: create. (line 8) * Current %s is newer or same age, warning message: warnings. (line 83) @@ -5277,10 +5684,11 @@ Appendix I Index * dup-args-note: Configuring Help Summary. (line 68) * echo, checkpoint action: checkpoints. (line 25) -* Eggert, Paul: Authors of get_date. (line 6) +* Eggert, Paul: Authors of parse_datetime. + (line 6) * End-of-archive blocks, ignoring: Ignore Zeros. (line 6) * End-of-archive info script: Multi-Volume Archives. - (line 80) + (line 88) * entry: Naming tar Archives. (line 11) * epoch, for POSIX: Seconds since the Epoch. (line 13) @@ -5303,8 +5711,6 @@ Appendix I Index * extracting Nth copy of the file: append. (line 34) * Extraction: extract. (line 6) * extraction: Definitions. (line 22) -* FDL, GNU Free Documentation License: GNU Free Documentation License. - (line 6) * file archival: Top. (line 24) * file attributes: Attributes. (line 6) * file changed as we read it, warning message: warnings. (line 64) @@ -5358,7 +5764,6 @@ Appendix I Index * genfile, generate mode: Generate Mode. (line 6) * genfile, reading a list of file names: Generate Mode. (line 22) * genfile, seeking to a given offset: Generate Mode. (line 18) -* get_date: Date input formats. (line 6) * Getting program version number: help. (line 6) * git, excluding files: exclude. (line 37) * GNU archive format: gnu. (line 6) @@ -5372,8 +5777,8 @@ Appendix I Index * GNU.sparse.offset, extended header variable: PAX 0. (line 18) * GNU.sparse.realsize, extended header variable: PAX 1. (line 24) * GNU.sparse.size, extended header variable: PAX 0. (line 11) -* gnupg, using with tar: gzip. (line 171) -* gpg, using with tar: gzip. (line 171) +* gnupg, using with tar: gzip. (line 181) +* gpg, using with tar: gzip. (line 181) * gzip: gzip. (line 6) * hard links, dereferencing: hard links. (line 6) * header-col: Configuring Help Summary. @@ -5388,7 +5793,7 @@ Appendix I Index (line 86) * implausibly old time stamp %s, warning message: warnings. (line 72) * Info script: Multi-Volume Archives. - (line 80) + (line 88) * Interactive operation: interactive. (line 6) * ISO 8601 date format: Calendar date items. (line 30) * items in date strings: General date syntax. (line 6) @@ -5402,9 +5807,11 @@ Appendix I Index (line 6) * last DAY: Day of week items. (line 15) * last in date strings: General date syntax. (line 26) +* Laszlo Ersek: lbzip2. (line 6) +* lbzip2: lbzip2. (line 6) * Listing all tar options: help. (line 27) * listing member and file names: list. (line 41) -* Listing volume label: label. (line 29) +* Listing volume label: label. (line 27) * Lists of file names: files. (line 6) * Local and remote archives: file. (line 71) * long options: Long Options. (line 6) @@ -5415,7 +5822,8 @@ Appendix I Index * lzip: gzip. (line 6) * lzma: gzip. (line 6) * lzop: gzip. (line 6) -* MacKenzie, David: Authors of get_date. (line 6) +* MacKenzie, David: Authors of parse_datetime. + (line 6) * Malformed dumpdir: 'X' never used, warning message: warnings. (line 102) * member: Definitions. (line 15) @@ -5423,7 +5831,8 @@ Appendix I Index * members, multiple: multiple. (line 6) * Members, replacing with other members: append. (line 47) * Mercurial, excluding files: exclude. (line 37) -* Meyering, Jim: Authors of get_date. (line 6) +* Meyering, Jim: Authors of parse_datetime. + (line 6) * Middle of the archive, starting in the: Starting File. (line 11) * midnight in date strings: Time of day items. (line 22) * minute in date strings: Relative items in date strings. @@ -5498,11 +5907,13 @@ Appendix I Index * ordinal numbers: General date syntax. (line 26) * Overwriting old files, prevention: Dealing with Old Files. (line 16) +* parse_datetime: Date input formats. (line 6) * pattern, genfile: Generate Mode. (line 39) * PAX archive format: posix. (line 6) * Permissions of extracted files: Setting Access Permissions. (line 6) -* Pinard, F.: Authors of get_date. (line 14) +* Pinard, F.: Authors of parse_datetime. + (line 19) * pm in date strings: Time of day items. (line 22) * POSIX archive format: posix. (line 6) * Progress information: verbose. (line 83) @@ -5538,7 +5949,8 @@ Appendix I Index * RSH_COMMAND: General-Purpose Variables. (line 77) * Running out of space: Scarce. (line 8) -* Salz, Rich: Authors of get_date. (line 6) +* Salz, Rich: Authors of parse_datetime. + (line 6) * SCCS, excluding files: exclude. (line 37) * short options: Short Options. (line 6) * short options with mandatory arguments: Short Options. (line 13) @@ -5609,7 +6021,7 @@ Appendix I Index (line 15) * TAR_ARCHIVE, checkpoint script environment: checkpoints. (line 108) * TAR_ARCHIVE, info script environment variable: Multi-Volume Archives. - (line 100) + (line 108) * TAR_ARCHIVE, to-command environment: Writing to an External Program. (line 76) * TAR_ATIME, to-command environment: Writing to an External Program. @@ -5617,21 +6029,21 @@ Appendix I Index * TAR_BLOCKING_FACTOR, checkpoint script environment: checkpoints. (line 111) * TAR_BLOCKING_FACTOR, info script environment variable: Multi-Volume Archives. - (line 103) + (line 111) * TAR_BLOCKING_FACTOR, to-command environment: Writing to an External Program. (line 79) * TAR_CHECKPOINT, checkpoint script environment: checkpoints. (line 114) * TAR_CTIME, to-command environment: Writing to an External Program. (line 58) * TAR_FD, info script environment variable: Multi-Volume Archives. - (line 117) + (line 125) * TAR_FILENAME, to-command environment: Writing to an External Program. (line 37) * TAR_FILETYPE, to-command environment: Writing to an External Program. (line 22) * TAR_FORMAT, checkpoint script environment: checkpoints. (line 121) * TAR_FORMAT, info script environment variable: Multi-Volume Archives. - (line 113) + (line 121) * TAR_FORMAT, to-command environment: Writing to an External Program. (line 85) * TAR_GID, to-command environment: Writing to an External Program. @@ -5649,18 +6061,18 @@ Appendix I Index (line 61) * TAR_SUBCOMMAND, checkpoint script environment: checkpoints. (line 117) * TAR_SUBCOMMAND, info script environment variable: Multi-Volume Archives. - (line 109) + (line 117) * TAR_UID, to-command environment: Writing to an External Program. (line 64) * TAR_UNAME, to-command environment: Writing to an External Program. (line 43) * TAR_VERSION, checkpoint script environment: checkpoints. (line 105) * TAR_VERSION, info script environment variable: Multi-Volume Archives. - (line 97) + (line 105) * TAR_VERSION, to-command environment: Writing to an External Program. (line 73) * TAR_VOLUME, info script environment variable: Multi-Volume Archives. - (line 106) + (line 114) * TAR_VOLUME, to-command environment: Writing to an External Program. (line 82) * tarcat: Tarcat. (line 6) @@ -5690,7 +6102,7 @@ Appendix I Index * Updating an archive: update. (line 6) * usage-indent: Configuring Help Summary. (line 154) -* Using encrypted archives: gzip. (line 171) +* Using encrypted archives: gzip. (line 181) * ustar archive format: ustar. (line 6) * uuencode: Applications. (line 8) * v7 archive format: old. (line 6) @@ -5703,12 +6115,12 @@ Appendix I Index * version-control Emacs variable: backup. (line 49) * VERSION_CONTROL: backup. (line 41) * volno file: Multi-Volume Archives. - (line 71) + (line 79) * VOLNO_FILE: General-Purpose Variables. (line 82) -* Volume label, listing: label. (line 29) +* Volume label, listing: label. (line 27) * Volume number file: Multi-Volume Archives. - (line 71) + (line 79) * week in date strings: Relative items in date strings. (line 15) * Where is the archive?: file. (line 6) diff --git a/doc/tar.texi b/doc/tar.texi index 0fcd04b..6d9d9cc 100644 --- a/doc/tar.texi +++ b/doc/tar.texi @@ -41,11 +41,12 @@ Copyright @copyright{} 1992, 1994, 1995, 1996, 1997, 1999, 2000, 2001, @quotation Permission is granted to copy, distribute and/or modify this document -under the terms of the GNU Free Documentation License, Version 1.1 or +under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no -Invariant Sections, with the Front-Cover Texts being ``A GNU Manual,'' +Invariant Sections, with the Front-Cover Texts being ``A GNU Manual'', and with the Back-Cover Texts as in (a) below. A copy of the license -is included in the section entitled "GNU Free Documentation License". +is included in the section entitled ``GNU Free Documentation +License''. (a) The FSF's Back-Cover Text is: ``You have the freedom to copy and modify this GNU manual. Buying copies from the FSF @@ -106,6 +107,7 @@ document. The rest of the menu lists all the lower level nodes. * Date input formats:: * Formats:: * Media:: +* Reliability and security:: Appendices @@ -115,7 +117,7 @@ Appendices * Tar Internals:: * Genfile:: * Free Software Needs Free Documentation:: -* Copying This Manual:: +* GNU Free Documentation License:: * Index of Command Line Options:: * Index:: @@ -316,7 +318,7 @@ Date input formats * Pure numbers in date strings:: 19931219, 1440. * Seconds since the Epoch:: @@1078100502. * Specifying time zone rules:: TZ="America/New_York", TZ="UTC0". -* Authors of get_date:: Bellovin, Eggert, Salz, Berets, et al. +* Authors of parse_datetime:: Bellovin, Eggert, Salz, Berets, et al. Controlling the Archive Format @@ -330,6 +332,10 @@ Using Less Space through Compression * gzip:: Creating and Reading Compressed Archives * sparse:: Archiving Sparse Files +Creating and Reading Compressed Archives + +* lbzip2:: Using lbzip2 with @GNUTAR{}. + Making @command{tar} Archives More Portable * Portable Names:: Portable Names @@ -449,7 +455,7 @@ operations (@samp{create}, @samp{list}, and @samp{extract}) as well as two frequently used options (@samp{file} and @samp{verbose}). The other chapters do not refer to the tutorial frequently; however, if a section discusses something which is a complex variant of a basic concept, there -may be a cross reference to that basic concept. (The entire book, +may be a cross-reference to that basic concept. (The entire book, including the tutorial, assumes that the reader understands some basic concepts of using a Unix-type operating system; @pxref{Tutorial}.) @@ -2461,7 +2467,7 @@ This option tells @command{tar} to read or write archives through @item --check-device Check device numbers when creating a list of modified files for incremental archiving. This is the default. @xref{device numbers}, -for a detailed description. +for a detailed description. @opsummary{checkpoint} @item --checkpoint[=@var{number}] @@ -2553,9 +2559,9 @@ directories until the end of extraction. @xref{Directory Modification Times and @item --dereference @itemx -h -When creating a @command{tar} archive, @command{tar} will archive the -file that a symbolic link points to, rather than archiving the -symlink. @xref{dereference}. +When reading or writing a file to be archived, @command{tar} accesses +the file that a symbolic link points to, rather than the symlink +itself. @xref{dereference}. @opsummary{directory} @item --directory=@var{dir} @@ -2684,6 +2690,30 @@ Creates a @acronym{POSIX.1-2001 archive}. @xref{Formats}, for a detailed discussion of these formats. +@opsummary{full-time} +@item --full-time +This option instructs @command{tar} to print file times to their full +resolution. Usually this means 1-second resolution, but that depends +on the underlying file system. The @option{--full-time} option takes +effect only when detailed output (verbosity level 2 or higher) has +been requested using the @option{--verbose} option, e.g., when listing +or extracting archives: + +@smallexample +$ @kbd{tar -t -v --full-time -f archive.tar} +@end smallexample + +@noindent +or, when creating an archive: + +@smallexample +$ @kbd{tar -c -vv --full-time -f archive.tar .} +@end smallexample + +Notice, thar when creating the archive you need to specify +@option{--verbose} twice to get a detailed output (@pxref{verbose +tutorial}). + @opsummary{group} @item --group=@var{group} @@ -2900,7 +2930,7 @@ suffix. @xref{--auto-compress}. @xref{gzip}. @item --no-check-device Do not check device numbers when creating a list of modified files for incremental archiving. @xref{device numbers}, for -a detailed description. +a detailed description. @opsummary{no-delay-directory-restore} @item --no-delay-directory-restore @@ -3125,10 +3155,13 @@ Specifies that @command{tar} should reblock its input, for reading from pipes on systems with buggy implementations. @xref{Reading}. @opsummary{record-size} -@item --record-size=@var{size} +@item --record-size=@var{size}[@var{suf}] Instructs @command{tar} to use @var{size} bytes per record when accessing the -archive. @xref{Blocking Factor}. +archive. The argument can be suffixed with a @dfn{size suffix}, e.g. +@option{--record-size=10K} for 10 Kilobytes. @xref{size-suffixes}, +for a list of valid suffixes. @xref{Blocking Factor}, for a detailed +description of this option. @opsummary{recursion} @item --recursion @@ -3210,7 +3243,7 @@ successfully. This option is intended for use in shell scripts. Here is an example of what you can see using this option: @smallexample -$ tar --show-defaults +$ @kbd{tar --show-defaults} --format=gnu -f- -b20 --quoting-style=escape --rmt-command=/usr/libexec/rmt --rsh-command=/usr/bin/rsh @end smallexample @@ -3278,11 +3311,15 @@ Alters the suffix @command{tar} uses when backing up files from the default @samp{~}. @xref{backup}. @opsummary{tape-length} -@item --tape-length=@var{num} -@itemx -L @var{num} +@item --tape-length=@var{num}[@var{suf}] +@itemx -L @var{num}[@var{suf}] Specifies the length of tapes that @command{tar} is writing as being -@w{@var{num} x 1024} bytes long. @xref{Using Multiple Tapes}. +@w{@var{num} x 1024} bytes long. If optional @var{suf} is given, it +specifies a multiplicative factor to be used instead of 1024. For +example, @samp{-L2M} means 2 megabytes. @xref{size-suffixes}, for a +list of allowed suffixes. @xref{Using Multiple Tapes}, for a detailed +discussion of this option. @opsummary{test-label} @item --test-label @@ -3342,12 +3379,12 @@ To see transformed member names in verbose listings, use @opsummary{uncompress} @item --uncompress -(See @option{--compress}. @pxref{gzip}) +(See @option{--compress}, @pxref{gzip}) @opsummary{ungzip} @item --ungzip -(See @option{--gzip}. @pxref{gzip}) +(See @option{--gzip}, @pxref{gzip}) @opsummary{unlink-first} @item --unlink-first @@ -4127,7 +4164,7 @@ Disable all warning messages. @samp{Current %s is newer or same age} @kwindex unknown-keyword @cindex @samp{Ignoring unknown extended header keyword `%s'}, warning message -@item unknown-keyword +@item unknown-keyword @samp{Ignoring unknown extended header keyword `%s'} @end table @@ -4383,7 +4420,7 @@ of those members listed, with their data modification times, owners, etc. Other operations don't deal with these members as perfectly as you might prefer; if you were to use @option{--extract} to extract the archive, -only the most recently added copy of a member with the same name as +only the most recently added copy of a member with the same name as other members would end up in the working directory. This is because @option{--extract} extracts an archive in the order the members appeared in the archive; the most recently archived members will be extracted @@ -4551,7 +4588,7 @@ $ @kbd{tar --extract -vv --occurrence --file=collection.tar blues} @end smallexample @xref{Writing}, for more information on @option{--extract} and -@xref{Option Summary, --occurrence}, for the description of +see @ref{Option Summary, --occurrence}, for a description of @option{--occurrence} option. @node update @@ -4599,7 +4636,7 @@ To see the @option{--update} option at work, create a new file, @file{classical}, in your practice directory, and some extra text to the file @file{blues}, using any text editor. Then invoke @command{tar} with the @samp{update} operation and the @option{--verbose} (@option{-v}) -option specified, using the names of all the files in the practice +option specified, using the names of all the files in the @file{practice} directory as file name arguments: @smallexample @@ -4646,8 +4683,8 @@ To use @option{--concatenate}, give the first archive with @option{--file} option and name the rest of archives to be concatenated on the command line. The members, and their member names, will be copied verbatim from those archives to the first -one@footnote{This can cause multiple members to have the same name, for -information on how this affects reading the archive, @ref{multiple}.}. +one@footnote{This can cause multiple members to have the same name. For +information on how this affects reading the archive, see @ref{multiple}.}. The new, concatenated archive will be called by the same name as the one given with the @option{--file} option. As usual, if you omit @option{--file}, @command{tar} will use the value of the environment @@ -4811,7 +4848,7 @@ tar: funk not found in archive The spirit behind the @option{--compare} (@option{--diff}, @option{-d}) option is to check whether the archive represents the current state of files on disk, more than validating the integrity of -the archive media. For this latter goal, @xref{verify}. +the archive media. For this latter goal, see @ref{verify}. @node create options @section Options Used by @option{--create} @@ -4869,7 +4906,7 @@ either a textual date representation in almost arbitrary format with @samp{/} or @samp{.}. In the latter case, the modification time of that file will be used. -The following example will set the modification date to 00:00:00 UTC, +The following example will set the modification date to 00:00:00, January 1, 1970: @smallexample @@ -5536,9 +5573,9 @@ space, you can use @option{--starting-file=@var{name}} (@option{-K archive. This assumes, of course, that there is now free space, or that you are now extracting into a different file system. (You could also choose to suspend @command{tar}, remove unnecessary files from -the file system, and then restart the same @command{tar} operation. -In this case, @option{--starting-file} is not necessary. -@xref{Incremental Dumps}, @xref{interactive}, and @ref{exclude}.) +the file system, and then resume the same @command{tar} operation. +In this case, @option{--starting-file} is not necessary.) See also +@ref{interactive}, and @ref{exclude}. @node Same Order @unnumberedsubsubsec Same Order @@ -5692,16 +5729,20 @@ $ @kbd{tar -C sourcedir -cf - . | tar -C targetdir -xf -} The command also works using long option forms: @smallexample +@group $ @kbd{(cd sourcedir; tar --create --file=- . ) \ | (cd targetdir; tar --extract --file=-)} +@end group @end smallexample @noindent or @smallexample -$ @kbd{tar --directory sourcedir --create --file=- . ) \ +@group +$ @kbd{tar --directory sourcedir --create --file=- . \ | tar --directory targetdir --extract --file=-} +@end group @end smallexample @noindent @@ -5741,7 +5782,7 @@ sophisticated packages dedicated to that purpose. Some users are enthusiastic about @code{Amanda} (The Advanced Maryland Automatic Network Disk Archiver), a backup system developed by James da Silva @file{jds@@cs.umd.edu} and available on many Unix systems. -This is free software, and it is available from @uref{http://www.amanda.org}. +This is free software, and it is available from @uref{http://www.amanda.org}. @FIXME{ @@ -5983,7 +6024,7 @@ Use device numbers when preparing a list of changed files for an incremental dump. This is the default behavior. The purpose of this option is to undo the effect of the @option{--no-check-device} if it was given in @env{TAR_OPTIONS} environment variable -(@pxref{TAR_OPTIONS}). +(@pxref{TAR_OPTIONS}). @end table There is also another way to cope with changing device numbers. It is @@ -8069,8 +8110,8 @@ $ @kbd{tar --transform 's,^,/usr/local/,S', -c -v -f arch.tar \ --show-transformed /lib} drwxr-xr-x root/root 0 2008-07-08 16:20 /usr/local/lib/ -rwxr-xr-x root/root 1250840 2008-05-25 07:44 /usr/local/lib/libc-2.3.2.so -lrwxrwxrwx root/root 0 2008-06-24 17:12 /usr/local/lib/libc.so.6 -> -libc-2.3.2.so +lrwxrwxrwx root/root 0 2008-06-24 17:12 /usr/local/lib/libc.so.6 \ + -> libc-2.3.2.so @end smallexample Unlike @option{--strip-components}, @option{--transform} can be used @@ -8516,7 +8557,10 @@ For example: $ @kbd{tar -c -f archive.tar -C / home} @end smallexample -@include getdate.texi +@xref{Integrity}, for some of the security-related implications +of using this option. + +@include parse-datetime.texi @node Formats @chapter Controlling the Archive Format @@ -8653,7 +8697,7 @@ switch to @samp{posix}. a wide variety of compression programs, namely: @command{gzip}, @command{bzip2}, @command{lzip}, @command{lzma}, @command{lzop}, @command{xz} and traditional @command{compress}. The latter is -supported mostly for backward compatibility, and we recommend +supported mostly for backward compatibility, and we recommend against using it, because it is by far less effective than the other compression programs@footnote{It also had patent problems in the past.}. @@ -8663,7 +8707,7 @@ commands. The compression option is @option{-z} (@option{--gzip}) to create a @command{gzip} compressed archive, @option{-j} (@option{--bzip2}) to create a @command{bzip2} compressed archive, @option{--lzip} to create an @asis{lzip} compressed archive, -@option{-J} (@option{--xz}) to create an @asis{XZ} archive, +@option{-J} (@option{--xz}) to create an @asis{XZ} archive, @option{--lzma} to create an @asis{LZMA} compressed archive, @option{--lzop} to create an @asis{LSOP} archive, and @option{-Z} (@option{--compress}) to use @command{compress} program. @@ -8673,7 +8717,7 @@ For example: $ @kbd{tar cfz archive.tar.gz .} @end smallexample -You can also let @GNUTAR{} select the compression program basing on +You can also let @GNUTAR{} select the compression program based on the suffix of the archive file name. This is done using @option{--auto-compress} (@option{-a}) command line option. For example, the following invocation will use @command{bzip2} for @@ -8691,7 +8735,7 @@ $ @kbd{tar cfa archive.tar.lzma .} @end smallexample For a complete list of file name suffixes recognized by @GNUTAR{}, -@ref{auto-compress}. +see @ref{auto-compress}. Reading compressed archive is even simpler: you don't need to specify any additional options as @GNUTAR{} recognizes its format @@ -8709,7 +8753,7 @@ The format recognition algorithm is based on @dfn{signatures}, a special byte sequences in the beginning of file, that are specific for certain compression formats. If this approach fails, @command{tar} falls back to using archive name suffix to determine its format -(@xref{auto-compress}, for a list of recognized suffixes). +(@pxref{auto-compress}, for a list of recognized suffixes). The only case when you have to specify a decompression option while reading the archive is when reading from a pipe or from a tape drive @@ -8738,34 +8782,9 @@ cannot append another @command{tar} archive to a compressed archive using @option{--concatenate} (@option{-A}). Secondly, multi-volume archives cannot be compressed. -The following table summarizes compression options used by @GNUTAR{}. +The following options allow to select a particular compressor program: @table @option -@anchor{auto-compress} -@opindex auto-compress -@item --auto-compress -@itemx -a -Select a compression program to use by the archive file name -suffix. The following suffixes are recognized: - -@multitable @columnfractions 0.3 0.6 -@headitem Suffix @tab Compression program -@item @samp{.gz} @tab @command{gzip} -@item @samp{.tgz} @tab @command{gzip} -@item @samp{.taz} @tab @command{gzip} -@item @samp{.Z} @tab @command{compress} -@item @samp{.taZ} @tab @command{compress} -@item @samp{.bz2} @tab @command{bzip2} -@item @samp{.tz2} @tab @command{bzip2} -@item @samp{.tbz2} @tab @command{bzip2} -@item @samp{.tbz} @tab @command{bzip2} -@item @samp{.lz} @tab @command{lzip} -@item @samp{.lzma} @tab @command{lzma} -@item @samp{.tlz} @tab @command{lzma} -@item @samp{.lzo} @tab @command{lzop} -@item @samp{.xz} @tab @command{xz} -@end multitable - @opindex gzip @opindex ungzip @item -z @@ -8773,69 +8792,110 @@ suffix. The following suffixes are recognized: @itemx --ungzip Filter the archive through @command{gzip}. -You can use @option{--gzip} and @option{--gunzip} on physical devices -(tape drives, etc.) and remote files as well as on normal files; data -to or from such devices or remote files is reblocked by another copy -of the @command{tar} program to enforce the specified (or default) record -size. The default compression parameters are used; if you need to -override them, set @env{GZIP} environment variable, e.g.: - -@smallexample -$ @kbd{GZIP=--best tar cfz archive.tar.gz subdir} -@end smallexample - -@noindent -Another way would be to avoid the @option{--gzip} (@option{--gunzip}, @option{--ungzip}, @option{-z}) option and run -@command{gzip} explicitly: - -@smallexample -$ @kbd{tar cf - subdir | gzip --best -c - > archive.tar.gz} -@end smallexample - -@cindex corrupted archives -About corrupted compressed archives: @command{gzip}'ed files have no -redundancy, for maximum compression. The adaptive nature of the -compression scheme means that the compression tables are implicitly -spread all over the archive. If you lose a few blocks, the dynamic -construction of the compression tables becomes unsynchronized, and there -is little chance that you could recover later in the archive. - -There are pending suggestions for having a per-volume or per-file -compression in @GNUTAR{}. This would allow for viewing the -contents without decompression, and for resynchronizing decompression at -every volume or file, in case of corrupted archives. Doing so, we might -lose some compressibility. But this would have make recovering easier. -So, there are pros and cons. We'll see! - -@opindex bzip2 +@opindex xz @item -J @itemx --xz -Filter the archive through @code{xz}. Otherwise like -@option{--gzip}. +Filter the archive through @code{xz}. @item -j @itemx --bzip2 -Filter the archive through @code{bzip2}. Otherwise like @option{--gzip}. +Filter the archive through @code{bzip2}. @opindex lzip @item --lzip -Filter the archive through @command{lzip}. Otherwise like @option{--gzip}. +Filter the archive through @command{lzip}. @opindex lzma @item --lzma -Filter the archive through @command{lzma}. Otherwise like @option{--gzip}. +Filter the archive through @command{lzma}. @opindex lzop @item --lzop -Filter the archive through @command{lzop}. Otherwise like -@option{--gzip}. +Filter the archive through @command{lzop}. @opindex compress @opindex uncompress @item -Z @itemx --compress @itemx --uncompress -Filter the archive through @command{compress}. Otherwise like @option{--gzip}. +Filter the archive through @command{compress}. +@end table + +When any of these options is given, @GNUTAR{} searches the compressor +binary in the current path and invokes it. The name of the compressor +program is specified at compilation time using a corresponding +@option{--with-@var{compname}} option to @command{configure}, e.g. +@option{--with-bzip2} to select a specific @command{bzip2} binary. +@xref{lbzip2}, for a detailed discussion. + +The output produced by @command{tar --help} shows the actual +compressor names along with each of these options. + +You can use any of these options on physical devices (tape drives, +etc.) and remote files as well as on normal files; data to or from +such devices or remote files is reblocked by another copy of the +@command{tar} program to enforce the specified (or default) record +size. The default compression parameters are used. Most compression +programs allow to override these by setting a program-specific +environment variable. For example, when using @command{gzip} you can +use @env{GZIP} as in the example below: + +@smallexample +$ @kbd{GZIP=--best tar cfz archive.tar.gz subdir} +@end smallexample + +@noindent +Another way would be to use the @option{-I} option instead (see +below), e.g.: + +@smallexample +$ @kbd{tar -cf archive.tar.gz -I 'gzip --best' subdir} +@end smallexample + +@noindent +Finally, the third, traditional, way to achieve the same result is to +use pipe: + +@smallexample +$ @kbd{tar cf - subdir | gzip --best -c - > archive.tar.gz} +@end smallexample + +@cindex corrupted archives +About corrupted compressed archives: compressed files have no +redundancy, for maximum compression. The adaptive nature of the +compression scheme means that the compression tables are implicitly +spread all over the archive. If you lose a few blocks, the dynamic +construction of the compression tables becomes unsynchronized, and there +is little chance that you could recover later in the archive. + +Another compression options provide a better control over creating +compressed archives. These are: + +@table @option +@anchor{auto-compress} +@opindex auto-compress +@item --auto-compress +@itemx -a +Select a compression program to use by the archive file name +suffix. The following suffixes are recognized: + +@multitable @columnfractions 0.3 0.6 +@headitem Suffix @tab Compression program +@item @samp{.gz} @tab @command{gzip} +@item @samp{.tgz} @tab @command{gzip} +@item @samp{.taz} @tab @command{gzip} +@item @samp{.Z} @tab @command{compress} +@item @samp{.taZ} @tab @command{compress} +@item @samp{.bz2} @tab @command{bzip2} +@item @samp{.tz2} @tab @command{bzip2} +@item @samp{.tbz2} @tab @command{bzip2} +@item @samp{.tbz} @tab @command{bzip2} +@item @samp{.lz} @tab @command{lzip} +@item @samp{.lzma} @tab @command{lzma} +@item @samp{.tlz} @tab @command{lzma} +@item @samp{.lzo} @tab @command{lzop} +@item @samp{.xz} @tab @command{xz} +@end multitable @opindex use-compress-program @item --use-compress-program=@var{prog} @@ -8929,6 +8989,45 @@ The above is based on the following discussion: end up with less space on the tape. @end ignore +@menu +* lbzip2:: Using lbzip2 with @GNUTAR{}. +@end menu + +@node lbzip2 +@subsubsection Using lbzip2 with @GNUTAR{}. +@cindex lbzip2 +@cindex Laszlo Ersek + @command{Lbzip2} is a multithreaded utility for handling +@samp{bzip2} compression, written by Laszlo Ersek. It makes use of +multiple processors to speed up its operation and in general works +considerably faster than @command{bzip2}. For a detailed description +of @command{lbzip2} see @uref{http://freshmeat.net/@/projects/@/lbzip2} and +@uref{http://www.linuxinsight.com/@/lbzip2-parallel-bzip2-utility.html, +lbzip2: parallel bzip2 utility}. + + Recent versions of @command{lbzip2} are mostly command line compatible +with @command{bzip2}, which makes it possible to automatically invoke +it via the @option{--bzip2} @GNUTAR{} command line option. To do so, +@GNUTAR{} must be configured with the @option{--with-bzip2} command +line option, like this: + +@smallexample +$ @kbd{./configure --with-bzip2=lbzip2 [@var{other-options}]} +@end smallexample + + Once configured and compiled this way, @command{tar --help} will show the +following: + +@smallexample +@group +$ @kbd{tar --help | grep -- --bzip2} + -j, --bzip2 filter the archive through lbzip2 +@end group +@end smallexample + +@noindent +which means that running @command{tar --bzip2} will invoke @command{lbzip2}. + @node sparse @subsection Archiving Sparse Files @cindex Sparse Files @@ -9220,28 +9319,26 @@ than System V's. Normally, when @command{tar} archives a symbolic link, it writes a block to the archive naming the target of the link. In that way, the @command{tar} archive is a faithful record of the file system contents. -@option{--dereference} (@option{-h}) is used with @option{--create} (@option{-c}), and causes -@command{tar} to archive the files symbolic links point to, instead of -the links themselves. When this option is used, when @command{tar} -encounters a symbolic link, it will archive the linked-to file, -instead of simply recording the presence of a symbolic link. - -The name under which the file is stored in the file system is not -recorded in the archive. To record both the symbolic link name and -the file name in the system, archive the file under both names. If -all links were recorded automatically by @command{tar}, an extracted file -might be linked to a file name that no longer exists in the file -system. - -If a linked-to file is encountered again by @command{tar} while creating -the same archive, an entire second copy of it will be stored. (This -@emph{might} be considered a bug.) +When @option{--dereference} (@option{-h}) is used with +@option{--create} (@option{-c}), @command{tar} archives the files +symbolic links point to, instead of +the links themselves. -So, for portable archives, do not archive symbolic links as such, -and use @option{--dereference} (@option{-h}): many systems do not support +When creating portable archives, use @option{--dereference} +(@option{-h}): some systems do not support symbolic links, and moreover, your distribution might be unusable if it contains unresolved symbolic links. +When reading from an archive, the @option{--dereference} (@option{-h}) +option causes @command{tar} to follow an already-existing symbolic +link when @command{tar} writes or reads a file named in the archive. +Ordinarily, @command{tar} does not follow such a link, though it may +remove the link before writing a new file. @xref{Dealing with Old +Files}. + +The @option{--dereference} option is unsafe if an untrusted user can +modify directories while @command{tar} is running. @xref{Security}. + @node hard links @subsection Hard Links @cindex File names, using hard links @@ -9370,7 +9467,7 @@ free from many of @samp{v7}'s drawbacks. @cindex ustar archive format Archive format defined by @acronym{POSIX}.1-1988 specification is called @code{ustar}. Although it is more flexible than the V7 format, it -still has many restrictions (@xref{Formats,ustar}, for the detailed +still has many restrictions (@pxref{Formats,ustar}, for the detailed description of @code{ustar} format). Along with V7 format, @code{ustar} format is a good choice for archives intended to be read with other implementations of @command{tar}. @@ -9800,7 +9897,7 @@ The condensed file will contain both file map and file data, so no additional data will be needed to restore it. If the original file name was @file{@var{dir}/@var{name}}, then the condensed file will be named @file{@var{dir}/@/GNUSparseFile.@var{n}/@/@var{name}}, where -@var{n} is a decimal number@footnote{technically speaking, @var{n} is a +@var{n} is a decimal number@footnote{Technically speaking, @var{n} is a @dfn{process @acronym{ID}} of the @command{tar} process which created the archive (@pxref{PAX keywords}).}. @@ -10258,8 +10355,27 @@ that may be larger than will fit on the medium used to hold it. @xopindex{tape-length, short description} @item -L @var{num} -@itemx --tape-length=@var{num} -Change tape after writing @var{num} x 1024 bytes. +@itemx --tape-length=@var{size}[@var{suf}] +Change tape after writing @var{size} units of data. Unless @var{suf} is +given, @var{size} is treated as kilobytes, i.e. @samp{@var{size} x +1024} bytes. The following suffixes alter this behavior: + +@float Table, size-suffixes +@caption{Size Suffixes} +@multitable @columnfractions 0.2 0.3 0.3 +@headitem Suffix @tab Units @tab Byte Equivalent +@item b @tab Blocks @tab @var{size} x 512 +@item B @tab Kilobytes @tab @var{size} x 1024 +@item c @tab Bytes @tab @var{size} +@item G @tab Gigabytes @tab @var{size} x 1024^3 +@item K @tab Kilobytes @tab @var{size} x 1024 +@item k @tab Kilobytes @tab @var{size} x 1024 +@item M @tab Megabytes @tab @var{size} x 1024^2 +@item P @tab Petabytes @tab @var{size} x 1024^5 +@item T @tab Terabytes @tab @var{size} x 1024^4 +@item w @tab Words @tab @var{size} x 2 +@end multitable +@end float This option might be useful when your tape drivers do not properly detect end of physical tapes. By being slightly conservative on the @@ -11067,15 +11183,26 @@ tape: @anchor{tape-length} @table @option @opindex tape-length -@item --tape-length=@var{size} -@itemx -L @var{size} -Set maximum length of a volume. The @var{size} argument should then -be the usable size of the tape in units of 1024 bytes. This option -selects @option{--multi-volume} automatically. For example: +@item --tape-length=@var{size}[@var{suf}] +@itemx -L @var{size}[@var{suf}] +Set maximum length of a volume. The @var{suf}, if given, specifies +units in which @var{size} is expressed, e.g. @samp{2M} mean 2 +megabytes (@pxref{size-suffixes}, for a list of allowed size +suffixes). Without @var{suf}, units of 1024 bytes (kilobyte) are +assumed. + +This option selects @option{--multi-volume} automatically. For example: @smallexample $ @kbd{tar --create --tape-length=41943040 --file=/dev/tape @var{files}} @end smallexample + +@noindent +or, which is equivalent: + +@smallexample +$ @kbd{tar --create --tape-length=4G --file=/dev/tape @var{files}} +@end smallexample @end table @anchor{change volume prompt} @@ -11300,9 +11427,9 @@ archive which will be displayed when the archive is listed with @option{--multi-volume} (@pxref{Using Multiple Tapes}), then the volume label will have @samp{Volume @var{nnn}} appended to the name you give, where @var{nnn} is the number of the volume of the archive. -If you use the @option{--label=@var{volume-label}}) option when +If you use the @option{--label=@var{volume-label}} option when reading an archive, it checks to make sure the label on the tape -matches the one you give. @xref{label}. +matches the one you gave. @xref{label}. When @command{tar} writes an archive to tape, it creates a single tape file. If multiple archives are written to the same tape, one @@ -11351,15 +11478,16 @@ will usually see lots of spurious messages. @cindex Labeling an archive @cindex Labels on the archive media @cindex Labeling multi-volume archives -@UNREVISED @opindex label To avoid problems caused by misplaced paper labels on the archive -media, you can include a @dfn{label} entry---an archive member which -contains the name of the archive---in the archive itself. Use the +media, you can include a @dfn{label} entry --- an archive member which +contains the name of the archive --- in the archive itself. Use the @option{--label=@var{archive-label}} (@option{-V @var{archive-label}}) -option in conjunction with the @option{--create} operation to include -a label entry in the archive as it is being created. +option@footnote{Until version 1.10, that option was called +@option{--volume}, but is not available under that name anymore.} in +conjunction with the @option{--create} operation to include a label +entry in the archive as it is being created. @table @option @item --label=@var{archive-label} @@ -11398,7 +11526,7 @@ V--------- 0 0 0 1992-03-07 12:01 iamalabel--Volume Header-- However, @option{--list} option will cause listing entire contents of the archive, which may be undesirable (for example, if the archive is stored on a tape). You can request checking only the volume -by specifying @option{--test-label} option. This option reads only the +label by specifying @option{--test-label} option. This option reads only the first block of an archive, so it can be used with slow storage devices. For example: @@ -11409,16 +11537,35 @@ iamalabel @end group @end smallexample - If @option{--test-label} is used with a single command line -argument, @command{tar} compares the volume label with the -argument. It exits with code 0 if the two strings match, and with code -2 otherwise. In this case no output is displayed. For example: + If @option{--test-label} is used with one or more command line +arguments, @command{tar} compares the volume label with each +argument. It exits with code 0 if a match is found, and with code 1 +otherwise@footnote{Note that @GNUTAR{} versions up to 1.23 indicated +mismatch with an exit code 2 and printed a spurious diagnostics on +stderr.}. No output is displayed, unless you also used the +@option{--verbose} option. For example: @smallexample @group -$ @kbd{tar --test-label --file=iamanarchive 'iamalable'} +$ @kbd{tar --test-label --file=iamanarchive 'iamalabel'} @result{} 0 -$ @kbd{tar --test-label --file=iamanarchive 'iamalable' alabel} +$ @kbd{tar --test-label --file=iamanarchive 'alabel'} +@result{} 1 +@end group +@end smallexample + + When used with the @option{--verbose} option, @command{tar} +prints the actual volume label (if any), and a verbose diagnostics in +case of a mismatch: + +@smallexample +@group +$ @kbd{tar --test-label --verbose --file=iamanarchive 'iamalabel'} +iamalabel +@result{} 0 +$ @kbd{tar --test-label --verbose --file=iamanarchive 'alabel'} +iamalabel +tar: Archive label mismatch @result{} 1 @end group @end smallexample @@ -11458,9 +11605,6 @@ up. Since the volume numbering is automatically added in labels at creation time, it sounded logical to equally help the user taking care of it when the archive is being read. - The @option{--label} was once called @option{--volume}, but is not -available under that name anymore. - You can also use @option{--label} to get a common information on all tapes of a series. For having this information different in each series created through a single script used on a regular basis, just @@ -11474,13 +11618,19 @@ $ @kbd{tar --create --file=/dev/tape --multi-volume \ @end group @end smallexample - Also note that each label has its own date and time, which corresponds -to when @GNUTAR{} initially attempted to write it, + Some more notes about volume labels: + +@itemize @bullet +@item Each label has its own date and time, which corresponds +to the time when @GNUTAR{} initially attempted to write it, often soon after the operator launches @command{tar} or types the -carriage return telling that the next tape is ready. Comparing date -labels does give an idea of tape throughput only if the delays for -rewinding tapes and the operator switching them were negligible, which -is usually not the case. +carriage return telling that the next tape is ready. + +@item Comparing date labels to get an idea of tape throughput is +unreliable. It gives correct results only if the delays for rewinding +tapes and the operator switching them were negligible, which is +usually not the case. +@end itemize @node verify @section Verifying Data as It is Stored @@ -11573,6 +11723,275 @@ disabled) switch, a notch which can be popped out or covered, a ring which can be removed from the center of a tape reel, or some other changeable feature. +@node Reliability and security +@chapter Reliability and Security + +The @command{tar} command reads and writes files as any other +application does, and is subject to the usual caveats about +reliability and security. This section contains some commonsense +advice on the topic. + +@menu +* Reliability:: +* Security:: +@end menu + +@node Reliability +@section Reliability + +Ideally, when @command{tar} is creating an archive, it reads from a +file system that is not being modified, and encounters no errors or +inconsistencies while reading and writing. If this is the case, the +archive should faithfully reflect what was read. Similarly, when +extracting from an archive, ideally @command{tar} ideally encounters +no errors and the extracted files faithfully reflect what was in the +archive. + +However, when reading or writing real-world file systems, several +things can go wrong; these include permissions problems, corruption of +data, and race conditions. + +@menu +* Permissions problems:: +* Data corruption and repair:: +* Race conditions:: +@end menu + +@node Permissions problems +@subsection Permissions Problems + +If @command{tar} encounters errors while reading or writing files, it +normally reports an error and exits with nonzero status. The work it +does may therefore be incomplete. For example, when creating an +archive, if @command{tar} cannot read a file then it cannot copy the +file into the archive. + +@node Data corruption and repair +@subsection Data Corruption and Repair + +If an archive becomes corrupted by an I/O error, this may corrupt the +data in an extracted file. Worse, it may corrupt the file's metadata, +which may cause later parts of the archive to become misinterpreted. +An tar-format archive contains a checksum that most likely will detect +errors in the metadata, but it will not detect errors in the data. + +If data corruption is a concern, you can compute and check your own +checksums of an archive by using other programs, such as +@command{cksum}. + +When attempting to recover from a read error or data corruption in an +archive, you may need to skip past the questionable data and read the +rest of the archive. This requires some expertise in the archive +format and in other software tools. + +@node Race conditions +@subsection Race conditions + +If some other process is modifying the file system while @command{tar} +is reading or writing files, the result may well be inconsistent due +to race conditions. For example, if another process creates some +files in a directory while @command{tar} is creating an archive +containing the directory's files, @command{tar} may see some of the +files but not others, or it may see a file that is in the process of +being created. The resulting archive may not be a snapshot of the +file system at any point in time. If an application such as a +database system depends on an accurate snapshot, restoring from the +@command{tar} archive of a live file system may therefore break that +consistency and may break the application. The simplest way to avoid +the consistency issues is to avoid making other changes to the file +system while tar is reading it or writing it. + +When creating an archive, several options are available to avoid race +conditions. Some hosts have a way of snapshotting a file system, or +of temporarily suspending all changes to a file system, by (say) +suspending the only virtual machine that can modify a file system; if +you use these facilities and have @command{tar -c} read from a +snapshot when creating an archive, you can avoid inconsistency +problems. More drastically, before starting @command{tar} you could +suspend or shut down all processes other than @command{tar} that have +access to the file system, or you could unmount the file system and +then mount it read-only. + +When extracting from an archive, one approach to avoid race conditions +is to create a directory that no other process can write to, and +extract into that. + +@node Security +@section Security + +In some cases @command{tar} may be used in an adversarial situation, +where an untrusted user is attempting to gain information about or +modify otherwise-inaccessible files. Dealing with untrusted data +(that is, data generated by an untrusted user) typically requires +extra care, because even the smallest mistake in the use of +@command{tar} is more likely to be exploited by an adversary than by a +race condition. + +@menu +* Privacy:: +* Integrity:: +* Live untrusted data:: +* Security rules of thumb:: +@end menu + +@node Privacy +@subsection Privacy + +Standard privacy concerns apply when using @command{tar}. For +example, suppose you are archiving your home directory into a file +@file{/archive/myhome.tar}. Any secret information in your home +directory, such as your SSH secret keys, are copied faithfully into +the archive. Therefore, if your home directory contains any file that +should not be read by some other user, the archive itself should be +not be readable by that user. And even if the archive's data are +inaccessible to untrusted users, its metadata (such as size or +last-modified date) may reveal some information about your home +directory; if the metadata are intended to be private, the archive's +parent directory should also be inaccessible to untrusted users. + +One precaution is to create @file{/archive} so that it is not +accessible to any user, unless that user also has permission to access +all the files in your home directory. + +Similarly, when extracting from an archive, take care that the +permissions of the extracted files are not more generous than what you +want. Even if the archive itself is readable only to you, files +extracted from it have their own permissions that may differ. + +@node Integrity +@subsection Integrity + +When creating archives, take care that they are not writable by a +untrusted user; otherwise, that user could modify the archive, and +when you later extract from the archive you will get incorrect data. + +When @command{tar} extracts from an archive, by default it writes into +files relative to the working directory. If the archive was generated +by an untrusted user, that user therefore can write into any file +under the working directory. If the working directory contains a +symbolic link to another directory, the untrusted user can also write +into any file under the referenced directory. When extracting from an +untrusted archive, it is therefore good practice to create an empty +directory and run @command{tar} in that directory. + +When extracting from two or more untrusted archives, each one should +be extracted independently, into different empty directories. +Otherwise, the first archive could create a symbolic link into an area +outside the working directory, and the second one could follow the +link and overwrite data that is not under the working directory. For +example, when restoring from a series of incremental dumps, the +archives should have been created by a trusted process, as otherwise +the incremental restores might alter data outside the working +directory. + +If you use the @option{--absolute-names} (@option{-P}) option when +extracting, @command{tar} respects any file names in the archive, even +file names that begin with @file{/} or contain @file{..}. As this +lets the archive overwrite any file in your system that you can write, +the @option{--absolute-names} (@option{-P}) option should be used only +for trusted archives. + +Conversely, with the @option{--keep-old-files} (@option{-k}) option, +@command{tar} refuses to replace existing files when extracting; and +with the @option{--no-overwrite-dir} option, @command{tar} refuses to +replace the permissions or ownership of already-existing directories. +These options may help when extracting from untrusted archives. + +@node Live untrusted data +@subsection Dealing with Live Untrusted Data + +Extra care is required when creating from or extracting into a file +system that is accessible to untrusted users. For example, superusers +who invoke @command{tar} must be wary about its actions being hijacked +by an adversary who is reading or writing the file system at the same +time that @command{tar} is operating. + +When creating an archive from a live file system, @command{tar} is +vulnerable to denial-of-service attacks. For example, an adversarial +user could create the illusion of an indefinitely-deep directory +hierarchy @file{d/e/f/g/...} by creating directories one step ahead of +@command{tar}, or the illusion of an indefinitely-long file by +creating a sparse file but arranging for blocks to be allocated just +before @command{tar} reads them. There is no easy way for +@command{tar} to distinguish these scenarios from legitimate uses, so +you may need to monitor @command{tar}, just as you'd need to monitor +any other system service, to detect such attacks. + +While a superuser is extracting from an archive into a live file +system, an untrusted user might replace a directory with a symbolic +link, in hopes that @command{tar} will follow the symbolic link and +extract data into files that the untrusted user does not have access +to. Even if the archive was generated by the superuser, it may +contain a file such as @file{d/etc/passwd} that the untrusted user +earlier created in order to break in; if the untrusted user replaces +the directory @file{d/etc} with a symbolic link to @file{/etc} while +@command{tar} is running, @command{tar} will overwrite +@file{/etc/passwd}. This attack can be prevented by extracting into a +directory that is inaccessible to untrusted users. + +Similar attacks via symbolic links are also possible when creating an +archive, if the untrusted user can modify an ancestor of a top-level +argument of @command{tar}. For example, an untrusted user that can +modify @file{/home/eve} can hijack a running instance of @samp{tar -cf +- /home/eve/Documents/yesterday} by replacing +@file{/home/eve/Documents} with a symbolic link to some other +location. Attacks like these can be prevented by making sure that +untrusted users cannot modify any files that are top-level arguments +to @command{tar}, or any ancestor directories of these files. + +@node Security rules of thumb +@subsection Security Rules of Thumb + +This section briefly summarizes rules of thumb for avoiding security +pitfalls. + +@itemize @bullet + +@item +Protect archives at least as much as you protect any of the files +being archived. + +@item +Extract from an untrusted archive only into an otherwise-empty +directory. This directory and its parent should be accessible only to +trusted users. For example: + +@example +@group +$ @kbd{chmod go-rwx .} +$ @kbd{mkdir -m go-rwx dir} +$ @kbd{cd dir} +$ @kbd{tar -xvf /archives/got-it-off-the-net.tar.gz} +@end group +@end example + +As a corollary, do not do an incremental restore from an untrusted archive. + +@item +Do not let untrusted users access files extracted from untrusted +archives without checking first for problems such as setuid programs. + +@item +Do not let untrusted users modify directories that are ancestors of +top-level arguments of @command{tar}. For example, while you are +executing @samp{tar -cf /archive/u-home.tar /u/home}, do not let an +untrusted user modify @file{/}, @file{/archive}, or @file{/u}. + +@item +Pay attention to the diagnostics and exit status of @command{tar}. + +@item +When archiving live file systems, monitor running instances of +@command{tar} to detect denial-of-service attacks. + +@item +Avoid unusual options such as @option{--absolute-names} (@option{-P}), +@option{--dereference} (@option{-h}), @option{--overwrite}, +@option{--recursive-unlink}, and @option{--remove-files} unless you +understand their security implications. + +@end itemize + @node Changes @appendix Changes @@ -11893,12 +12312,8 @@ Right margin of the text output. Used for wrapping. @appendix Free Software Needs Free Documentation @include freemanuals.texi -@node Copying This Manual -@appendix Copying This Manual - -@menu -* GNU Free Documentation License:: License for copying this manual -@end menu +@node GNU Free Documentation License +@appendix GNU Free Documentation License @include fdl.texi @@ -11907,7 +12322,8 @@ Right margin of the text output. Used for wrapping. This appendix contains an index of all @GNUTAR{} long command line options. The options are listed without the preceding double-dash. -For a cross-reference of short command line options, @ref{Short Option Summary}. +For a cross-reference of short command line options, see +@ref{Short Option Summary}. @printindex op diff --git a/doc/value.texi b/doc/value.texi index e80311f..d7cd620 100644 --- a/doc/value.texi +++ b/doc/value.texi @@ -18,5 +18,3 @@ @end ifclear @xopindex{\option\, summary} @end macro - - diff --git a/doc/version.texi b/doc/version.texi index 591fd0e..f38c5d8 100644 --- a/doc/version.texi +++ b/doc/version.texi @@ -1,4 +1,4 @@ -@set UPDATED 9 March 2010 -@set UPDATED-MONTH March 2010 -@set EDITION 1.23 -@set VERSION 1.23 +@set UPDATED 24 October 2010 +@set UPDATED-MONTH October 2010 +@set EDITION 1.24 +@set VERSION 1.24 diff --git a/gnu/Makefile.am b/gnu/Makefile.am index b34cc13..5fca573 100644 --- a/gnu/Makefile.am +++ b/gnu/Makefile.am @@ -1,3 +1,5 @@ +# -*- buffer-read-only: t -*- vi: set ro: +# DO NOT EDIT! GENERATED AUTOMATICALLY! ## DO NOT EDIT! GENERATED AUTOMATICALLY! ## Process this file with automake to produce Makefile.in. # Copyright (C) 2002-2010 Free Software Foundation, Inc. @@ -9,7 +11,7 @@ # the same distribution terms as the rest of that program. # # Generated by gnulib-tool. -# Reproduce by: gnulib-tool --import --dir=. --local-dir=gl --lib=libgnu --source-base=gnu --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --avoid=lock --no-libtool --macro-prefix=gl alloca argmatch argp argp-version-etc backupfile canonicalize closeout configmake dirname error exclude exitfail fileblocks fnmatch-gnu fseeko ftruncate full-write getdate getline getopt getopt-gnu getpagesize gettext gettime gitlog-to-changelog hash human inttostr inttypes lchown localcharset mkdtemp modechange obstack priv-set progname quote quotearg rpmatch safe-read save-cwd savedir setenv snprintf stat-time stdbool stdint stpcpy strdup-posix strerror strtol strtoul timespec unlinkdir unlocked-io utimens version-etc-fsf xalloc xalloc-die xgetcwd xstrtoumax xvasprintf +# Reproduce by: gnulib-tool --import --dir=. --local-dir=gl --lib=libgnu --source-base=gnu --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --avoid=lock --no-libtool --macro-prefix=gl alloca argmatch argp argp-version-etc backupfile closeout configmake dirname error exclude exitfail fdopendir fdutimensat fileblocks fnmatch-gnu fseeko full-write futimens getline getopt-gnu getpagesize gettext gettime gitlog-to-changelog hash human inttostr inttypes lchown linkat localcharset mkdtemp mkfifoat modechange obstack openat parse-datetime priv-set progname quote quotearg readlinkat renameat rpmatch safe-read savedir setenv snprintf stat-time stdbool stdint stpcpy strdup-posix strerror strtol strtoul symlinkat timespec unlinkdir unlocked-io utimensat version-etc-fsf xalloc xalloc-die xgetcwd xstrtoumax xvasprintf AUTOMAKE_OPTIONS = 1.5 gnits subdir-objects @@ -65,13 +67,21 @@ EXTRA_DIST += alloca.in.h ## end gnulib module alloca-opt -## begin gnulib module areadlink-with-size +## begin gnulib module areadlink -libgnu_a_SOURCES += areadlink-with-size.c +libgnu_a_SOURCES += areadlink.c EXTRA_DIST += areadlink.h -## end gnulib module areadlink-with-size +## end gnulib module areadlink + +## begin gnulib module areadlinkat + +libgnu_a_SOURCES += areadlinkat.c + +EXTRA_DIST += areadlink.h + +## end gnulib module areadlinkat ## begin gnulib module arg-nonnull @@ -175,14 +185,14 @@ libgnu_a_SOURCES += c-ctype.h c-ctype.c ## end gnulib module c-ctype -## begin gnulib module canonicalize +## begin gnulib module canonicalize-lgpl -EXTRA_DIST += canonicalize.c canonicalize.h +EXTRA_DIST += canonicalize-lgpl.c -EXTRA_libgnu_a_SOURCES += canonicalize.c +EXTRA_libgnu_a_SOURCES += canonicalize-lgpl.c -## end gnulib module canonicalize +## end gnulib module canonicalize-lgpl ## begin gnulib module chdir-long @@ -202,6 +212,15 @@ EXTRA_libgnu_a_SOURCES += chown.c fchown-stub.c ## end gnulib module chown +## begin gnulib module cloexec + + +EXTRA_DIST += cloexec.c cloexec.h + +EXTRA_libgnu_a_SOURCES += cloexec.c + +## end gnulib module cloexec + ## begin gnulib module close @@ -309,16 +328,19 @@ dirent.h: dirent.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_DIRENT_H''@|$(NEXT_DIRENT_H)|g' \ -e 's|@''GNULIB_DIRFD''@|$(GNULIB_DIRFD)|g' \ -e 's|@''GNULIB_FDOPENDIR''@|$(GNULIB_FDOPENDIR)|g' \ -e 's|@''GNULIB_SCANDIR''@|$(GNULIB_SCANDIR)|g' \ -e 's|@''GNULIB_ALPHASORT''@|$(GNULIB_ALPHASORT)|g' \ -e 's|@''HAVE_DECL_DIRFD''@|$(HAVE_DECL_DIRFD)|g' \ + -e 's|@''HAVE_DECL_FDOPENDIR''@|$(HAVE_DECL_FDOPENDIR)|g' \ -e 's|@''HAVE_FDOPENDIR''@|$(HAVE_FDOPENDIR)|g' \ -e 's|@''HAVE_SCANDIR''@|$(HAVE_SCANDIR)|g' \ -e 's|@''HAVE_ALPHASORT''@|$(HAVE_ALPHASORT)|g' \ -e 's|@''REPLACE_CLOSEDIR''@|$(REPLACE_CLOSEDIR)|g' \ + -e 's|@''REPLACE_DIRFD''@|$(REPLACE_DIRFD)|g' \ -e 's|@''REPLACE_FDOPENDIR''@|$(REPLACE_FDOPENDIR)|g' \ -e 's|@''REPLACE_OPENDIR''@|$(REPLACE_OPENDIR)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ @@ -389,6 +411,7 @@ errno.h: errno.in.h { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_ERRNO_H''@|$(NEXT_ERRNO_H)|g' \ -e 's|@''EMULTIHOP_HIDDEN''@|$(EMULTIHOP_HIDDEN)|g' \ -e 's|@''EMULTIHOP_VALUE''@|$(EMULTIHOP_VALUE)|g' \ @@ -469,6 +492,7 @@ fcntl.h: fcntl.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \ -e 's|@''GNULIB_FCNTL''@|$(GNULIB_FCNTL)|g' \ -e 's|@''GNULIB_OPEN''@|$(GNULIB_OPEN)|g' \ @@ -499,13 +523,13 @@ EXTRA_libgnu_a_SOURCES += fdopendir.c openat-proc.c ## end gnulib module fdopendir -## begin gnulib module file-set +## begin gnulib module fdutimensat -libgnu_a_SOURCES += file-set.c +libgnu_a_SOURCES += fdutimensat.c -EXTRA_DIST += file-set.h +EXTRA_DIST += utimens.h -## end gnulib module file-set +## end gnulib module fdutimensat ## begin gnulib module fileblocks @@ -516,6 +540,15 @@ EXTRA_libgnu_a_SOURCES += fileblocks.c ## end gnulib module fileblocks +## begin gnulib module filenamecat-lgpl + + +EXTRA_DIST += filenamecat-lgpl.c filenamecat.h + +EXTRA_libgnu_a_SOURCES += filenamecat-lgpl.c + +## end gnulib module filenamecat-lgpl + ## begin gnulib module float BUILT_SOURCES += $(FLOAT_H) @@ -527,6 +560,7 @@ float.h: float.in.h { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_FLOAT_H''@|$(NEXT_FLOAT_H)|g' \ < $(srcdir)/float.in.h; \ } > $@-t && \ @@ -576,20 +610,20 @@ EXTRA_libgnu_a_SOURCES += fseeko.c ## end gnulib module fseeko -## begin gnulib module ftruncate +## begin gnulib module full-write +libgnu_a_SOURCES += full-write.h full-write.c -EXTRA_DIST += ftruncate.c +## end gnulib module full-write -EXTRA_libgnu_a_SOURCES += ftruncate.c +## begin gnulib module futimens -## end gnulib module ftruncate -## begin gnulib module full-write +EXTRA_DIST += futimens.c -libgnu_a_SOURCES += full-write.h full-write.c +EXTRA_libgnu_a_SOURCES += futimens.c -## end gnulib module full-write +## end gnulib module futimens ## begin gnulib module getcwd @@ -600,17 +634,6 @@ EXTRA_libgnu_a_SOURCES += getcwd.c ## end gnulib module getcwd -## begin gnulib module getdate - -libgnu_a_SOURCES += getdate.y -BUILT_SOURCES += getdate.c -MAINTAINERCLEANFILES += getdate.c -EXTRA_DIST += getdate.c - -EXTRA_DIST += getdate.h - -## end gnulib module getdate - ## begin gnulib module getdelim @@ -650,6 +673,7 @@ getopt.h: getopt.in.h $(ARG_NONNULL_H) sed -e 's|@''HAVE_GETOPT_H''@|$(HAVE_GETOPT_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_GETOPT_H''@|$(NEXT_GETOPT_H)|g' \ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ < $(srcdir)/getopt.in.h; \ @@ -682,7 +706,7 @@ EXTRA_libgnu_a_SOURCES += getpagesize.c # This option has no effect when the user disables NLS (because then the intl # directory contains no libintl.h file) or when the project does not use # "gettextize --intl". -#AM_CPPFLAGS += -I$(top_builddir)/intl +AM_CPPFLAGS += -I$(top_builddir)/intl EXTRA_DIST += $(top_srcdir)/build-aux/config.rpath @@ -728,20 +752,6 @@ EXTRA_libgnu_a_SOURCES += hash.c ## end gnulib module hash -## begin gnulib module hash-pjw - -libgnu_a_SOURCES += hash-pjw.h hash-pjw.c - -## end gnulib module hash-pjw - -## begin gnulib module hash-triple - -libgnu_a_SOURCES += hash-triple.c - -EXTRA_DIST += hash-triple.h - -## end gnulib module hash-triple - ## begin gnulib module havelib @@ -767,10 +777,16 @@ EXTRA_DIST += intprops.h ## begin gnulib module inttostr +libgnu_a_SOURCES += \ + imaxtostr.c \ + inttostr.c \ + offtostr.c \ + uinttostr.c \ + umaxtostr.c -EXTRA_DIST += imaxtostr.c inttostr.c inttostr.h offtostr.c uinttostr.c umaxtostr.c +EXTRA_DIST += anytostr.c inttostr.h -EXTRA_libgnu_a_SOURCES += imaxtostr.c inttostr.c offtostr.c uinttostr.c umaxtostr.c +EXTRA_libgnu_a_SOURCES += anytostr.c ## end gnulib module inttostr @@ -786,6 +802,7 @@ inttypes.h: inttypes.in.h $(WARN_ON_USE_H) $(ARG_NONNULL_H) sed -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_INTTYPES_H''@|$(NEXT_INTTYPES_H)|g' \ -e 's/@''PRI_MACROS_BROKEN''@/$(PRI_MACROS_BROKEN)/g' \ -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \ @@ -827,10 +844,13 @@ langinfo.h: langinfo.in.h $(CXXDEFS_H) $(WARN_ON_USE_H) sed -e 's|@''HAVE_LANGINFO_H''@|$(HAVE_LANGINFO_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_LANGINFO_H''@|$(NEXT_LANGINFO_H)|g' \ -e 's|@''GNULIB_NL_LANGINFO''@|$(GNULIB_NL_LANGINFO)|g' \ -e 's|@''HAVE_LANGINFO_CODESET''@|$(HAVE_LANGINFO_CODESET)|g' \ + -e 's|@''HAVE_LANGINFO_T_FMT_AMPM''@|$(HAVE_LANGINFO_T_FMT_AMPM)|g' \ -e 's|@''HAVE_LANGINFO_ERA''@|$(HAVE_LANGINFO_ERA)|g' \ + -e 's|@''HAVE_LANGINFO_YESEXPR''@|$(HAVE_LANGINFO_YESEXPR)|g' \ -e 's|@''HAVE_NL_LANGINFO''@|$(HAVE_NL_LANGINFO)|g' \ -e 's|@''REPLACE_NL_LANGINFO''@|$(REPLACE_NL_LANGINFO)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ @@ -853,6 +873,24 @@ EXTRA_libgnu_a_SOURCES += lchown.c ## end gnulib module lchown +## begin gnulib module link + + +EXTRA_DIST += link.c + +EXTRA_libgnu_a_SOURCES += link.c + +## end gnulib module link + +## begin gnulib module linkat + + +EXTRA_DIST += at-func2.c linkat.c + +EXTRA_libgnu_a_SOURCES += at-func2.c linkat.c + +## end gnulib module linkat + ## begin gnulib module localcharset libgnu_a_SOURCES += localcharset.h localcharset.c @@ -945,14 +983,14 @@ EXTRA_libgnu_a_SOURCES += lstat.c ## end gnulib module lstat -## begin gnulib module malloc +## begin gnulib module malloc-gnu EXTRA_DIST += malloc.c EXTRA_libgnu_a_SOURCES += malloc.c -## end gnulib module malloc +## end gnulib module malloc-gnu ## begin gnulib module malloc-posix @@ -1063,6 +1101,33 @@ EXTRA_libgnu_a_SOURCES += mkdtemp.c ## end gnulib module mkdtemp +## begin gnulib module mkfifo + + +EXTRA_DIST += mkfifo.c + +EXTRA_libgnu_a_SOURCES += mkfifo.c + +## end gnulib module mkfifo + +## begin gnulib module mkfifoat + + +EXTRA_DIST += mkfifoat.c mknodat.c + +EXTRA_libgnu_a_SOURCES += mkfifoat.c mknodat.c + +## end gnulib module mkfifoat + +## begin gnulib module mknod + + +EXTRA_DIST += mknod.c + +EXTRA_libgnu_a_SOURCES += mknod.c + +## end gnulib module mknod + ## begin gnulib module mktime @@ -1123,6 +1188,29 @@ libgnu_a_SOURCES += openat-die.c ## end gnulib module openat-die +## begin gnulib module parse-datetime + +# This rule overrides the Automake generated .y.c rule, to ensure that the +# parse-datetime.c file gets generated in the source directory, not in the +# build directory. +parse-datetime.c: parse-datetime.y + $(AM_V_GEN)$(SHELL) $(YLWRAP) $(srcdir)/parse-datetime.y \ + y.tab.c parse-datetime.c \ + y.tab.h parse-datetime.h \ + y.output parse-datetime.output \ + -- $(YACC) $(YFLAGS) $(AM_YFLAGS) && \ + mv parse-datetime.c parse-datetime.c-t && \ + mv parse-datetime.c-t $(srcdir)/parse-datetime.c +libgnu_a_SOURCES += parse-datetime.y +BUILT_SOURCES += parse-datetime.c +MOSTLYCLEANFILES += parse-datetime.c-t +MAINTAINERCLEANFILES += parse-datetime.c +EXTRA_DIST += parse-datetime.c + +EXTRA_DIST += parse-datetime.h + +## end gnulib module parse-datetime + ## begin gnulib module pathmax @@ -1180,6 +1268,15 @@ EXTRA_libgnu_a_SOURCES += readlink.c ## end gnulib module readlink +## begin gnulib module readlinkat + + +EXTRA_DIST += readlinkat.c + +EXTRA_libgnu_a_SOURCES += readlinkat.c + +## end gnulib module readlinkat + ## begin gnulib module realloc-posix @@ -1198,6 +1295,24 @@ EXTRA_libgnu_a_SOURCES += regcomp.c regex.c regex_internal.c regexec.c ## end gnulib module regex +## begin gnulib module rename + + +EXTRA_DIST += rename.c + +EXTRA_libgnu_a_SOURCES += rename.c + +## end gnulib module rename + +## begin gnulib module renameat + + +EXTRA_DIST += at-func2.c renameat.c + +EXTRA_libgnu_a_SOURCES += at-func2.c renameat.c + +## end gnulib module renameat + ## begin gnulib module rmdir @@ -1234,15 +1349,6 @@ EXTRA_libgnu_a_SOURCES += safe-write.c ## end gnulib module safe-write -## begin gnulib module same - - -EXTRA_DIST += same.c same.h - -EXTRA_libgnu_a_SOURCES += same.c - -## end gnulib module same - ## begin gnulib module same-inode @@ -1335,6 +1441,7 @@ stdarg.h: stdarg.in.h { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDARG_H''@|$(NEXT_STDARG_H)|g' \ < $(srcdir)/stdarg.in.h; \ } > $@-t && \ @@ -1374,6 +1481,7 @@ stddef.h: stddef.in.h { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDDEF_H''@|$(NEXT_STDDEF_H)|g' \ -e 's|@''HAVE_WCHAR_T''@|$(HAVE_WCHAR_T)|g' \ -e 's|@''REPLACE_NULL''@|$(REPLACE_NULL)|g' \ @@ -1398,6 +1506,7 @@ stdint.h: stdint.in.h sed -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDINT_H''@|$(NEXT_STDINT_H)|g' \ -e 's/@''HAVE_SYS_TYPES_H''@/$(HAVE_SYS_TYPES_H)/g' \ -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ @@ -1439,6 +1548,7 @@ stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDIO_H''@|$(NEXT_STDIO_H)|g' \ -e 's|@''GNULIB_DPRINTF''@|$(GNULIB_DPRINTF)|g' \ -e 's|@''GNULIB_FCLOSE''@|$(GNULIB_FCLOSE)|g' \ @@ -1472,6 +1582,7 @@ stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_SNPRINTF''@|$(GNULIB_SNPRINTF)|g' \ -e 's|@''GNULIB_SPRINTF_POSIX''@|$(GNULIB_SPRINTF_POSIX)|g' \ -e 's|@''GNULIB_STDIO_H_SIGPIPE''@|$(GNULIB_STDIO_H_SIGPIPE)|g' \ + -e 's|@''GNULIB_TMPFILE''@|$(GNULIB_TMPFILE)|g' \ -e 's|@''GNULIB_VASPRINTF''@|$(GNULIB_VASPRINTF)|g' \ -e 's|@''GNULIB_VDPRINTF''@|$(GNULIB_VDPRINTF)|g' \ -e 's|@''GNULIB_VFPRINTF''@|$(GNULIB_VFPRINTF)|g' \ @@ -1488,6 +1599,8 @@ stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_DECL_SNPRINTF''@|$(HAVE_DECL_SNPRINTF)|g' \ -e 's|@''HAVE_DECL_VSNPRINTF''@|$(HAVE_DECL_VSNPRINTF)|g' \ -e 's|@''HAVE_DPRINTF''@|$(HAVE_DPRINTF)|g' \ + -e 's|@''HAVE_FSEEKO''@|$(HAVE_FSEEKO)|g' \ + -e 's|@''HAVE_FTELLO''@|$(HAVE_FTELLO)|g' \ -e 's|@''HAVE_RENAMEAT''@|$(HAVE_RENAMEAT)|g' \ -e 's|@''HAVE_VASPRINTF''@|$(HAVE_VASPRINTF)|g' \ -e 's|@''HAVE_VDPRINTF''@|$(HAVE_VDPRINTF)|g' \ @@ -1514,12 +1627,14 @@ stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''REPLACE_SNPRINTF''@|$(REPLACE_SNPRINTF)|g' \ -e 's|@''REPLACE_SPRINTF''@|$(REPLACE_SPRINTF)|g' \ -e 's|@''REPLACE_STDIO_WRITE_FUNCS''@|$(REPLACE_STDIO_WRITE_FUNCS)|g' \ + -e 's|@''REPLACE_TMPFILE''@|$(REPLACE_TMPFILE)|g' \ -e 's|@''REPLACE_VASPRINTF''@|$(REPLACE_VASPRINTF)|g' \ -e 's|@''REPLACE_VDPRINTF''@|$(REPLACE_VDPRINTF)|g' \ -e 's|@''REPLACE_VFPRINTF''@|$(REPLACE_VFPRINTF)|g' \ -e 's|@''REPLACE_VPRINTF''@|$(REPLACE_VPRINTF)|g' \ -e 's|@''REPLACE_VSNPRINTF''@|$(REPLACE_VSNPRINTF)|g' \ -e 's|@''REPLACE_VSPRINTF''@|$(REPLACE_VSPRINTF)|g' \ + -e 's|@''ASM_SYMBOL_PREFIX''@|$(ASM_SYMBOL_PREFIX)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ @@ -1544,18 +1659,22 @@ stdlib.h: stdlib.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDLIB_H''@|$(NEXT_STDLIB_H)|g' \ + -e 's|@''GNULIB__EXIT''@|$(GNULIB__EXIT)|g' \ -e 's|@''GNULIB_ATOLL''@|$(GNULIB_ATOLL)|g' \ -e 's|@''GNULIB_CALLOC_POSIX''@|$(GNULIB_CALLOC_POSIX)|g' \ -e 's|@''GNULIB_CANONICALIZE_FILE_NAME''@|$(GNULIB_CANONICALIZE_FILE_NAME)|g' \ -e 's|@''GNULIB_GETLOADAVG''@|$(GNULIB_GETLOADAVG)|g' \ -e 's|@''GNULIB_GETSUBOPT''@|$(GNULIB_GETSUBOPT)|g' \ + -e 's|@''GNULIB_GRANTPT''@|$(GNULIB_GRANTPT)|g' \ -e 's|@''GNULIB_MALLOC_POSIX''@|$(GNULIB_MALLOC_POSIX)|g' \ -e 's|@''GNULIB_MKDTEMP''@|$(GNULIB_MKDTEMP)|g' \ -e 's|@''GNULIB_MKOSTEMP''@|$(GNULIB_MKOSTEMP)|g' \ -e 's|@''GNULIB_MKOSTEMPS''@|$(GNULIB_MKOSTEMPS)|g' \ -e 's|@''GNULIB_MKSTEMP''@|$(GNULIB_MKSTEMP)|g' \ -e 's|@''GNULIB_MKSTEMPS''@|$(GNULIB_MKSTEMPS)|g' \ + -e 's|@''GNULIB_PTSNAME''@|$(GNULIB_PTSNAME)|g' \ -e 's|@''GNULIB_PUTENV''@|$(GNULIB_PUTENV)|g' \ -e 's|@''GNULIB_RANDOM_R''@|$(GNULIB_RANDOM_R)|g' \ -e 's|@''GNULIB_REALLOC_POSIX''@|$(GNULIB_REALLOC_POSIX)|g' \ @@ -1565,20 +1684,23 @@ stdlib.h: stdlib.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_STRTOD''@|$(GNULIB_STRTOD)|g' \ -e 's|@''GNULIB_STRTOLL''@|$(GNULIB_STRTOLL)|g' \ -e 's|@''GNULIB_STRTOULL''@|$(GNULIB_STRTOULL)|g' \ + -e 's|@''GNULIB_SYSTEM_POSIX''@|$(GNULIB_SYSTEM_POSIX)|g' \ + -e 's|@''GNULIB_UNLOCKPT''@|$(GNULIB_UNLOCKPT)|g' \ -e 's|@''GNULIB_UNSETENV''@|$(GNULIB_UNSETENV)|g' \ + -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \ -e 's|@''HAVE_ATOLL''@|$(HAVE_ATOLL)|g' \ - -e 's|@''HAVE_CALLOC_POSIX''@|$(HAVE_CALLOC_POSIX)|g' \ -e 's|@''HAVE_CANONICALIZE_FILE_NAME''@|$(HAVE_CANONICALIZE_FILE_NAME)|g' \ -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \ -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \ - -e 's|@''HAVE_MALLOC_POSIX''@|$(HAVE_MALLOC_POSIX)|g' \ + -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \ -e 's|@''HAVE_MKDTEMP''@|$(HAVE_MKDTEMP)|g' \ -e 's|@''HAVE_MKOSTEMP''@|$(HAVE_MKOSTEMP)|g' \ -e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \ + -e 's|@''HAVE_MKSTEMP''@|$(HAVE_MKSTEMP)|g' \ -e 's|@''HAVE_MKSTEMPS''@|$(HAVE_MKSTEMPS)|g' \ + -e 's|@''HAVE_PTSNAME''@|$(HAVE_PTSNAME)|g' \ -e 's|@''HAVE_RANDOM_H''@|$(HAVE_RANDOM_H)|g' \ -e 's|@''HAVE_RANDOM_R''@|$(HAVE_RANDOM_R)|g' \ - -e 's|@''HAVE_REALLOC_POSIX''@|$(HAVE_REALLOC_POSIX)|g' \ -e 's|@''HAVE_REALPATH''@|$(HAVE_REALPATH)|g' \ -e 's|@''HAVE_RPMATCH''@|$(HAVE_RPMATCH)|g' \ -e 's|@''HAVE_SETENV''@|$(HAVE_SETENV)|g' \ @@ -1587,10 +1709,14 @@ stdlib.h: stdlib.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \ -e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \ -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \ + -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \ -e 's|@''HAVE_UNSETENV''@|$(HAVE_UNSETENV)|g' \ + -e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \ -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \ + -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \ -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|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_STRTOD''@|$(REPLACE_STRTOD)|g' \ @@ -1670,6 +1796,7 @@ string.h: string.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STRING_H''@|$(NEXT_STRING_H)|g' \ -e 's|@''GNULIB_MBSLEN''@|$(GNULIB_MBSLEN)|g' \ -e 's|@''GNULIB_MBSNLEN''@|$(GNULIB_MBSNLEN)|g' \ @@ -1694,6 +1821,7 @@ string.h: string.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_STPNCPY''@|$(GNULIB_STPNCPY)|g' \ -e 's|@''GNULIB_STRCHRNUL''@|$(GNULIB_STRCHRNUL)|g' \ -e 's|@''GNULIB_STRDUP''@|$(GNULIB_STRDUP)|g' \ + -e 's|@''GNULIB_STRNCAT''@|$(GNULIB_STRNCAT)|g' \ -e 's|@''GNULIB_STRNDUP''@|$(GNULIB_STRNDUP)|g' \ -e 's|@''GNULIB_STRNLEN''@|$(GNULIB_STRNLEN)|g' \ -e 's|@''GNULIB_STRPBRK''@|$(GNULIB_STRPBRK)|g' \ @@ -1706,6 +1834,7 @@ string.h: string.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_STRVERSCMP''@|$(GNULIB_STRVERSCMP)|g' \ < $(srcdir)/string.in.h | \ sed -e 's|@''HAVE_MBSLEN''@|$(HAVE_MBSLEN)|g' \ + -e 's|@''HAVE_MEMCHR''@|$(HAVE_MEMCHR)|g' \ -e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \ -e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \ -e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \ @@ -1720,16 +1849,18 @@ string.h: string.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_STRSEP''@|$(HAVE_STRSEP)|g' \ -e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \ -e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \ - -e 's|@''HAVE_DECL_STRERROR''@|$(HAVE_DECL_STRERROR)|g' \ -e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \ -e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \ + -e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \ -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \ -e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \ -e 's|@''REPLACE_STRCASESTR''@|$(REPLACE_STRCASESTR)|g' \ -e 's|@''REPLACE_STRDUP''@|$(REPLACE_STRDUP)|g' \ -e 's|@''REPLACE_STRSTR''@|$(REPLACE_STRSTR)|g' \ -e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \ + -e 's|@''REPLACE_STRNCAT''@|$(REPLACE_STRNCAT)|g' \ -e 's|@''REPLACE_STRNDUP''@|$(REPLACE_STRNDUP)|g' \ + -e 's|@''REPLACE_STRNLEN''@|$(REPLACE_STRNLEN)|g' \ -e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \ -e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \ -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \ @@ -1756,6 +1887,7 @@ strings.h: strings.in.h $(WARN_ON_USE_H) $(ARG_NONNULL_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STRINGS_H''@|$(NEXT_STRINGS_H)|g' \ -e 's|@''HAVE_STRCASECMP''@|$(HAVE_STRCASECMP)|g' \ -e 's|@''HAVE_DECL_STRNCASECMP''@|$(HAVE_DECL_STRNCASECMP)|g' \ @@ -1848,6 +1980,24 @@ EXTRA_libgnu_a_SOURCES += strtoumax.c ## end gnulib module strtoumax +## begin gnulib module symlink + + +EXTRA_DIST += symlink.c + +EXTRA_libgnu_a_SOURCES += symlink.c + +## end gnulib module symlink + +## begin gnulib module symlinkat + + +EXTRA_DIST += symlinkat.c + +EXTRA_libgnu_a_SOURCES += symlinkat.c + +## end gnulib module symlinkat + ## begin gnulib module sys_stat BUILT_SOURCES += sys/stat.h @@ -1860,6 +2010,7 @@ sys/stat.h: sys_stat.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \ -e 's|@''GNULIB_FCHMODAT''@|$(GNULIB_FCHMODAT)|g' \ -e 's|@''GNULIB_FSTATAT''@|$(GNULIB_FSTATAT)|g' \ @@ -1919,6 +2070,7 @@ sys/time.h: sys_time.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) sed -e 's/@''HAVE_SYS_TIME_H''@/$(HAVE_SYS_TIME_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_SYS_TIME_H''@|$(NEXT_SYS_TIME_H)|g' \ -e 's/@''GNULIB_GETTIMEOFDAY''@/$(GNULIB_GETTIMEOFDAY)/g' \ -e 's/@''HAVE_GETTIMEOFDAY''@/$(HAVE_GETTIMEOFDAY)/g' \ @@ -1948,6 +2100,7 @@ sysexits.h: sysexits.in.h sed -e 's|@''HAVE_SYSEXITS_H''@|$(HAVE_SYSEXITS_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_SYSEXITS_H''@|$(NEXT_SYSEXITS_H)|g' \ < $(srcdir)/sysexits.in.h; \ } > $@-t && \ @@ -1978,16 +2131,22 @@ time.h: time.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_TIME_H''@|$(NEXT_TIME_H)|g' \ -e 's|@''GNULIB_MKTIME''@|$(GNULIB_MKTIME)|g' \ -e 's|@''GNULIB_NANOSLEEP''@|$(GNULIB_NANOSLEEP)|g' \ -e 's|@''GNULIB_STRPTIME''@|$(GNULIB_STRPTIME)|g' \ -e 's|@''GNULIB_TIMEGM''@|$(GNULIB_TIMEGM)|g' \ + -e 's|@''GNULIB_TIME_R''@|$(GNULIB_TIME_R)|g' \ + -e 's|@''HAVE_LOCALTIME_R''@|$(HAVE_LOCALTIME_R)|g' \ + -e 's|@''HAVE_NANOSLEEP''@|$(HAVE_NANOSLEEP)|g' \ + -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \ + -e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \ -e 's|@''REPLACE_LOCALTIME_R''@|$(REPLACE_LOCALTIME_R)|g' \ -e 's|@''REPLACE_MKTIME''@|$(REPLACE_MKTIME)|g' \ -e 's|@''REPLACE_NANOSLEEP''@|$(REPLACE_NANOSLEEP)|g' \ - -e 's|@''REPLACE_STRPTIME''@|$(REPLACE_STRPTIME)|g' \ -e 's|@''REPLACE_TIMEGM''@|$(REPLACE_TIMEGM)|g' \ + -e 's|@''PTHREAD_H_DEFINES_STRUCT_TIMESPEC''@|$(PTHREAD_H_DEFINES_STRUCT_TIMESPEC)|g' \ -e 's|@''SYS_TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(SYS_TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ -e 's|@''TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ @@ -2030,6 +2189,7 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) sed -e 's|@''HAVE_UNISTD_H''@|$(HAVE_UNISTD_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_UNISTD_H''@|$(NEXT_UNISTD_H)|g' \ -e 's|@''GNULIB_CHOWN''@|$(GNULIB_CHOWN)|g' \ -e 's|@''GNULIB_CLOSE''@|$(GNULIB_CLOSE)|g' \ @@ -2057,12 +2217,14 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_LSEEK''@|$(GNULIB_LSEEK)|g' \ -e 's|@''GNULIB_PIPE2''@|$(GNULIB_PIPE2)|g' \ -e 's|@''GNULIB_PREAD''@|$(GNULIB_PREAD)|g' \ + -e 's|@''GNULIB_PWRITE''@|$(GNULIB_PWRITE)|g' \ -e 's|@''GNULIB_READLINK''@|$(GNULIB_READLINK)|g' \ -e 's|@''GNULIB_READLINKAT''@|$(GNULIB_READLINKAT)|g' \ -e 's|@''GNULIB_RMDIR''@|$(GNULIB_RMDIR)|g' \ -e 's|@''GNULIB_SLEEP''@|$(GNULIB_SLEEP)|g' \ -e 's|@''GNULIB_SYMLINK''@|$(GNULIB_SYMLINK)|g' \ -e 's|@''GNULIB_SYMLINKAT''@|$(GNULIB_SYMLINKAT)|g' \ + -e 's|@''GNULIB_TTYNAME_R''@|$(GNULIB_TTYNAME_R)|g' \ -e 's|@''GNULIB_UNISTD_H_GETOPT''@|$(GNULIB_UNISTD_H_GETOPT)|g' \ -e 's|@''GNULIB_UNISTD_H_SIGPIPE''@|$(GNULIB_UNISTD_H_SIGPIPE)|g' \ -e 's|@''GNULIB_UNLINK''@|$(GNULIB_UNLINK)|g' \ @@ -2075,6 +2237,7 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_DUP3''@|$(HAVE_DUP3)|g' \ -e 's|@''HAVE_EUIDACCESS''@|$(HAVE_EUIDACCESS)|g' \ -e 's|@''HAVE_FACCESSAT''@|$(HAVE_FACCESSAT)|g' \ + -e 's|@''HAVE_FCHDIR''@|$(HAVE_FCHDIR)|g' \ -e 's|@''HAVE_FCHOWNAT''@|$(HAVE_FCHOWNAT)|g' \ -e 's|@''HAVE_FSYNC''@|$(HAVE_FSYNC)|g' \ -e 's|@''HAVE_FTRUNCATE''@|$(HAVE_FTRUNCATE)|g' \ @@ -2084,28 +2247,30 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_GETHOSTNAME''@|$(HAVE_GETHOSTNAME)|g' \ -e 's|@''HAVE_GETLOGIN''@|$(HAVE_GETLOGIN)|g' \ -e 's|@''HAVE_GETPAGESIZE''@|$(HAVE_GETPAGESIZE)|g' \ - -e 's|@''HAVE_GETUSERSHELL''@|$(HAVE_GETUSERSHELL)|g' \ -e 's|@''HAVE_LCHOWN''@|$(HAVE_LCHOWN)|g' \ -e 's|@''HAVE_LINK''@|$(HAVE_LINK)|g' \ -e 's|@''HAVE_LINKAT''@|$(HAVE_LINKAT)|g' \ -e 's|@''HAVE_PIPE2''@|$(HAVE_PIPE2)|g' \ -e 's|@''HAVE_PREAD''@|$(HAVE_PREAD)|g' \ + -e 's|@''HAVE_PWRITE''@|$(HAVE_PWRITE)|g' \ -e 's|@''HAVE_READLINK''@|$(HAVE_READLINK)|g' \ -e 's|@''HAVE_READLINKAT''@|$(HAVE_READLINKAT)|g' \ -e 's|@''HAVE_SLEEP''@|$(HAVE_SLEEP)|g' \ -e 's|@''HAVE_SYMLINK''@|$(HAVE_SYMLINK)|g' \ -e 's|@''HAVE_SYMLINKAT''@|$(HAVE_SYMLINKAT)|g' \ + -e 's|@''HAVE_TTYNAME_R''@|$(HAVE_TTYNAME_R)|g' \ -e 's|@''HAVE_UNLINKAT''@|$(HAVE_UNLINKAT)|g' \ -e 's|@''HAVE_USLEEP''@|$(HAVE_USLEEP)|g' \ -e 's|@''HAVE_DECL_ENVIRON''@|$(HAVE_DECL_ENVIRON)|g' \ -e 's|@''HAVE_DECL_GETLOGIN_R''@|$(HAVE_DECL_GETLOGIN_R)|g' \ + -e 's|@''HAVE_DECL_GETPAGESIZE''@|$(HAVE_DECL_GETPAGESIZE)|g' \ + -e 's|@''HAVE_DECL_GETUSERSHELL''@|$(HAVE_DECL_GETUSERSHELL)|g' \ -e 's|@''HAVE_OS_H''@|$(HAVE_OS_H)|g' \ -e 's|@''HAVE_SYS_PARAM_H''@|$(HAVE_SYS_PARAM_H)|g' \ -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \ -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \ -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \ -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \ - -e 's|@''REPLACE_FCHDIR''@|$(REPLACE_FCHDIR)|g' \ -e 's|@''REPLACE_FCHOWNAT''@|$(REPLACE_FCHOWNAT)|g' \ -e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \ -e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \ @@ -2115,10 +2280,12 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''REPLACE_LINKAT''@|$(REPLACE_LINKAT)|g' \ -e 's|@''REPLACE_LSEEK''@|$(REPLACE_LSEEK)|g' \ -e 's|@''REPLACE_PREAD''@|$(REPLACE_PREAD)|g' \ + -e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \ -e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \ -e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \ -e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \ -e 's|@''REPLACE_SYMLINK''@|$(REPLACE_SYMLINK)|g' \ + -e 's|@''REPLACE_TTYNAME_R''@|$(REPLACE_TTYNAME_R)|g' \ -e 's|@''REPLACE_UNLINK''@|$(REPLACE_UNLINK)|g' \ -e 's|@''REPLACE_UNLINKAT''@|$(REPLACE_UNLINKAT)|g' \ -e 's|@''REPLACE_USLEEP''@|$(REPLACE_USLEEP)|g' \ @@ -2147,21 +2314,41 @@ EXTRA_libgnu_a_SOURCES += dup-safer.c fd-safer.c pipe-safer.c ## begin gnulib module unitypes +BUILT_SOURCES += $(LIBUNISTRING_UNITYPES_H) -EXTRA_DIST += unitypes.h +unitypes.h: unitypes.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/unitypes.in.h; \ + } > $@-t && \ + mv -f $@-t $@ +MOSTLYCLEANFILES += unitypes.h unitypes.h-t + +EXTRA_DIST += unitypes.in.h ## end gnulib module unitypes ## begin gnulib module uniwidth/base +BUILT_SOURCES += $(LIBUNISTRING_UNIWIDTH_H) + +uniwidth.h: uniwidth.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/uniwidth.in.h; \ + } > $@-t && \ + mv -f $@-t $@ +MOSTLYCLEANFILES += uniwidth.h uniwidth.h-t -EXTRA_DIST += localcharset.h uniwidth.h +EXTRA_DIST += localcharset.h uniwidth.in.h ## end gnulib module uniwidth/base ## begin gnulib module uniwidth/width +if LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH libgnu_a_SOURCES += uniwidth/width.c +endif EXTRA_DIST += uniwidth/cjk.h @@ -2210,6 +2397,15 @@ EXTRA_libgnu_a_SOURCES += utimens.c ## end gnulib module utimens +## begin gnulib module utimensat + + +EXTRA_DIST += utimensat.c + +EXTRA_libgnu_a_SOURCES += utimensat.c + +## end gnulib module utimensat + ## begin gnulib module vasnprintf @@ -2285,6 +2481,7 @@ wchar.h: wchar.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_WCHAR_H''@|$(NEXT_WCHAR_H)|g' \ -e 's|@''HAVE_WCHAR_H''@|$(HAVE_WCHAR_H)|g' \ -e 's|@''GNULIB_BTOWC''@|$(GNULIB_BTOWC)|g' \ @@ -2355,9 +2552,12 @@ wctype.h: wctype.in.h $(CXXDEFS_H) $(WARN_ON_USE_H) sed -e 's/@''HAVE_WCTYPE_H''@/$(HAVE_WCTYPE_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_WCTYPE_H''@|$(NEXT_WCTYPE_H)|g' \ + -e 's/@''HAVE_ISWBLANK''@/$(HAVE_ISWBLANK)/g' \ -e 's/@''HAVE_ISWCNTRL''@/$(HAVE_ISWCNTRL)/g' \ -e 's/@''HAVE_WINT_T''@/$(HAVE_WINT_T)/g' \ + -e 's/@''REPLACE_ISWBLANK''@/$(REPLACE_ISWBLANK)/g' \ -e 's/@''REPLACE_ISWCNTRL''@/$(REPLACE_ISWCNTRL)/g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ diff --git a/gnu/Makefile.in b/gnu/Makefile.in index de497b9..752456c 100644 --- a/gnu/Makefile.in +++ b/gnu/Makefile.in @@ -15,6 +15,8 @@ @SET_MAKE@ +# -*- buffer-read-only: t -*- vi: set ro: +# DO NOT EDIT! GENERATED AUTOMATICALLY! # Copyright (C) 2002-2010 Free Software Foundation, Inc. # # This file is free software, distributed under the terms of the GNU @@ -24,7 +26,7 @@ # the same distribution terms as the rest of that program. # # Generated by gnulib-tool. -# Reproduce by: gnulib-tool --import --dir=. --local-dir=gl --lib=libgnu --source-base=gnu --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --avoid=lock --no-libtool --macro-prefix=gl alloca argmatch argp argp-version-etc backupfile canonicalize closeout configmake dirname error exclude exitfail fileblocks fnmatch-gnu fseeko ftruncate full-write getdate getline getopt getopt-gnu getpagesize gettext gettime gitlog-to-changelog hash human inttostr inttypes lchown localcharset mkdtemp modechange obstack priv-set progname quote quotearg rpmatch safe-read save-cwd savedir setenv snprintf stat-time stdbool stdint stpcpy strdup-posix strerror strtol strtoul timespec unlinkdir unlocked-io utimens version-etc-fsf xalloc xalloc-die xgetcwd xstrtoumax xvasprintf +# Reproduce by: gnulib-tool --import --dir=. --local-dir=gl --lib=libgnu --source-base=gnu --m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --avoid=lock --no-libtool --macro-prefix=gl alloca argmatch argp argp-version-etc backupfile closeout configmake dirname error exclude exitfail fdopendir fdutimensat fileblocks fnmatch-gnu fseeko full-write futimens getline getopt-gnu getpagesize gettext gettime gitlog-to-changelog hash human inttostr inttypes lchown linkat localcharset mkdtemp mkfifoat modechange obstack openat parse-datetime priv-set progname quote quotearg readlinkat renameat rpmatch safe-read savedir setenv snprintf stat-time stdbool stdint stpcpy strdup-posix strerror strtol strtoul symlinkat timespec unlinkdir unlocked-io utimensat version-etc-fsf xalloc xalloc-die xgetcwd xstrtoumax xvasprintf @@ -47,17 +49,18 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ +@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__append_1 = uniwidth/width.c subdir = gnu DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.in alloca.c getdate.c + $(srcdir)/Makefile.in alloca.c parse-datetime.c ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/argmatch.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/backupfile.m4 \ - $(top_srcdir)/m4/bison.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/canonicalize.m4 \ + $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/backupfile.m4 $(top_srcdir)/m4/bison.m4 \ + $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/canonicalize.m4 \ $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/chown.m4 \ - $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/cloexec.m4 \ $(top_srcdir)/m4/close-stream.m4 $(top_srcdir)/m4/close.m4 \ $(top_srcdir)/m4/closeout.m4 $(top_srcdir)/m4/codeset.m4 \ $(top_srcdir)/m4/d-ino.m4 $(top_srcdir)/m4/dirent-safer.m4 \ @@ -70,17 +73,17 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/fchdir.m4 $(top_srcdir)/m4/fclose.m4 \ $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopendir.m4 \ - $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpending.m4 \ - $(top_srcdir)/m4/fseeko.m4 $(top_srcdir)/m4/ftruncate.m4 \ + $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \ + $(top_srcdir)/m4/fpending.m4 $(top_srcdir)/m4/fseeko.m4 \ + $(top_srcdir)/m4/futimens.m4 \ $(top_srcdir)/m4/getcwd-abort-bug.m4 \ $(top_srcdir)/m4/getcwd-path-max.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdate.m4 $(top_srcdir)/m4/getdelim.m4 \ - $(top_srcdir)/m4/getdtablesize.m4 $(top_srcdir)/m4/getline.m4 \ - $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \ - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gettime.m4 \ - $(top_srcdir)/m4/gettimeofday.m4 $(top_srcdir)/m4/glibc21.m4 \ - $(top_srcdir)/m4/gnulib-common.m4 \ + $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ + $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ + $(top_srcdir)/m4/getpagesize.m4 $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \ + $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ $(top_srcdir)/m4/gnulib-comp.m4 $(top_srcdir)/m4/hash.m4 \ $(top_srcdir)/m4/human.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \ @@ -90,54 +93,61 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/lchown.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \ - $(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-zh.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \ - $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/malloc.m4 \ - $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/mbchar.m4 \ - $(top_srcdir)/m4/mbiter.m4 $(top_srcdir)/m4/mbrtowc.m4 \ - $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbsrtowcs.m4 \ - $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/memchr.m4 \ - $(top_srcdir)/m4/mempcpy.m4 $(top_srcdir)/m4/memrchr.m4 \ - $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkdtemp.m4 \ + $(top_srcdir)/m4/libunistring-base.m4 \ + $(top_srcdir)/m4/link-follow.m4 $(top_srcdir)/m4/link.m4 \ + $(top_srcdir)/m4/linkat.m4 $(top_srcdir)/m4/localcharset.m4 \ + $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ + $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \ + $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ + $(top_srcdir)/m4/mbchar.m4 $(top_srcdir)/m4/mbiter.m4 \ + $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ + $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ + $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ + $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mkdir.m4 \ + $(top_srcdir)/m4/mkdtemp.m4 $(top_srcdir)/m4/mkfifo.m4 \ + $(top_srcdir)/m4/mkfifoat.m4 $(top_srcdir)/m4/mknod.m4 \ $(top_srcdir)/m4/mktime.m4 $(top_srcdir)/m4/mmap-anon.m4 \ $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/modechange.m4 \ $(top_srcdir)/m4/multiarch.m4 $(top_srcdir)/m4/nl_langinfo.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/paxutils.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/priv-set.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/quote.m4 \ - $(top_srcdir)/m4/quotearg.m4 $(top_srcdir)/m4/rawmemchr.m4 \ - $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rmdir.m4 \ + $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/parse-datetime.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/paxutils.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/priv-set.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \ + $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/readlink.m4 \ + $(top_srcdir)/m4/readlinkat.m4 $(top_srcdir)/m4/realloc.m4 \ + $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rename.m4 \ + $(top_srcdir)/m4/renameat.m4 $(top_srcdir)/m4/rmdir.m4 \ $(top_srcdir)/m4/rmt.m4 $(top_srcdir)/m4/rpmatch.m4 \ $(top_srcdir)/m4/rtapelib.m4 $(top_srcdir)/m4/safe-read.m4 \ - $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/same.m4 \ - $(top_srcdir)/m4/save-cwd.m4 $(top_srcdir)/m4/savedir.m4 \ - $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/sleep.m4 $(top_srcdir)/m4/snprintf.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/stpcpy.m4 $(top_srcdir)/m4/strcase.m4 \ - $(top_srcdir)/m4/strchrnul.m4 $(top_srcdir)/m4/strdup.m4 \ - $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/string_h.m4 \ - $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strndup.m4 \ - $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoimax.m4 \ - $(top_srcdir)/m4/strtol.m4 $(top_srcdir)/m4/strtoll.m4 \ - $(top_srcdir)/m4/strtoul.m4 $(top_srcdir)/m4/strtoull.m4 \ - $(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/sys_stat_h.m4 \ - $(top_srcdir)/m4/sys_time_h.m4 $(top_srcdir)/m4/sysexits.m4 \ - $(top_srcdir)/m4/system.m4 $(top_srcdir)/m4/tempname.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/unistd-safer.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlink.m4 $(top_srcdir)/m4/unlinkdir.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/utimbuf.m4 \ - $(top_srcdir)/m4/utimens.m4 $(top_srcdir)/m4/utimes.m4 \ + $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/save-cwd.m4 \ + $(top_srcdir)/m4/savedir.m4 $(top_srcdir)/m4/setenv.m4 \ + $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ + $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \ + $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ + $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ + $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ + $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ + $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ + $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ + $(top_srcdir)/m4/strtoimax.m4 $(top_srcdir)/m4/strtol.m4 \ + $(top_srcdir)/m4/strtoll.m4 $(top_srcdir)/m4/strtoul.m4 \ + $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/strtoumax.m4 \ + $(top_srcdir)/m4/symlink.m4 $(top_srcdir)/m4/symlinkat.m4 \ + $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \ + $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/system.m4 \ + $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd-safer.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \ + $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/utimbuf.m4 $(top_srcdir)/m4/utimens.m4 \ + $(top_srcdir)/m4/utimensat.m4 $(top_srcdir)/m4/utimes.m4 \ $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/vasprintf.m4 \ $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/vsnprintf.m4 \ $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/wchar_h.m4 \ @@ -165,19 +175,34 @@ am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) am__v_at_0 = @ libgnu_a_AR = $(AR) $(ARFLAGS) am__DEPENDENCIES_1 = +am__libgnu_a_SOURCES_DIST = areadlink.c areadlinkat.c argp.h argp-ba.c \ + argp-eexst.c argp-fmtstream.c argp-fmtstream.h argp-fs-xinl.c \ + argp-help.c argp-namefrob.h argp-parse.c argp-pin.c argp-pv.c \ + argp-pvh.c argp-xinl.c argp-version-etc.h argp-version-etc.c \ + bitrotate.h c-ctype.h c-ctype.c close-hook.c exitfail.c \ + fdutimensat.c full-write.h full-write.c gettext.h imaxtostr.c \ + inttostr.c offtostr.c uinttostr.c umaxtostr.c localcharset.h \ + localcharset.c malloca.c mbchar.c mbscasecmp.c mbuiter.h \ + openat-die.c parse-datetime.y priv-set.c progname.h progname.c \ + size_max.h strnlen1.h strnlen1.c uniwidth/width.c verify.h \ + version-etc.h version-etc.c version-etc-fsf.c xalloc-die.c \ + xsize.h xstrndup.h xstrndup.c xstrtoumax.c xvasprintf.h \ + xvasprintf.c xasprintf.c am__dirstamp = $(am__leading_dot)dirstamp -am_libgnu_a_OBJECTS = areadlink-with-size.$(OBJEXT) argp-ba.$(OBJEXT) \ - argp-eexst.$(OBJEXT) argp-fmtstream.$(OBJEXT) \ - argp-fs-xinl.$(OBJEXT) argp-help.$(OBJEXT) \ - argp-parse.$(OBJEXT) argp-pin.$(OBJEXT) argp-pv.$(OBJEXT) \ - argp-pvh.$(OBJEXT) argp-xinl.$(OBJEXT) \ +@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__objects_1 = uniwidth/width.$(OBJEXT) +am_libgnu_a_OBJECTS = areadlink.$(OBJEXT) areadlinkat.$(OBJEXT) \ + argp-ba.$(OBJEXT) argp-eexst.$(OBJEXT) \ + argp-fmtstream.$(OBJEXT) argp-fs-xinl.$(OBJEXT) \ + argp-help.$(OBJEXT) argp-parse.$(OBJEXT) argp-pin.$(OBJEXT) \ + argp-pv.$(OBJEXT) argp-pvh.$(OBJEXT) argp-xinl.$(OBJEXT) \ argp-version-etc.$(OBJEXT) c-ctype.$(OBJEXT) \ - close-hook.$(OBJEXT) exitfail.$(OBJEXT) file-set.$(OBJEXT) \ - full-write.$(OBJEXT) getdate.$(OBJEXT) hash-pjw.$(OBJEXT) \ - hash-triple.$(OBJEXT) localcharset.$(OBJEXT) malloca.$(OBJEXT) \ - mbchar.$(OBJEXT) mbscasecmp.$(OBJEXT) openat-die.$(OBJEXT) \ - priv-set.$(OBJEXT) progname.$(OBJEXT) strnlen1.$(OBJEXT) \ - uniwidth/width.$(OBJEXT) version-etc.$(OBJEXT) \ + close-hook.$(OBJEXT) exitfail.$(OBJEXT) fdutimensat.$(OBJEXT) \ + full-write.$(OBJEXT) imaxtostr.$(OBJEXT) inttostr.$(OBJEXT) \ + offtostr.$(OBJEXT) uinttostr.$(OBJEXT) umaxtostr.$(OBJEXT) \ + localcharset.$(OBJEXT) malloca.$(OBJEXT) mbchar.$(OBJEXT) \ + mbscasecmp.$(OBJEXT) openat-die.$(OBJEXT) \ + parse-datetime.$(OBJEXT) priv-set.$(OBJEXT) progname.$(OBJEXT) \ + strnlen1.$(OBJEXT) $(am__objects_1) version-etc.$(OBJEXT) \ version-etc-fsf.$(OBJEXT) xalloc-die.$(OBJEXT) \ xstrndup.$(OBJEXT) xstrtoumax.$(OBJEXT) xvasprintf.$(OBJEXT) \ xasprintf.$(OBJEXT) @@ -206,7 +231,7 @@ AM_V_GEN = $(am__v_GEN_$(V)) am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libgnu_a_SOURCES) $(EXTRA_libgnu_a_SOURCES) -DIST_SOURCES = $(libgnu_a_SOURCES) $(EXTRA_libgnu_a_SOURCES) +DIST_SOURCES = $(am__libgnu_a_SOURCES_DIST) $(EXTRA_libgnu_a_SOURCES) RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-dvi-recursive install-exec-recursive \ @@ -255,6 +280,7 @@ ALLOCA_H = @ALLOCA_H@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ +ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOM4TE = @AUTOM4TE@ @@ -352,6 +378,7 @@ GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ +GNULIB_GRANTPT = @GNULIB_GRANTPT@ GNULIB_IMAXABS = @GNULIB_IMAXABS@ GNULIB_IMAXDIV = @GNULIB_IMAXDIV@ GNULIB_LCHMOD = @GNULIB_LCHMOD@ @@ -407,10 +434,12 @@ GNULIB_POPEN = @GNULIB_POPEN@ GNULIB_PREAD = @GNULIB_PREAD@ GNULIB_PRINTF = @GNULIB_PRINTF@ GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ +GNULIB_PTSNAME = @GNULIB_PTSNAME@ GNULIB_PUTC = @GNULIB_PUTC@ GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ GNULIB_PUTENV = @GNULIB_PUTENV@ GNULIB_PUTS = @GNULIB_PUTS@ +GNULIB_PWRITE = @GNULIB_PWRITE@ GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ GNULIB_READLINK = @GNULIB_READLINK@ @@ -435,6 +464,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ GNULIB_STRDUP = @GNULIB_STRDUP@ GNULIB_STRERROR = @GNULIB_STRERROR@ +GNULIB_STRNCAT = @GNULIB_STRNCAT@ GNULIB_STRNDUP = @GNULIB_STRNDUP@ GNULIB_STRNLEN = @GNULIB_STRNLEN@ GNULIB_STRPBRK = @GNULIB_STRPBRK@ @@ -451,11 +481,16 @@ GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@ GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ GNULIB_SYMLINK = @GNULIB_SYMLINK@ GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ +GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ GNULIB_TIMEGM = @GNULIB_TIMEGM@ +GNULIB_TIME_R = @GNULIB_TIME_R@ +GNULIB_TMPFILE = @GNULIB_TMPFILE@ +GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@ GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ GNULIB_UNLINK = @GNULIB_UNLINK@ GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ +GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ GNULIB_UNSETENV = @GNULIB_UNSETENV@ GNULIB_USLEEP = @GNULIB_USLEEP@ GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ @@ -473,20 +508,23 @@ GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ GNULIB_WCTOB = @GNULIB_WCTOB@ GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ GNULIB_WRITE = @GNULIB_WRITE@ +GNULIB__EXIT = @GNULIB__EXIT@ GREP = @GREP@ HAVE_ALPHASORT = @HAVE_ALPHASORT@ HAVE_ATOLL = @HAVE_ATOLL@ HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_CALLOC_POSIX = @HAVE_CALLOC_POSIX@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ HAVE_CHOWN = @HAVE_CHOWN@ HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ +HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ +HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ +HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ @@ -494,7 +532,6 @@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR = @HAVE_DECL_STRERROR@ HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ @@ -510,12 +547,15 @@ HAVE_DUP2 = @HAVE_DUP2@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_FACCESSAT = @HAVE_FACCESSAT@ +HAVE_FCHDIR = @HAVE_FCHDIR@ HAVE_FCHMODAT = @HAVE_FCHMODAT@ HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ HAVE_FCNTL = @HAVE_FCNTL@ HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ +HAVE_FSEEKO = @HAVE_FSEEKO@ HAVE_FSTATAT = @HAVE_FSTATAT@ HAVE_FSYNC = @HAVE_FSYNC@ +HAVE_FTELLO = @HAVE_FTELLO@ HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ HAVE_FUTIMENS = @HAVE_FUTIMENS@ HAVE_GETDOMAINNAME = @HAVE_GETDOMAINNAME@ @@ -527,25 +567,29 @@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ -HAVE_GETUSERSHELL = @HAVE_GETUSERSHELL@ +HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ +HAVE_ISWBLANK = @HAVE_ISWBLANK@ HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ +HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ +HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ HAVE_LCHMOD = @HAVE_LCHMOD@ HAVE_LCHOWN = @HAVE_LCHOWN@ HAVE_LINK = @HAVE_LINK@ HAVE_LINKAT = @HAVE_LINKAT@ +HAVE_LOCALTIME_R = @HAVE_LOCALTIME_R@ HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MALLOC_POSIX = @HAVE_MALLOC_POSIX@ HAVE_MBRLEN = @HAVE_MBRLEN@ HAVE_MBRTOWC = @HAVE_MBRTOWC@ HAVE_MBSINIT = @HAVE_MBSINIT@ HAVE_MBSLEN = @HAVE_MBSLEN@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ +HAVE_MEMCHR = @HAVE_MEMCHR@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ @@ -555,18 +599,21 @@ HAVE_MKNOD = @HAVE_MKNOD@ HAVE_MKNODAT = @HAVE_MKNODAT@ HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ +HAVE_MKSTEMP = @HAVE_MKSTEMP@ HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ +HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ HAVE_OPENAT = @HAVE_OPENAT@ HAVE_OS_H = @HAVE_OS_H@ HAVE_PIPE2 = @HAVE_PIPE2@ HAVE_PREAD = @HAVE_PREAD@ +HAVE_PTSNAME = @HAVE_PTSNAME@ +HAVE_PWRITE = @HAVE_PWRITE@ HAVE_RANDOM_H = @HAVE_RANDOM_H@ HAVE_RANDOM_R = @HAVE_RANDOM_R@ HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ HAVE_READLINK = @HAVE_READLINK@ HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOC_POSIX = @HAVE_REALLOC_POSIX@ HAVE_REALPATH = @HAVE_REALPATH@ HAVE_RENAMEAT = @HAVE_RENAMEAT@ HAVE_RPMATCH = @HAVE_RPMATCH@ @@ -583,6 +630,7 @@ HAVE_STRCASECMP = @HAVE_STRCASECMP@ HAVE_STRCASESTR = @HAVE_STRCASESTR@ HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ HAVE_STRPBRK = @HAVE_STRPBRK@ +HAVE_STRPTIME = @HAVE_STRPTIME@ HAVE_STRSEP = @HAVE_STRSEP@ HAVE_STRTOD = @HAVE_STRTOD@ HAVE_STRTOLL = @HAVE_STRTOLL@ @@ -599,8 +647,11 @@ HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ +HAVE_TIMEGM = @HAVE_TIMEGM@ +HAVE_TTYNAME_R = @HAVE_TTYNAME_R@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ +HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_UNSETENV = @HAVE_UNSETENV@ HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -615,6 +666,7 @@ HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ HAVE_WINT_T = @HAVE_WINT_T@ HAVE__BOOL = @HAVE__BOOL@ +HAVE__EXIT = @HAVE__EXIT@ INCLUDE_NEXT = @INCLUDE_NEXT@ INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ INSTALL = @INSTALL@ @@ -633,6 +685,8 @@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ +LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ LIB_SETSOCKOPT = @LIB_SETSOCKOPT@ LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ @@ -699,21 +753,24 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ POSUB = @POSUB@ +PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@ +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ PU_RMT_PROG = @PU_RMT_PROG@ RANLIB = @RANLIB@ REPLACE_BTOWC = @REPLACE_BTOWC@ +REPLACE_CALLOC = @REPLACE_CALLOC@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ +REPLACE_DIRFD = @REPLACE_DIRFD@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_FCHDIR = @REPLACE_FCHDIR@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ @@ -736,6 +793,7 @@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ +REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ REPLACE_LCHOWN = @REPLACE_LCHOWN@ REPLACE_LINK = @REPLACE_LINK@ @@ -743,6 +801,7 @@ REPLACE_LINKAT = @REPLACE_LINKAT@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ +REPLACE_MALLOC = @REPLACE_MALLOC@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ @@ -768,7 +827,9 @@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PUTENV = @REPLACE_PUTENV@ +REPLACE_PWRITE = @REPLACE_PWRITE@ REPLACE_READLINK = @REPLACE_READLINK@ +REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -780,17 +841,21 @@ REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRDUP = @REPLACE_STRDUP@ REPLACE_STRERROR = @REPLACE_STRERROR@ +REPLACE_STRNCAT = @REPLACE_STRNCAT@ REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRPTIME = @REPLACE_STRPTIME@ +REPLACE_STRNLEN = @REPLACE_STRNLEN@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ REPLACE_STRSTR = @REPLACE_STRSTR@ REPLACE_STRTOD = @REPLACE_STRTOD@ REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TMPFILE = @REPLACE_TMPFILE@ +REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ REPLACE_UNLINK = @REPLACE_UNLINK@ REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ REPLACE_UNSETENV = @REPLACE_UNSETENV@ @@ -860,6 +925,7 @@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ +gltests_WITNESS = @gltests_WITNESS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -893,68 +959,60 @@ SUBDIRS = noinst_HEADERS = noinst_LIBRARIES = libgnu.a noinst_LTLIBRARIES = - -# This is for those projects which use "gettextize --intl" to put a source-code -# copy of libintl into their package. In such projects, every Makefile.am needs -# -I$(top_builddir)/intl, so that can be found in this directory. -# For the Makefile.ams in other directories it is the maintainer's -# responsibility; for the one from gnulib we do it here. -# This option has no effect when the user disables NLS (because then the intl -# directory contains no libintl.h file) or when the project does not use -# "gettextize --intl". -#AM_CPPFLAGS += -I$(top_builddir)/intl -EXTRA_DIST = alloca.c alloca.in.h areadlink.h \ +EXTRA_DIST = alloca.c alloca.in.h areadlink.h areadlink.h \ $(top_srcdir)/build-aux/arg-nonnull.h argmatch.c argmatch.h \ backupfile.c backupfile.h btowc.c \ - $(top_srcdir)/build-aux/c++defs.h canonicalize.c \ - canonicalize.h chdir-long.c chdir-long.h chown.c fchown-stub.c \ - close.c close-hook.h close-stream.c close-stream.h closeout.c \ - closeout.h dirent.in.h dirent--.h dirent-safer.h \ + $(top_srcdir)/build-aux/c++defs.h canonicalize-lgpl.c \ + chdir-long.c chdir-long.h chown.c fchown-stub.c cloexec.c \ + cloexec.h close.c close-hook.h close-stream.c close-stream.h \ + closeout.c closeout.h dirent.in.h dirent--.h dirent-safer.h \ opendir-safer.c dirfd.c basename.c dirname.c stripslash.c \ basename-lgpl.c dirname-lgpl.c dirname.h stripslash.c dup2.c \ errno.in.h error.c error.h exclude.c exclude.h exitfail.h \ fchdir.c fclose.c fcntl.c fcntl.in.h fdopendir.c openat-priv.h \ - openat-proc.c file-set.h fileblocks.c float.in.h fnmatch.c \ - fnmatch.in.h fnmatch_loop.c fpending.c fpending.h fseeko.c \ - stdio-impl.h ftruncate.c getcwd.c getdate.c getdate.h \ - getdelim.c getdtablesize.c getline.c getopt.c getopt.in.h \ - getopt1.c getopt_int.h getpagesize.c \ + openat-proc.c utimens.h fileblocks.c filenamecat-lgpl.c \ + filenamecat.h float.in.h fnmatch.c fnmatch.in.h fnmatch_loop.c \ + fpending.c fpending.h fseeko.c stdio-impl.h futimens.c \ + getcwd.c getdelim.c getdtablesize.c getline.c getopt.c \ + getopt.in.h getopt1.c getopt_int.h getpagesize.c \ $(top_srcdir)/build-aux/config.rpath gettime.c gettimeofday.c \ $(top_srcdir)/build-aux/gitlog-to-changelog hash.c hash.h \ - hash-triple.h $(top_srcdir)/build-aux/config.rpath human.c \ - human.h intprops.h imaxtostr.c inttostr.c inttostr.h \ - offtostr.c uinttostr.c umaxtostr.c inttypes.in.h langinfo.in.h \ - lchown.c config.charset ref-add.sin ref-del.sin lseek.c \ - lstat.c malloc.c malloc.c malloca.h malloca.valgrind mbchar.h \ - mbrtowc.c mbsinit.c mbsrtowcs-state.c mbsrtowcs.c memchr.c \ - memchr.valgrind mempcpy.c memrchr.c mkdir.c mkdtemp.c \ - mktime-internal.h mktime.c modechange.c modechange.h \ - nl_langinfo.c obstack.c obstack.h open.c at-func.c fchmodat.c \ - fchownat.c fstatat.c mkdirat.c openat-priv.h openat-proc.c \ - openat.c openat.h unlinkat.c pathmax.h priv-set.h quote.c \ + $(top_srcdir)/build-aux/config.rpath human.c human.h \ + intprops.h anytostr.c inttostr.h inttypes.in.h langinfo.in.h \ + lchown.c link.c at-func2.c linkat.c config.charset ref-add.sin \ + ref-del.sin lseek.c lstat.c malloc.c malloc.c malloca.h \ + malloca.valgrind mbchar.h mbrtowc.c mbsinit.c \ + mbsrtowcs-state.c mbsrtowcs.c memchr.c memchr.valgrind \ + mempcpy.c memrchr.c mkdir.c mkdtemp.c mkfifo.c mkfifoat.c \ + mknodat.c mknod.c mktime-internal.h mktime.c modechange.c \ + modechange.h nl_langinfo.c obstack.c obstack.h open.c \ + at-func.c fchmodat.c fchownat.c fstatat.c mkdirat.c \ + openat-priv.h openat-proc.c openat.c openat.h unlinkat.c \ + parse-datetime.c parse-datetime.h pathmax.h priv-set.h quote.c \ quote.h quotearg.c quotearg.h rawmemchr.c rawmemchr.valgrind \ - readlink.c realloc.c regcomp.c regex.c regex.h \ - regex_internal.c regex_internal.h regexec.c rmdir.c rpmatch.c \ - safe-read.c safe-read.h safe-write.c safe-write.h same.c \ - same.h same-inode.h save-cwd.c save-cwd.h savedir.c savedir.h \ - setenv.c sleep.c snprintf.c stat.c stat-macros.h stat-time.h \ - stdarg.in.h stdbool.in.h stddef.in.h stdint.in.h stdio-write.c \ - stdio.in.h stdlib.in.h stpcpy.c strcasecmp.c strncasecmp.c \ - strchrnul.c strchrnul.valgrind strdup.c streq.h strerror.c \ - string.in.h strings.in.h strndup.c strnlen.c strtoimax.c \ - strtol.c strtoll.c strtoul.c strtoull.c strtoumax.c \ - sys_stat.in.h sys_time.in.h sysexits.in.h tempname.c \ - tempname.h time.in.h time_r.c timespec.h unistd.in.h \ - dup-safer.c fd-safer.c pipe-safer.c unistd--.h unistd-safer.h \ - unitypes.h localcharset.h uniwidth.h uniwidth/cjk.h unlink.c \ - unlinkdir.c unlinkdir.h unlocked-io.h unsetenv.c utimens.c \ - 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 vsnprintf.c \ - $(top_srcdir)/build-aux/warn-on-use.h wchar.in.h wcrtomb.c \ - wctype.in.h wcwidth.c write.c xalloc.h xmalloc.c xgetcwd.c \ - xgetcwd.h xstrtol-error.c xstrtol.c xstrtol.h xstrtoul.c \ - xalloc.h + readlink.c readlinkat.c realloc.c regcomp.c regex.c regex.h \ + regex_internal.c regex_internal.h regexec.c rename.c \ + at-func2.c renameat.c rmdir.c rpmatch.c safe-read.c \ + safe-read.h safe-write.c safe-write.h same-inode.h save-cwd.c \ + save-cwd.h savedir.c savedir.h setenv.c sleep.c snprintf.c \ + stat.c stat-macros.h stat-time.h stdarg.in.h stdbool.in.h \ + stddef.in.h stdint.in.h stdio-write.c stdio.in.h stdlib.in.h \ + stpcpy.c strcasecmp.c strncasecmp.c strchrnul.c \ + strchrnul.valgrind strdup.c streq.h strerror.c string.in.h \ + strings.in.h strndup.c strnlen.c strtoimax.c strtol.c \ + strtoll.c strtoul.c strtoull.c strtoumax.c symlink.c \ + symlinkat.c sys_stat.in.h sys_time.in.h sysexits.in.h \ + tempname.c tempname.h time.in.h time_r.c timespec.h \ + unistd.in.h dup-safer.c fd-safer.c pipe-safer.c unistd--.h \ + unistd-safer.h unitypes.in.h localcharset.h uniwidth.in.h \ + uniwidth/cjk.h unlink.c unlinkdir.c unlinkdir.h unlocked-io.h \ + unsetenv.c utimens.c utimens.h utimensat.c asnprintf.c \ + float+.h printf-args.c printf-args.h printf-parse.c \ + printf-parse.h vasnprintf.c vasnprintf.h asprintf.c \ + vasprintf.c vsnprintf.c $(top_srcdir)/build-aux/warn-on-use.h \ + wchar.in.h wcrtomb.c wctype.in.h wcwidth.c write.c xalloc.h \ + xmalloc.c xgetcwd.c xgetcwd.h xstrtol-error.c xstrtol.c \ + xstrtol.h xstrtoul.c xalloc.h # The BUILT_SOURCES created by this Makefile snippet are not used via #include # statements but through direct file reference. Therefore this snippet must be @@ -966,71 +1024,85 @@ EXTRA_DIST = alloca.c alloca.in.h areadlink.h \ # present in all Makefile.am that need it. This is ensured by the applicability # 'all' defined above. BUILT_SOURCES = $(ALLOCA_H) arg-nonnull.h c++defs.h configmake.h \ - dirent.h $(ERRNO_H) fcntl.h $(FLOAT_H) $(FNMATCH_H) getdate.c \ - $(GETOPT_H) inttypes.h langinfo.h $(STDARG_H) $(STDBOOL_H) \ - $(STDDEF_H) $(STDINT_H) stdio.h stdlib.h string.h strings.h \ - sys/stat.h sys/time.h $(SYSEXITS_H) time.h unistd.h \ + dirent.h $(ERRNO_H) fcntl.h $(FLOAT_H) $(FNMATCH_H) \ + $(GETOPT_H) inttypes.h langinfo.h parse-datetime.c $(STDARG_H) \ + $(STDBOOL_H) $(STDDEF_H) $(STDINT_H) stdio.h stdlib.h string.h \ + strings.h sys/stat.h sys/time.h $(SYSEXITS_H) time.h unistd.h \ + $(LIBUNISTRING_UNITYPES_H) $(LIBUNISTRING_UNIWIDTH_H) \ warn-on-use.h wchar.h wctype.h SUFFIXES = .sed .sin MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t arg-nonnull.h \ arg-nonnull.h-t c++defs.h c++defs.h-t dirent.h dirent.h-t \ errno.h errno.h-t fcntl.h fcntl.h-t float.h float.h-t \ fnmatch.h fnmatch.h-t getopt.h getopt.h-t inttypes.h \ - inttypes.h-t langinfo.h langinfo.h-t stdarg.h stdarg.h-t \ - stdbool.h stdbool.h-t stddef.h stddef.h-t stdint.h stdint.h-t \ - stdio.h stdio.h-t stdlib.h stdlib.h-t string.h string.h-t \ - strings.h strings.h-t sys/stat.h sys/stat.h-t sys/time.h \ - sys/time.h-t sysexits.h sysexits.h-t time.h time.h-t unistd.h \ - unistd.h-t warn-on-use.h warn-on-use.h-t wchar.h wchar.h-t \ - wctype.h wctype.h-t + inttypes.h-t langinfo.h langinfo.h-t parse-datetime.c-t \ + stdarg.h stdarg.h-t stdbool.h stdbool.h-t stddef.h stddef.h-t \ + stdint.h stdint.h-t stdio.h stdio.h-t stdlib.h stdlib.h-t \ + string.h string.h-t strings.h strings.h-t sys/stat.h \ + sys/stat.h-t sys/time.h sys/time.h-t sysexits.h sysexits.h-t \ + time.h time.h-t unistd.h unistd.h-t unitypes.h unitypes.h-t \ + uniwidth.h uniwidth.h-t warn-on-use.h warn-on-use.h-t wchar.h \ + wchar.h-t wctype.h wctype.h-t MOSTLYCLEANDIRS = sys CLEANFILES = configmake.h configmake.h-t charset.alias ref-add.sed \ ref-del.sed DISTCLEANFILES = -MAINTAINERCLEANFILES = getdate.c -AM_CPPFLAGS = +MAINTAINERCLEANFILES = parse-datetime.c + +# This is for those projects which use "gettextize --intl" to put a source-code +# copy of libintl into their package. In such projects, every Makefile.am needs +# -I$(top_builddir)/intl, so that can be found in this directory. +# For the Makefile.ams in other directories it is the maintainer's +# responsibility; for the one from gnulib we do it here. +# This option has no effect when the user disables NLS (because then the intl +# directory contains no libintl.h file) or when the project does not use +# "gettextize --intl". +AM_CPPFLAGS = -I$(top_builddir)/intl AM_CFLAGS = -libgnu_a_SOURCES = areadlink-with-size.c argp.h argp-ba.c argp-eexst.c \ - argp-fmtstream.c argp-fmtstream.h argp-fs-xinl.c argp-help.c \ - argp-namefrob.h argp-parse.c argp-pin.c argp-pv.c argp-pvh.c \ - argp-xinl.c argp-version-etc.h argp-version-etc.c bitrotate.h \ - c-ctype.h c-ctype.c close-hook.c exitfail.c file-set.c \ - full-write.h full-write.c getdate.y gettext.h hash-pjw.h \ - hash-pjw.c hash-triple.c localcharset.h localcharset.c \ - malloca.c mbchar.c mbscasecmp.c mbuiter.h openat-die.c \ - priv-set.c progname.h progname.c size_max.h strnlen1.h \ - strnlen1.c uniwidth/width.c verify.h version-etc.h \ - version-etc.c version-etc-fsf.c xalloc-die.c xsize.h \ - xstrndup.h xstrndup.c xstrtoumax.c xvasprintf.h xvasprintf.c \ - xasprintf.c +libgnu_a_SOURCES = areadlink.c areadlinkat.c argp.h argp-ba.c \ + argp-eexst.c argp-fmtstream.c argp-fmtstream.h argp-fs-xinl.c \ + argp-help.c argp-namefrob.h argp-parse.c argp-pin.c argp-pv.c \ + argp-pvh.c argp-xinl.c argp-version-etc.h argp-version-etc.c \ + bitrotate.h c-ctype.h c-ctype.c close-hook.c exitfail.c \ + fdutimensat.c full-write.h full-write.c gettext.h imaxtostr.c \ + inttostr.c offtostr.c uinttostr.c umaxtostr.c localcharset.h \ + localcharset.c malloca.c mbchar.c mbscasecmp.c mbuiter.h \ + openat-die.c parse-datetime.y priv-set.c progname.h progname.c \ + size_max.h strnlen1.h strnlen1.c $(am__append_1) verify.h \ + version-etc.h version-etc.c version-etc-fsf.c xalloc-die.c \ + xsize.h xstrndup.h xstrndup.c xstrtoumax.c xvasprintf.h \ + xvasprintf.c xasprintf.c libgnu_a_LIBADD = $(gl_LIBOBJS) @ALLOCA@ libgnu_a_DEPENDENCIES = $(gl_LIBOBJS) @ALLOCA@ EXTRA_libgnu_a_SOURCES = alloca.c argmatch.c backupfile.c btowc.c \ - canonicalize.c chdir-long.c chown.c fchown-stub.c close.c \ - close-stream.c closeout.c opendir-safer.c dirfd.c basename.c \ - dirname.c stripslash.c basename-lgpl.c dirname-lgpl.c \ - stripslash.c dup2.c error.c exclude.c fchdir.c fclose.c \ - fcntl.c fdopendir.c openat-proc.c fileblocks.c fnmatch.c \ - fnmatch_loop.c fpending.c fseeko.c ftruncate.c getcwd.c \ - getdelim.c getdtablesize.c getline.c getopt.c getopt1.c \ - getpagesize.c gettime.c gettimeofday.c hash.c human.c \ - imaxtostr.c inttostr.c offtostr.c uinttostr.c umaxtostr.c \ - lchown.c lseek.c lstat.c malloc.c malloc.c mbrtowc.c mbsinit.c \ - mbsrtowcs-state.c mbsrtowcs.c memchr.c mempcpy.c memrchr.c \ - mkdir.c mkdtemp.c mktime.c modechange.c nl_langinfo.c \ + canonicalize-lgpl.c chdir-long.c chown.c fchown-stub.c \ + cloexec.c close.c close-stream.c closeout.c opendir-safer.c \ + dirfd.c basename.c dirname.c stripslash.c basename-lgpl.c \ + dirname-lgpl.c stripslash.c dup2.c error.c exclude.c fchdir.c \ + fclose.c fcntl.c fdopendir.c openat-proc.c fileblocks.c \ + filenamecat-lgpl.c fnmatch.c fnmatch_loop.c fpending.c \ + fseeko.c futimens.c getcwd.c getdelim.c getdtablesize.c \ + getline.c getopt.c getopt1.c getpagesize.c gettime.c \ + gettimeofday.c hash.c human.c anytostr.c lchown.c link.c \ + at-func2.c linkat.c lseek.c lstat.c malloc.c malloc.c \ + mbrtowc.c mbsinit.c mbsrtowcs-state.c mbsrtowcs.c memchr.c \ + mempcpy.c memrchr.c mkdir.c mkdtemp.c mkfifo.c mkfifoat.c \ + mknodat.c mknod.c mktime.c modechange.c nl_langinfo.c \ obstack.c open.c at-func.c fchmodat.c fchownat.c fstatat.c \ mkdirat.c openat-proc.c openat.c unlinkat.c quote.c quotearg.c \ - rawmemchr.c readlink.c realloc.c regcomp.c regex.c \ - regex_internal.c regexec.c rmdir.c rpmatch.c safe-read.c \ - safe-write.c same.c save-cwd.c savedir.c setenv.c sleep.c \ - snprintf.c stat.c stdio-write.c stpcpy.c strcasecmp.c \ - strncasecmp.c strchrnul.c strdup.c strerror.c strndup.c \ - strnlen.c strtoimax.c strtol.c strtoll.c strtoul.c strtoull.c \ - strtoumax.c tempname.c time_r.c dup-safer.c fd-safer.c \ + rawmemchr.c readlink.c readlinkat.c realloc.c regcomp.c \ + regex.c regex_internal.c regexec.c rename.c at-func2.c \ + renameat.c rmdir.c rpmatch.c safe-read.c safe-write.c \ + save-cwd.c savedir.c setenv.c sleep.c snprintf.c stat.c \ + stdio-write.c stpcpy.c strcasecmp.c strncasecmp.c strchrnul.c \ + strdup.c strerror.c strndup.c strnlen.c strtoimax.c strtol.c \ + strtoll.c strtoul.c strtoull.c strtoumax.c symlink.c \ + symlinkat.c tempname.c time_r.c dup-safer.c fd-safer.c \ pipe-safer.c unlink.c unlinkdir.c unsetenv.c utimens.c \ - asnprintf.c printf-args.c printf-parse.c vasnprintf.c \ - asprintf.c vasprintf.c vsnprintf.c wcrtomb.c wcwidth.c write.c \ - xmalloc.c xgetcwd.c xstrtol-error.c xstrtol.c xstrtoul.c + utimensat.c asnprintf.c printf-args.c printf-parse.c \ + vasnprintf.c asprintf.c vasprintf.c vsnprintf.c wcrtomb.c \ + wcwidth.c write.c xmalloc.c xgetcwd.c xstrtol-error.c \ + xstrtol.c xstrtoul.c ARG_NONNULL_H = arg-nonnull.h CXXDEFS_H = c++defs.h charset_alias = $(DESTDIR)$(libdir)/charset.alias @@ -1105,7 +1177,9 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/alloca.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alloca.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/areadlink-with-size.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/anytostr.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/areadlink.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/areadlinkat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argmatch.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-ba.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argp-eexst.Po@am__quote@ @@ -1121,14 +1195,16 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asnprintf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asprintf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/at-func.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/at-func2.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backupfile.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename-lgpl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btowc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-ctype.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/canonicalize.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/canonicalize-lgpl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chdir-long.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chown.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cloexec.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/close-hook.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/close-stream.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/close.Po@am__quote@ @@ -1149,17 +1225,17 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcntl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fd-safer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdopendir.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file-set.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdutimensat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fileblocks.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filenamecat-lgpl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch_loop.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fpending.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fseeko.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fstatat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ftruncate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/full-write.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/futimens.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getcwd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdelim.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdtablesize.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getline.Po@am__quote@ @@ -1168,13 +1244,13 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getpagesize.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gettime.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gettimeofday.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash-pjw.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash-triple.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/human.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/imaxtostr.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/inttostr.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lchown.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/link.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linkat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localcharset.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lseek.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lstat.Po@am__quote@ @@ -1192,6 +1268,10 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkdir.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkdirat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkdtemp.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkfifo.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkfifoat.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mknod.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mknodat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mktime.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/modechange.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nl_langinfo.Po@am__quote@ @@ -1202,6 +1282,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/openat-proc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/openat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opendir-safer.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/parse-datetime.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pipe-safer.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-args.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-parse.Po@am__quote@ @@ -1211,16 +1292,18 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quotearg.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rawmemchr.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readlink.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readlinkat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/realloc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regcomp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex_internal.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regexec.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rename.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/renameat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rmdir.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rpmatch.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/safe-read.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/safe-write.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/same.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/save-cwd.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/savedir.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setenv.Po@am__quote@ @@ -1244,6 +1327,8 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoul.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoull.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoumax.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/symlink.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/symlinkat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tempname.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time_r.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uinttostr.Po@am__quote@ @@ -1253,6 +1338,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unlinkdir.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unsetenv.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utimens.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utimensat.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasnprintf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasprintf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version-etc-fsf.Po@am__quote@ @@ -1524,7 +1610,7 @@ 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." - -rm -f getdate.c + -rm -f parse-datetime.c -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) clean: clean-recursive @@ -1704,16 +1790,19 @@ dirent.h: dirent.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_DIRENT_H''@|$(NEXT_DIRENT_H)|g' \ -e 's|@''GNULIB_DIRFD''@|$(GNULIB_DIRFD)|g' \ -e 's|@''GNULIB_FDOPENDIR''@|$(GNULIB_FDOPENDIR)|g' \ -e 's|@''GNULIB_SCANDIR''@|$(GNULIB_SCANDIR)|g' \ -e 's|@''GNULIB_ALPHASORT''@|$(GNULIB_ALPHASORT)|g' \ -e 's|@''HAVE_DECL_DIRFD''@|$(HAVE_DECL_DIRFD)|g' \ + -e 's|@''HAVE_DECL_FDOPENDIR''@|$(HAVE_DECL_FDOPENDIR)|g' \ -e 's|@''HAVE_FDOPENDIR''@|$(HAVE_FDOPENDIR)|g' \ -e 's|@''HAVE_SCANDIR''@|$(HAVE_SCANDIR)|g' \ -e 's|@''HAVE_ALPHASORT''@|$(HAVE_ALPHASORT)|g' \ -e 's|@''REPLACE_CLOSEDIR''@|$(REPLACE_CLOSEDIR)|g' \ + -e 's|@''REPLACE_DIRFD''@|$(REPLACE_DIRFD)|g' \ -e 's|@''REPLACE_FDOPENDIR''@|$(REPLACE_FDOPENDIR)|g' \ -e 's|@''REPLACE_OPENDIR''@|$(REPLACE_OPENDIR)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ @@ -1730,6 +1819,7 @@ errno.h: errno.in.h { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_ERRNO_H''@|$(NEXT_ERRNO_H)|g' \ -e 's|@''EMULTIHOP_HIDDEN''@|$(EMULTIHOP_HIDDEN)|g' \ -e 's|@''EMULTIHOP_VALUE''@|$(EMULTIHOP_VALUE)|g' \ @@ -1748,6 +1838,7 @@ fcntl.h: fcntl.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \ -e 's|@''GNULIB_FCNTL''@|$(GNULIB_FCNTL)|g' \ -e 's|@''GNULIB_OPEN''@|$(GNULIB_OPEN)|g' \ @@ -1771,6 +1862,7 @@ float.h: float.in.h { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_FLOAT_H''@|$(NEXT_FLOAT_H)|g' \ < $(srcdir)/float.in.h; \ } > $@-t && \ @@ -1794,6 +1886,7 @@ getopt.h: getopt.in.h $(ARG_NONNULL_H) sed -e 's|@''HAVE_GETOPT_H''@|$(HAVE_GETOPT_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_GETOPT_H''@|$(NEXT_GETOPT_H)|g' \ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ < $(srcdir)/getopt.in.h; \ @@ -1808,6 +1901,7 @@ inttypes.h: inttypes.in.h $(WARN_ON_USE_H) $(ARG_NONNULL_H) sed -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_INTTYPES_H''@|$(NEXT_INTTYPES_H)|g' \ -e 's/@''PRI_MACROS_BROKEN''@/$(PRI_MACROS_BROKEN)/g' \ -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \ @@ -1840,10 +1934,13 @@ langinfo.h: langinfo.in.h $(CXXDEFS_H) $(WARN_ON_USE_H) sed -e 's|@''HAVE_LANGINFO_H''@|$(HAVE_LANGINFO_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_LANGINFO_H''@|$(NEXT_LANGINFO_H)|g' \ -e 's|@''GNULIB_NL_LANGINFO''@|$(GNULIB_NL_LANGINFO)|g' \ -e 's|@''HAVE_LANGINFO_CODESET''@|$(HAVE_LANGINFO_CODESET)|g' \ + -e 's|@''HAVE_LANGINFO_T_FMT_AMPM''@|$(HAVE_LANGINFO_T_FMT_AMPM)|g' \ -e 's|@''HAVE_LANGINFO_ERA''@|$(HAVE_LANGINFO_ERA)|g' \ + -e 's|@''HAVE_LANGINFO_YESEXPR''@|$(HAVE_LANGINFO_YESEXPR)|g' \ -e 's|@''HAVE_NL_LANGINFO''@|$(HAVE_NL_LANGINFO)|g' \ -e 's|@''REPLACE_NL_LANGINFO''@|$(REPLACE_NL_LANGINFO)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ @@ -1911,6 +2008,18 @@ charset.alias: config.charset sed -e '/^#/d' -e 's/@''PACKAGE''@/$(PACKAGE)/g' $< > t-$@ && \ mv t-$@ $@ +# This rule overrides the Automake generated .y.c rule, to ensure that the +# parse-datetime.c file gets generated in the source directory, not in the +# build directory. +parse-datetime.c: parse-datetime.y + $(AM_V_GEN)$(SHELL) $(YLWRAP) $(srcdir)/parse-datetime.y \ + y.tab.c parse-datetime.c \ + y.tab.h parse-datetime.h \ + y.output parse-datetime.output \ + -- $(YACC) $(YFLAGS) $(AM_YFLAGS) && \ + mv parse-datetime.c parse-datetime.c-t && \ + mv parse-datetime.c-t $(srcdir)/parse-datetime.c + # We need the following in order to create when the system # doesn't have one that works with the given compiler. stdarg.h: stdarg.in.h @@ -1918,6 +2027,7 @@ stdarg.h: stdarg.in.h { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDARG_H''@|$(NEXT_STDARG_H)|g' \ < $(srcdir)/stdarg.in.h; \ } > $@-t && \ @@ -1939,6 +2049,7 @@ stddef.h: stddef.in.h { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDDEF_H''@|$(NEXT_STDDEF_H)|g' \ -e 's|@''HAVE_WCHAR_T''@|$(HAVE_WCHAR_T)|g' \ -e 's|@''REPLACE_NULL''@|$(REPLACE_NULL)|g' \ @@ -1954,6 +2065,7 @@ stdint.h: stdint.in.h sed -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDINT_H''@|$(NEXT_STDINT_H)|g' \ -e 's/@''HAVE_SYS_TYPES_H''@/$(HAVE_SYS_TYPES_H)/g' \ -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ @@ -1986,6 +2098,7 @@ stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDIO_H''@|$(NEXT_STDIO_H)|g' \ -e 's|@''GNULIB_DPRINTF''@|$(GNULIB_DPRINTF)|g' \ -e 's|@''GNULIB_FCLOSE''@|$(GNULIB_FCLOSE)|g' \ @@ -2019,6 +2132,7 @@ stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_SNPRINTF''@|$(GNULIB_SNPRINTF)|g' \ -e 's|@''GNULIB_SPRINTF_POSIX''@|$(GNULIB_SPRINTF_POSIX)|g' \ -e 's|@''GNULIB_STDIO_H_SIGPIPE''@|$(GNULIB_STDIO_H_SIGPIPE)|g' \ + -e 's|@''GNULIB_TMPFILE''@|$(GNULIB_TMPFILE)|g' \ -e 's|@''GNULIB_VASPRINTF''@|$(GNULIB_VASPRINTF)|g' \ -e 's|@''GNULIB_VDPRINTF''@|$(GNULIB_VDPRINTF)|g' \ -e 's|@''GNULIB_VFPRINTF''@|$(GNULIB_VFPRINTF)|g' \ @@ -2035,6 +2149,8 @@ stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_DECL_SNPRINTF''@|$(HAVE_DECL_SNPRINTF)|g' \ -e 's|@''HAVE_DECL_VSNPRINTF''@|$(HAVE_DECL_VSNPRINTF)|g' \ -e 's|@''HAVE_DPRINTF''@|$(HAVE_DPRINTF)|g' \ + -e 's|@''HAVE_FSEEKO''@|$(HAVE_FSEEKO)|g' \ + -e 's|@''HAVE_FTELLO''@|$(HAVE_FTELLO)|g' \ -e 's|@''HAVE_RENAMEAT''@|$(HAVE_RENAMEAT)|g' \ -e 's|@''HAVE_VASPRINTF''@|$(HAVE_VASPRINTF)|g' \ -e 's|@''HAVE_VDPRINTF''@|$(HAVE_VDPRINTF)|g' \ @@ -2061,12 +2177,14 @@ stdio.h: stdio.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''REPLACE_SNPRINTF''@|$(REPLACE_SNPRINTF)|g' \ -e 's|@''REPLACE_SPRINTF''@|$(REPLACE_SPRINTF)|g' \ -e 's|@''REPLACE_STDIO_WRITE_FUNCS''@|$(REPLACE_STDIO_WRITE_FUNCS)|g' \ + -e 's|@''REPLACE_TMPFILE''@|$(REPLACE_TMPFILE)|g' \ -e 's|@''REPLACE_VASPRINTF''@|$(REPLACE_VASPRINTF)|g' \ -e 's|@''REPLACE_VDPRINTF''@|$(REPLACE_VDPRINTF)|g' \ -e 's|@''REPLACE_VFPRINTF''@|$(REPLACE_VFPRINTF)|g' \ -e 's|@''REPLACE_VPRINTF''@|$(REPLACE_VPRINTF)|g' \ -e 's|@''REPLACE_VSNPRINTF''@|$(REPLACE_VSNPRINTF)|g' \ -e 's|@''REPLACE_VSPRINTF''@|$(REPLACE_VSPRINTF)|g' \ + -e 's|@''ASM_SYMBOL_PREFIX''@|$(ASM_SYMBOL_PREFIX)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ @@ -2080,18 +2198,22 @@ stdlib.h: stdlib.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STDLIB_H''@|$(NEXT_STDLIB_H)|g' \ + -e 's|@''GNULIB__EXIT''@|$(GNULIB__EXIT)|g' \ -e 's|@''GNULIB_ATOLL''@|$(GNULIB_ATOLL)|g' \ -e 's|@''GNULIB_CALLOC_POSIX''@|$(GNULIB_CALLOC_POSIX)|g' \ -e 's|@''GNULIB_CANONICALIZE_FILE_NAME''@|$(GNULIB_CANONICALIZE_FILE_NAME)|g' \ -e 's|@''GNULIB_GETLOADAVG''@|$(GNULIB_GETLOADAVG)|g' \ -e 's|@''GNULIB_GETSUBOPT''@|$(GNULIB_GETSUBOPT)|g' \ + -e 's|@''GNULIB_GRANTPT''@|$(GNULIB_GRANTPT)|g' \ -e 's|@''GNULIB_MALLOC_POSIX''@|$(GNULIB_MALLOC_POSIX)|g' \ -e 's|@''GNULIB_MKDTEMP''@|$(GNULIB_MKDTEMP)|g' \ -e 's|@''GNULIB_MKOSTEMP''@|$(GNULIB_MKOSTEMP)|g' \ -e 's|@''GNULIB_MKOSTEMPS''@|$(GNULIB_MKOSTEMPS)|g' \ -e 's|@''GNULIB_MKSTEMP''@|$(GNULIB_MKSTEMP)|g' \ -e 's|@''GNULIB_MKSTEMPS''@|$(GNULIB_MKSTEMPS)|g' \ + -e 's|@''GNULIB_PTSNAME''@|$(GNULIB_PTSNAME)|g' \ -e 's|@''GNULIB_PUTENV''@|$(GNULIB_PUTENV)|g' \ -e 's|@''GNULIB_RANDOM_R''@|$(GNULIB_RANDOM_R)|g' \ -e 's|@''GNULIB_REALLOC_POSIX''@|$(GNULIB_REALLOC_POSIX)|g' \ @@ -2101,20 +2223,23 @@ stdlib.h: stdlib.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_STRTOD''@|$(GNULIB_STRTOD)|g' \ -e 's|@''GNULIB_STRTOLL''@|$(GNULIB_STRTOLL)|g' \ -e 's|@''GNULIB_STRTOULL''@|$(GNULIB_STRTOULL)|g' \ + -e 's|@''GNULIB_SYSTEM_POSIX''@|$(GNULIB_SYSTEM_POSIX)|g' \ + -e 's|@''GNULIB_UNLOCKPT''@|$(GNULIB_UNLOCKPT)|g' \ -e 's|@''GNULIB_UNSETENV''@|$(GNULIB_UNSETENV)|g' \ + -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \ -e 's|@''HAVE_ATOLL''@|$(HAVE_ATOLL)|g' \ - -e 's|@''HAVE_CALLOC_POSIX''@|$(HAVE_CALLOC_POSIX)|g' \ -e 's|@''HAVE_CANONICALIZE_FILE_NAME''@|$(HAVE_CANONICALIZE_FILE_NAME)|g' \ -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \ -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \ - -e 's|@''HAVE_MALLOC_POSIX''@|$(HAVE_MALLOC_POSIX)|g' \ + -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \ -e 's|@''HAVE_MKDTEMP''@|$(HAVE_MKDTEMP)|g' \ -e 's|@''HAVE_MKOSTEMP''@|$(HAVE_MKOSTEMP)|g' \ -e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \ + -e 's|@''HAVE_MKSTEMP''@|$(HAVE_MKSTEMP)|g' \ -e 's|@''HAVE_MKSTEMPS''@|$(HAVE_MKSTEMPS)|g' \ + -e 's|@''HAVE_PTSNAME''@|$(HAVE_PTSNAME)|g' \ -e 's|@''HAVE_RANDOM_H''@|$(HAVE_RANDOM_H)|g' \ -e 's|@''HAVE_RANDOM_R''@|$(HAVE_RANDOM_R)|g' \ - -e 's|@''HAVE_REALLOC_POSIX''@|$(HAVE_REALLOC_POSIX)|g' \ -e 's|@''HAVE_REALPATH''@|$(HAVE_REALPATH)|g' \ -e 's|@''HAVE_RPMATCH''@|$(HAVE_RPMATCH)|g' \ -e 's|@''HAVE_SETENV''@|$(HAVE_SETENV)|g' \ @@ -2123,10 +2248,14 @@ stdlib.h: stdlib.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \ -e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \ -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \ + -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \ -e 's|@''HAVE_UNSETENV''@|$(HAVE_UNSETENV)|g' \ + -e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \ -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \ + -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \ -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|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_STRTOD''@|$(REPLACE_STRTOD)|g' \ @@ -2145,6 +2274,7 @@ string.h: string.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STRING_H''@|$(NEXT_STRING_H)|g' \ -e 's|@''GNULIB_MBSLEN''@|$(GNULIB_MBSLEN)|g' \ -e 's|@''GNULIB_MBSNLEN''@|$(GNULIB_MBSNLEN)|g' \ @@ -2169,6 +2299,7 @@ string.h: string.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_STPNCPY''@|$(GNULIB_STPNCPY)|g' \ -e 's|@''GNULIB_STRCHRNUL''@|$(GNULIB_STRCHRNUL)|g' \ -e 's|@''GNULIB_STRDUP''@|$(GNULIB_STRDUP)|g' \ + -e 's|@''GNULIB_STRNCAT''@|$(GNULIB_STRNCAT)|g' \ -e 's|@''GNULIB_STRNDUP''@|$(GNULIB_STRNDUP)|g' \ -e 's|@''GNULIB_STRNLEN''@|$(GNULIB_STRNLEN)|g' \ -e 's|@''GNULIB_STRPBRK''@|$(GNULIB_STRPBRK)|g' \ @@ -2181,6 +2312,7 @@ string.h: string.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_STRVERSCMP''@|$(GNULIB_STRVERSCMP)|g' \ < $(srcdir)/string.in.h | \ sed -e 's|@''HAVE_MBSLEN''@|$(HAVE_MBSLEN)|g' \ + -e 's|@''HAVE_MEMCHR''@|$(HAVE_MEMCHR)|g' \ -e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \ -e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \ -e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \ @@ -2195,16 +2327,18 @@ string.h: string.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_STRSEP''@|$(HAVE_STRSEP)|g' \ -e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \ -e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \ - -e 's|@''HAVE_DECL_STRERROR''@|$(HAVE_DECL_STRERROR)|g' \ -e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \ -e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \ + -e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \ -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \ -e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \ -e 's|@''REPLACE_STRCASESTR''@|$(REPLACE_STRCASESTR)|g' \ -e 's|@''REPLACE_STRDUP''@|$(REPLACE_STRDUP)|g' \ -e 's|@''REPLACE_STRSTR''@|$(REPLACE_STRSTR)|g' \ -e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \ + -e 's|@''REPLACE_STRNCAT''@|$(REPLACE_STRNCAT)|g' \ -e 's|@''REPLACE_STRNDUP''@|$(REPLACE_STRNDUP)|g' \ + -e 's|@''REPLACE_STRNLEN''@|$(REPLACE_STRNLEN)|g' \ -e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \ -e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \ -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \ @@ -2222,6 +2356,7 @@ strings.h: strings.in.h $(WARN_ON_USE_H) $(ARG_NONNULL_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_STRINGS_H''@|$(NEXT_STRINGS_H)|g' \ -e 's|@''HAVE_STRCASECMP''@|$(HAVE_STRCASECMP)|g' \ -e 's|@''HAVE_DECL_STRNCASECMP''@|$(HAVE_DECL_STRNCASECMP)|g' \ @@ -2239,6 +2374,7 @@ sys/stat.h: sys_stat.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \ -e 's|@''GNULIB_FCHMODAT''@|$(GNULIB_FCHMODAT)|g' \ -e 's|@''GNULIB_FSTATAT''@|$(GNULIB_FSTATAT)|g' \ @@ -2288,6 +2424,7 @@ sys/time.h: sys_time.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) sed -e 's/@''HAVE_SYS_TIME_H''@/$(HAVE_SYS_TIME_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_SYS_TIME_H''@|$(NEXT_SYS_TIME_H)|g' \ -e 's/@''GNULIB_GETTIMEOFDAY''@/$(GNULIB_GETTIMEOFDAY)/g' \ -e 's/@''HAVE_GETTIMEOFDAY''@/$(HAVE_GETTIMEOFDAY)/g' \ @@ -2308,6 +2445,7 @@ sysexits.h: sysexits.in.h sed -e 's|@''HAVE_SYSEXITS_H''@|$(HAVE_SYSEXITS_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_SYSEXITS_H''@|$(NEXT_SYSEXITS_H)|g' \ < $(srcdir)/sysexits.in.h; \ } > $@-t && \ @@ -2320,16 +2458,22 @@ time.h: time.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_TIME_H''@|$(NEXT_TIME_H)|g' \ -e 's|@''GNULIB_MKTIME''@|$(GNULIB_MKTIME)|g' \ -e 's|@''GNULIB_NANOSLEEP''@|$(GNULIB_NANOSLEEP)|g' \ -e 's|@''GNULIB_STRPTIME''@|$(GNULIB_STRPTIME)|g' \ -e 's|@''GNULIB_TIMEGM''@|$(GNULIB_TIMEGM)|g' \ + -e 's|@''GNULIB_TIME_R''@|$(GNULIB_TIME_R)|g' \ + -e 's|@''HAVE_LOCALTIME_R''@|$(HAVE_LOCALTIME_R)|g' \ + -e 's|@''HAVE_NANOSLEEP''@|$(HAVE_NANOSLEEP)|g' \ + -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \ + -e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \ -e 's|@''REPLACE_LOCALTIME_R''@|$(REPLACE_LOCALTIME_R)|g' \ -e 's|@''REPLACE_MKTIME''@|$(REPLACE_MKTIME)|g' \ -e 's|@''REPLACE_NANOSLEEP''@|$(REPLACE_NANOSLEEP)|g' \ - -e 's|@''REPLACE_STRPTIME''@|$(REPLACE_STRPTIME)|g' \ -e 's|@''REPLACE_TIMEGM''@|$(REPLACE_TIMEGM)|g' \ + -e 's|@''PTHREAD_H_DEFINES_STRUCT_TIMESPEC''@|$(PTHREAD_H_DEFINES_STRUCT_TIMESPEC)|g' \ -e 's|@''SYS_TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(SYS_TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ -e 's|@''TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ @@ -2347,6 +2491,7 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) sed -e 's|@''HAVE_UNISTD_H''@|$(HAVE_UNISTD_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_UNISTD_H''@|$(NEXT_UNISTD_H)|g' \ -e 's|@''GNULIB_CHOWN''@|$(GNULIB_CHOWN)|g' \ -e 's|@''GNULIB_CLOSE''@|$(GNULIB_CLOSE)|g' \ @@ -2374,12 +2519,14 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''GNULIB_LSEEK''@|$(GNULIB_LSEEK)|g' \ -e 's|@''GNULIB_PIPE2''@|$(GNULIB_PIPE2)|g' \ -e 's|@''GNULIB_PREAD''@|$(GNULIB_PREAD)|g' \ + -e 's|@''GNULIB_PWRITE''@|$(GNULIB_PWRITE)|g' \ -e 's|@''GNULIB_READLINK''@|$(GNULIB_READLINK)|g' \ -e 's|@''GNULIB_READLINKAT''@|$(GNULIB_READLINKAT)|g' \ -e 's|@''GNULIB_RMDIR''@|$(GNULIB_RMDIR)|g' \ -e 's|@''GNULIB_SLEEP''@|$(GNULIB_SLEEP)|g' \ -e 's|@''GNULIB_SYMLINK''@|$(GNULIB_SYMLINK)|g' \ -e 's|@''GNULIB_SYMLINKAT''@|$(GNULIB_SYMLINKAT)|g' \ + -e 's|@''GNULIB_TTYNAME_R''@|$(GNULIB_TTYNAME_R)|g' \ -e 's|@''GNULIB_UNISTD_H_GETOPT''@|$(GNULIB_UNISTD_H_GETOPT)|g' \ -e 's|@''GNULIB_UNISTD_H_SIGPIPE''@|$(GNULIB_UNISTD_H_SIGPIPE)|g' \ -e 's|@''GNULIB_UNLINK''@|$(GNULIB_UNLINK)|g' \ @@ -2392,6 +2539,7 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_DUP3''@|$(HAVE_DUP3)|g' \ -e 's|@''HAVE_EUIDACCESS''@|$(HAVE_EUIDACCESS)|g' \ -e 's|@''HAVE_FACCESSAT''@|$(HAVE_FACCESSAT)|g' \ + -e 's|@''HAVE_FCHDIR''@|$(HAVE_FCHDIR)|g' \ -e 's|@''HAVE_FCHOWNAT''@|$(HAVE_FCHOWNAT)|g' \ -e 's|@''HAVE_FSYNC''@|$(HAVE_FSYNC)|g' \ -e 's|@''HAVE_FTRUNCATE''@|$(HAVE_FTRUNCATE)|g' \ @@ -2401,28 +2549,30 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''HAVE_GETHOSTNAME''@|$(HAVE_GETHOSTNAME)|g' \ -e 's|@''HAVE_GETLOGIN''@|$(HAVE_GETLOGIN)|g' \ -e 's|@''HAVE_GETPAGESIZE''@|$(HAVE_GETPAGESIZE)|g' \ - -e 's|@''HAVE_GETUSERSHELL''@|$(HAVE_GETUSERSHELL)|g' \ -e 's|@''HAVE_LCHOWN''@|$(HAVE_LCHOWN)|g' \ -e 's|@''HAVE_LINK''@|$(HAVE_LINK)|g' \ -e 's|@''HAVE_LINKAT''@|$(HAVE_LINKAT)|g' \ -e 's|@''HAVE_PIPE2''@|$(HAVE_PIPE2)|g' \ -e 's|@''HAVE_PREAD''@|$(HAVE_PREAD)|g' \ + -e 's|@''HAVE_PWRITE''@|$(HAVE_PWRITE)|g' \ -e 's|@''HAVE_READLINK''@|$(HAVE_READLINK)|g' \ -e 's|@''HAVE_READLINKAT''@|$(HAVE_READLINKAT)|g' \ -e 's|@''HAVE_SLEEP''@|$(HAVE_SLEEP)|g' \ -e 's|@''HAVE_SYMLINK''@|$(HAVE_SYMLINK)|g' \ -e 's|@''HAVE_SYMLINKAT''@|$(HAVE_SYMLINKAT)|g' \ + -e 's|@''HAVE_TTYNAME_R''@|$(HAVE_TTYNAME_R)|g' \ -e 's|@''HAVE_UNLINKAT''@|$(HAVE_UNLINKAT)|g' \ -e 's|@''HAVE_USLEEP''@|$(HAVE_USLEEP)|g' \ -e 's|@''HAVE_DECL_ENVIRON''@|$(HAVE_DECL_ENVIRON)|g' \ -e 's|@''HAVE_DECL_GETLOGIN_R''@|$(HAVE_DECL_GETLOGIN_R)|g' \ + -e 's|@''HAVE_DECL_GETPAGESIZE''@|$(HAVE_DECL_GETPAGESIZE)|g' \ + -e 's|@''HAVE_DECL_GETUSERSHELL''@|$(HAVE_DECL_GETUSERSHELL)|g' \ -e 's|@''HAVE_OS_H''@|$(HAVE_OS_H)|g' \ -e 's|@''HAVE_SYS_PARAM_H''@|$(HAVE_SYS_PARAM_H)|g' \ -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \ -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \ -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \ -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \ - -e 's|@''REPLACE_FCHDIR''@|$(REPLACE_FCHDIR)|g' \ -e 's|@''REPLACE_FCHOWNAT''@|$(REPLACE_FCHOWNAT)|g' \ -e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \ -e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \ @@ -2432,10 +2582,12 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e 's|@''REPLACE_LINKAT''@|$(REPLACE_LINKAT)|g' \ -e 's|@''REPLACE_LSEEK''@|$(REPLACE_LSEEK)|g' \ -e 's|@''REPLACE_PREAD''@|$(REPLACE_PREAD)|g' \ + -e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \ -e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \ -e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \ -e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \ -e 's|@''REPLACE_SYMLINK''@|$(REPLACE_SYMLINK)|g' \ + -e 's|@''REPLACE_TTYNAME_R''@|$(REPLACE_TTYNAME_R)|g' \ -e 's|@''REPLACE_UNLINK''@|$(REPLACE_UNLINK)|g' \ -e 's|@''REPLACE_UNLINKAT''@|$(REPLACE_UNLINKAT)|g' \ -e 's|@''REPLACE_USLEEP''@|$(REPLACE_USLEEP)|g' \ @@ -2447,6 +2599,20 @@ unistd.h: unistd.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ } > $@-t && \ mv $@-t $@ + +unitypes.h: unitypes.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/unitypes.in.h; \ + } > $@-t && \ + mv -f $@-t $@ + +uniwidth.h: uniwidth.in.h + $(AM_V_GEN)rm -f $@-t $@ && \ + { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ + cat $(srcdir)/uniwidth.in.h; \ + } > $@-t && \ + mv -f $@-t $@ # The warn-on-use.h that gets inserted into generated .h files is the same as # build-aux/warn-on-use.h, except that it has the copyright header cut off. warn-on-use.h: $(top_srcdir)/build-aux/warn-on-use.h @@ -2463,6 +2629,7 @@ wchar.h: wchar.in.h $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_WCHAR_H''@|$(NEXT_WCHAR_H)|g' \ -e 's|@''HAVE_WCHAR_H''@|$(HAVE_WCHAR_H)|g' \ -e 's|@''GNULIB_BTOWC''@|$(GNULIB_BTOWC)|g' \ @@ -2515,9 +2682,12 @@ wctype.h: wctype.in.h $(CXXDEFS_H) $(WARN_ON_USE_H) sed -e 's/@''HAVE_WCTYPE_H''@/$(HAVE_WCTYPE_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -e 's|@''NEXT_WCTYPE_H''@|$(NEXT_WCTYPE_H)|g' \ + -e 's/@''HAVE_ISWBLANK''@/$(HAVE_ISWBLANK)/g' \ -e 's/@''HAVE_ISWCNTRL''@/$(HAVE_ISWCNTRL)/g' \ -e 's/@''HAVE_WINT_T''@/$(HAVE_WINT_T)/g' \ + -e 's/@''REPLACE_ISWBLANK''@/$(REPLACE_ISWBLANK)/g' \ -e 's/@''REPLACE_ISWCNTRL''@/$(REPLACE_ISWCNTRL)/g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ diff --git a/gnu/anytostr.c b/gnu/anytostr.c new file mode 100644 index 0000000..902e7a4 --- /dev/null +++ b/gnu/anytostr.c @@ -0,0 +1,56 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* anytostr.c -- convert integers to printable strings + + Copyright (C) 2001, 2006, 2008, 2009, 2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Paul Eggert */ + +#include + +#include "inttostr.h" +#include "verify.h" + +/* Convert I to a printable string in BUF, which must be at least + INT_BUFSIZE_BOUND (INTTYPE) bytes long. Return the address of the + printable string, which need not start at BUF. */ + +char * __attribute_warn_unused_result__ +anytostr (inttype i, char *buf) +{ + verify (TYPE_SIGNED (inttype) == inttype_is_signed); + char *p = buf + INT_STRLEN_BOUND (inttype); + *p = 0; + +#if inttype_is_signed + if (i < 0) + { + do + *--p = '0' - i % 10; + while ((i /= 10) != 0); + + *--p = '-'; + } + else +#endif + { + do + *--p = '0' + i % 10; + while ((i /= 10) != 0); + } + + return p; +} diff --git a/gnu/areadlink-with-size.c b/gnu/areadlink-with-size.c deleted file mode 100644 index 8370184..0000000 --- a/gnu/areadlink-with-size.c +++ /dev/null @@ -1,106 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* readlink wrapper to return the link name in malloc'd storage. - Unlike xreadlink and xreadlink_with_size, don't ever call exit. - - Copyright (C) 2001, 2003-2007, 2009-2010 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Jim Meyering */ - -#include - -#include "areadlink.h" - -#include -#include -#include -#include -#include - -#ifndef SSIZE_MAX -# define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2)) -#endif - -/* SYMLINK_MAX is used only for an initial memory-allocation sanity - check, so it's OK to guess too small on hosts where there is no - arbitrary limit to symbolic link length. */ -#ifndef SYMLINK_MAX -# define SYMLINK_MAX 1024 -#endif - -#define MAXSIZE (SIZE_MAX < SSIZE_MAX ? SIZE_MAX : SSIZE_MAX) - -/* Call readlink to get the symbolic link value of FILE. - SIZE is a hint as to how long the link is expected to be; - typically it is taken from st_size. It need not be correct. - Return a pointer to that NUL-terminated string in malloc'd storage. - If readlink fails, malloc fails, or if the link value is longer - than SSIZE_MAX, return NULL (caller may use errno to diagnose). */ - -char * -areadlink_with_size (char const *file, size_t size) -{ - /* Some buggy file systems report garbage in st_size. Defend - against them by ignoring outlandish st_size values in the initial - memory allocation. */ - size_t symlink_max = SYMLINK_MAX; - size_t INITIAL_LIMIT_BOUND = 8 * 1024; - size_t initial_limit = (symlink_max < INITIAL_LIMIT_BOUND - ? symlink_max + 1 - : INITIAL_LIMIT_BOUND); - - /* The initial buffer size for the link value. */ - size_t buf_size = size < initial_limit ? size + 1 : initial_limit; - - while (1) - { - ssize_t r; - size_t link_length; - char *buffer = malloc (buf_size); - - if (buffer == NULL) - return NULL; - r = readlink (file, buffer, buf_size); - link_length = r; - - /* On AIX 5L v5.3 and HP-UX 11i v2 04/09, readlink returns -1 - with errno == ERANGE if the buffer is too small. */ - if (r < 0 && errno != ERANGE) - { - int saved_errno = errno; - free (buffer); - errno = saved_errno; - return NULL; - } - - if (link_length < buf_size) - { - buffer[link_length] = 0; - return buffer; - } - - free (buffer); - if (buf_size <= MAXSIZE / 2) - buf_size *= 2; - else if (buf_size < MAXSIZE) - buf_size = MAXSIZE; - else - { - errno = ENOMEM; - return NULL; - } - } -} diff --git a/gnu/areadlink.c b/gnu/areadlink.c new file mode 100644 index 0000000..f1c5d7d --- /dev/null +++ b/gnu/areadlink.c @@ -0,0 +1,133 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* areadlink.c -- readlink wrapper to return the link name in malloc'd storage + Unlike xreadlink and xreadlink_with_size, don't ever call exit. + + Copyright (C) 2001, 2003-2007, 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Jim Meyering + and Bruno Haible . */ + +#include + +/* Specification. */ +#include "areadlink.h" + +#include +#include +#include +#include +#include +#include + +#ifndef SSIZE_MAX +# define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2)) +#endif + +/* Use the system functions, not the gnulib overrides in this file. */ +#undef malloc +#undef realloc + +/* The initial buffer size for the link value. A power of 2 + detects arithmetic overflow earlier, but is not required. */ +enum { + INITIAL_BUF_SIZE = 1024 +}; + +/* Call readlink to get the symbolic link value of FILENAME. + Return a pointer to that NUL-terminated string in malloc'd storage. + If readlink fails, return NULL and set errno. + If realloc fails, or if the link value is longer than SIZE_MAX :-), + return NULL and set errno to ENOMEM. */ + +char * +areadlink (char const *filename) +{ + /* Allocate the initial buffer on the stack. This way, in the common + case of a symlink of small size, we get away with a single small malloc() + instead of a big malloc() followed by a shrinking realloc(). */ + char initial_buf[INITIAL_BUF_SIZE]; + + char *buffer = initial_buf; + size_t buf_size = sizeof initial_buf; + + while (1) + { + /* Attempt to read the link into the current buffer. */ + ssize_t link_length = readlink (filename, buffer, buf_size); + + /* On AIX 5L v5.3 and HP-UX 11i v2 04/09, readlink returns -1 + with errno == ERANGE if the buffer is too small. */ + if (link_length < 0 && errno != ERANGE) + { + if (buffer != initial_buf) + { + int saved_errno = errno; + free (buffer); + errno = saved_errno; + } + return NULL; + } + + if ((size_t) link_length < buf_size) + { + buffer[link_length++] = '\0'; + + /* Return it in a chunk of memory as small as possible. */ + if (buffer == initial_buf) + { + buffer = (char *) malloc (link_length); + if (buffer == NULL) + { + /* It's easier to set errno to ENOMEM than to rely on the + 'malloc-posix' gnulib module. */ + errno = ENOMEM; + return NULL; + } + memcpy (buffer, initial_buf, link_length); + } + else + { + /* Shrink buffer before returning it. */ + if ((size_t) link_length < buf_size) + { + char *smaller_buffer = (char *) realloc (buffer, link_length); + + if (smaller_buffer != NULL) + buffer = smaller_buffer; + } + } + return buffer; + } + + if (buffer != initial_buf) + free (buffer); + buf_size *= 2; + if (SSIZE_MAX < buf_size || (SIZE_MAX / 2 < SSIZE_MAX && buf_size == 0)) + { + errno = ENOMEM; + return NULL; + } + buffer = (char *) malloc (buf_size); + if (buffer == NULL) + { + /* It's easier to set errno to ENOMEM than to rely on the + 'malloc-posix' gnulib module. */ + errno = ENOMEM; + return NULL; + } + } +} diff --git a/gnu/areadlinkat.c b/gnu/areadlinkat.c new file mode 100644 index 0000000..47fd1ba --- /dev/null +++ b/gnu/areadlinkat.c @@ -0,0 +1,147 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* areadlinkat.c -- readlinkat wrapper to return malloc'd link name + Unlike xreadlinkat, only call exit on failure to change directory. + + Copyright (C) 2001, 2003-2007, 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Jim Meyering , + and Bruno Haible , + and Eric Blake . */ + +#include + +/* Specification. */ +#include "areadlink.h" + +#include +#include +#include +#include +#include +#include + +#ifndef SSIZE_MAX +# define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2)) +#endif + +#if HAVE_READLINKAT + +/* The initial buffer size for the link value. A power of 2 + detects arithmetic overflow earlier, but is not required. */ +enum { + INITIAL_BUF_SIZE = 1024 +}; + +/* Call readlinkat to get the symbolic link value of FILENAME relative to FD. + Return a pointer to that NUL-terminated string in malloc'd storage. + If readlinkat fails, return NULL and set errno (although failure to + change directory will issue a diagnostic and exit). + If realloc fails, or if the link value is longer than SIZE_MAX :-), + return NULL and set errno to ENOMEM. */ + +char * +areadlinkat (int fd, char const *filename) +{ + /* Allocate the initial buffer on the stack. This way, in the common + case of a symlink of small size, we get away with a single small malloc() + instead of a big malloc() followed by a shrinking realloc(). */ + char initial_buf[INITIAL_BUF_SIZE]; + + char *buffer = initial_buf; + size_t buf_size = sizeof initial_buf; + + while (1) + { + /* Attempt to read the link into the current buffer. */ + ssize_t link_length = readlinkat (fd, filename, buffer, buf_size); + + /* On AIX 5L v5.3 and HP-UX 11i v2 04/09, readlink returns -1 + with errno == ERANGE if the buffer is too small. */ + if (link_length < 0 && errno != ERANGE) + { + if (buffer != initial_buf) + { + int saved_errno = errno; + free (buffer); + errno = saved_errno; + } + return NULL; + } + + if ((size_t) link_length < buf_size) + { + buffer[link_length++] = '\0'; + + /* Return it in a chunk of memory as small as possible. */ + if (buffer == initial_buf) + { + buffer = (char *) malloc (link_length); + if (buffer == NULL) + /* errno is ENOMEM. */ + return NULL; + memcpy (buffer, initial_buf, link_length); + } + else + { + /* Shrink buffer before returning it. */ + if ((size_t) link_length < buf_size) + { + char *smaller_buffer = (char *) realloc (buffer, link_length); + + if (smaller_buffer != NULL) + buffer = smaller_buffer; + } + } + return buffer; + } + + if (buffer != initial_buf) + free (buffer); + buf_size *= 2; + if (SSIZE_MAX < buf_size || (SIZE_MAX / 2 < SSIZE_MAX && buf_size == 0)) + { + errno = ENOMEM; + return NULL; + } + buffer = (char *) malloc (buf_size); + if (buffer == NULL) + /* errno is ENOMEM. */ + return NULL; + } +} + +#else /* !HAVE_READLINKAT */ + +/* It is more efficient to change directories only once and call + areadlink, rather than repeatedly call the replacement + readlinkat. */ + +# define AT_FUNC_NAME areadlinkat +# define AT_FUNC_F1 areadlink +# define AT_FUNC_POST_FILE_PARAM_DECLS /* empty */ +# define AT_FUNC_POST_FILE_ARGS /* empty */ +# define AT_FUNC_RESULT char * +# define AT_FUNC_FAIL NULL +# include "at-func.c" +# undef AT_FUNC_NAME +# undef AT_FUNC_F1 +# undef AT_FUNC_POST_FILE_PARAM_DECLS +# undef AT_FUNC_POST_FILE_ARGS +# undef AT_FUNC_RESULT +# undef AT_FUNC_FAIL + +#endif /* !HAVE_READLINKAT */ diff --git a/gnu/argp-help.c b/gnu/argp-help.c index 09bec84..ab1262a 100644 --- a/gnu/argp-help.c +++ b/gnu/argp-help.c @@ -766,7 +766,7 @@ hol_entry_cmp (const struct hol_entry *entry1, else /* Both entries are in clusters, we can just compare the clusters. */ return (rc = hol_cluster_cmp (entry1->cluster, entry2->cluster)) ? - rc : HOL_ENTRY_PTRCMP(entry1, entry2); + rc : HOL_ENTRY_PTRCMP (entry1, entry2); } else if (group1 == group2) /* The entries are both in the same cluster and group, so compare them @@ -791,7 +791,7 @@ hol_entry_cmp (const struct hol_entry *entry1, else if (!short1 && !short2 && long1 && long2) /* Only long options. */ return (rc = __strcasecmp (long1, long2)) ? - rc : HOL_ENTRY_PTRCMP(entry1, entry2); + rc : HOL_ENTRY_PTRCMP (entry1, entry2); else /* Compare short/short, long/short, short/long, using the first character of long options. Entries without *any* valid @@ -807,14 +807,14 @@ hol_entry_cmp (const struct hol_entry *entry1, /* Compare ignoring case, except when the options are both the same letter, in which case lower-case always comes first. */ return lower_cmp ? lower_cmp : - (rc = first2 - first1) ? - rc : HOL_ENTRY_PTRCMP(entry1, entry2); + (rc = first2 - first1) ? + rc : HOL_ENTRY_PTRCMP (entry1, entry2); } } else /* Within the same cluster, but not the same group, so just compare groups. */ - return group_cmp (group1, group2, HOL_ENTRY_PTRCMP(entry1, entry2)); + return group_cmp (group1, group2, HOL_ENTRY_PTRCMP (entry1, entry2)); } /* Version of hol_entry_cmp with correct signature for qsort. */ diff --git a/gnu/argp-namefrob.h b/gnu/argp-namefrob.h index 67d36b9..13b15a1 100644 --- a/gnu/argp-namefrob.h +++ b/gnu/argp-namefrob.h @@ -146,7 +146,7 @@ #if defined GNULIB_ARGP_DISABLE_DIRNAME # define __argp_base_name(arg) arg #elif defined GNULIB_ARGP_EXTERN_BASENAME -extern char *__argp_base_name(const char *arg); +extern char *__argp_base_name (const char *arg); #else # include "dirname.h" # define __argp_base_name last_component diff --git a/gnu/at-func2.c b/gnu/at-func2.c new file mode 100644 index 0000000..4150117 --- /dev/null +++ b/gnu/at-func2.c @@ -0,0 +1,284 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Define an at-style functions like linkat or renameat. + Copyright (C) 2006, 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Jim Meyering and Eric Blake */ + +#include + +#include "openat-priv.h" + +#include +#include +#include +#include + +#include "dirname.h" /* solely for definition of IS_ABSOLUTE_FILE_NAME */ +#include "filenamecat.h" +#include "openat.h" +#include "same-inode.h" +#include "save-cwd.h" + +/* Call FUNC to operate on a pair of files, where FILE1 is relative to FD1, + and FILE2 is relative to FD2. If possible, do it without changing the + working directory. Otherwise, resort to using save_cwd/fchdir, + FUNC, restore_cwd (up to two times). If either the save_cwd or the + restore_cwd fails, then give a diagnostic and exit nonzero. */ +int +at_func2 (int fd1, char const *file1, + int fd2, char const *file2, + int (*func) (char const *file1, char const *file2)) +{ + struct saved_cwd saved_cwd; + int saved_errno; + int err; + char *file1_alt; + char *file2_alt; + struct stat st1; + struct stat st2; + + /* There are 16 possible scenarios, based on whether an fd is + AT_FDCWD or real, and whether a file is absolute or relative: + + fd1 file1 fd2 file2 action + 0 cwd abs cwd abs direct call + 1 cwd abs cwd rel direct call + 2 cwd abs fd abs direct call + 3 cwd abs fd rel chdir to fd2 + 4 cwd rel cwd abs direct call + 5 cwd rel cwd rel direct call + 6 cwd rel fd abs direct call + 7 cwd rel fd rel convert file1 to abs, then case 3 + 8 fd abs cwd abs direct call + 9 fd abs cwd rel direct call + 10 fd abs fd abs direct call + 11 fd abs fd rel chdir to fd2 + 12 fd rel cwd abs chdir to fd1 + 13 fd rel cwd rel convert file2 to abs, then case 12 + 14 fd rel fd abs chdir to fd1 + 15a fd1 rel fd1 rel chdir to fd1 + 15b fd1 rel fd2 rel chdir to fd1, then case 7 + + Try some optimizations to reduce fd to AT_FDCWD, or to at least + avoid converting an absolute name or doing a double chdir. */ + + if ((fd1 == AT_FDCWD || IS_ABSOLUTE_FILE_NAME (file1)) + && (fd2 == AT_FDCWD || IS_ABSOLUTE_FILE_NAME (file2))) + return func (file1, file2); /* Case 0-2, 4-6, 8-10. */ + + /* If /proc/self/fd works, we don't need any stat or chdir. */ + { + char proc_buf1[OPENAT_BUFFER_SIZE]; + char *proc_file1 = ((fd1 == AT_FDCWD || IS_ABSOLUTE_FILE_NAME (file1)) + ? (char *) file1 + : openat_proc_name (proc_buf1, fd1, file1)); + if (proc_file1) + { + char proc_buf2[OPENAT_BUFFER_SIZE]; + char *proc_file2 = ((fd2 == AT_FDCWD || IS_ABSOLUTE_FILE_NAME (file2)) + ? (char *) file2 + : openat_proc_name (proc_buf2, fd2, file2)); + if (proc_file2) + { + int proc_result = func (proc_file1, proc_file2); + int proc_errno = errno; + if (proc_file1 != proc_buf1 && proc_file1 != file1) + free (proc_file1); + if (proc_file2 != proc_buf2 && proc_file2 != file2) + free (proc_file2); + /* If the syscall succeeds, or if it fails with an unexpected + errno value, then return right away. Otherwise, fall through + and resort to using save_cwd/restore_cwd. */ + if (0 <= proc_result) + return proc_result; + if (! EXPECTED_ERRNO (proc_errno)) + { + errno = proc_errno; + return proc_result; + } + } + else if (proc_file1 != proc_buf1 && proc_file1 != file1) + free (proc_file1); + } + } + + /* Cases 3, 7, 11-15 remain. Time to normalize directory fds, if + possible. */ + if (IS_ABSOLUTE_FILE_NAME (file1)) + fd1 = AT_FDCWD; /* Case 11 reduced to 3. */ + else if (IS_ABSOLUTE_FILE_NAME (file2)) + fd2 = AT_FDCWD; /* Case 14 reduced to 12. */ + + /* Cases 3, 7, 12, 13, 15 remain. */ + + if (fd1 == AT_FDCWD) /* Cases 3, 7. */ + { + if (stat (".", &st1) == -1 || fstat (fd2, &st2) == -1) + return -1; + if (!S_ISDIR (st2.st_mode)) + { + errno = ENOTDIR; + return -1; + } + if (SAME_INODE (st1, st2)) /* Reduced to cases 1, 5. */ + return func (file1, file2); + } + else if (fd2 == AT_FDCWD) /* Cases 12, 13. */ + { + if (stat (".", &st2) == -1 || fstat (fd1, &st1) == -1) + return -1; + if (!S_ISDIR (st1.st_mode)) + { + errno = ENOTDIR; + return -1; + } + if (SAME_INODE (st1, st2)) /* Reduced to cases 4, 5. */ + return func (file1, file2); + } + else if (fd1 != fd2) /* Case 15b. */ + { + if (fstat (fd1, &st1) == -1 || fstat (fd2, &st2) == -1) + return -1; + if (!S_ISDIR (st1.st_mode) || !S_ISDIR (st2.st_mode)) + { + errno = ENOTDIR; + return -1; + } + if (SAME_INODE (st1, st2)) /* Reduced to case 15a. */ + { + fd2 = fd1; + if (stat (".", &st1) == 0 && SAME_INODE (st1, st2)) + return func (file1, file2); /* Further reduced to case 5. */ + } + } + else /* Case 15a. */ + { + if (fstat (fd1, &st1) == -1) + return -1; + if (!S_ISDIR (st1.st_mode)) + { + errno = ENOTDIR; + return -1; + } + if (stat (".", &st2) == 0 && SAME_INODE (st1, st2)) + return func (file1, file2); /* Reduced to case 5. */ + } + + /* Cases 3, 7, 12, 13, 15a, 15b remain. With all reductions in + place, it is time to start changing directories. */ + + if (save_cwd (&saved_cwd) != 0) + openat_save_fail (errno); + + if (fd1 != AT_FDCWD && fd2 != AT_FDCWD && fd1 != fd2) /* Case 15b. */ + { + if (fchdir (fd1) != 0) + { + saved_errno = errno; + free_cwd (&saved_cwd); + errno = saved_errno; + return -1; + } + fd1 = AT_FDCWD; /* Reduced to case 7. */ + } + + /* Cases 3, 7, 12, 13, 15a remain. Convert one relative name to + absolute, if necessary. */ + + file1_alt = (char *) file1; + file2_alt = (char *) file2; + + if (fd1 == AT_FDCWD && !IS_ABSOLUTE_FILE_NAME (file1)) /* Case 7. */ + { + /* It would be nicer to use: + file1_alt = file_name_concat (xgetcwd (), file1, NULL); + but libraries should not call xalloc_die. */ + char *cwd = getcwd (NULL, 0); + if (!cwd) + { + saved_errno = errno; + free_cwd (&saved_cwd); + errno = saved_errno; + return -1; + } + file1_alt = mfile_name_concat (cwd, file1, NULL); + if (!file1_alt) + { + saved_errno = errno; + free (cwd); + free_cwd (&saved_cwd); + errno = saved_errno; + return -1; + } + free (cwd); /* Reduced to case 3. */ + } + else if (fd2 == AT_FDCWD && !IS_ABSOLUTE_FILE_NAME (file2)) /* Case 13. */ + { + char *cwd = getcwd (NULL, 0); + if (!cwd) + { + saved_errno = errno; + free_cwd (&saved_cwd); + errno = saved_errno; + return -1; + } + file2_alt = mfile_name_concat (cwd, file2, NULL); + if (!file2_alt) + { + saved_errno = errno; + free (cwd); + free_cwd (&saved_cwd); + errno = saved_errno; + return -1; + } + free (cwd); /* Reduced to case 12. */ + } + + /* Cases 3, 12, 15a remain. Change to the correct directory. */ + if (fchdir (fd1 == AT_FDCWD ? fd2 : fd1) != 0) + { + saved_errno = errno; + free_cwd (&saved_cwd); + if (file1 != file1_alt) + free (file1_alt); + else if (file2 != file2_alt) + free (file2_alt); + errno = saved_errno; + return -1; + } + + /* Finally safe to perform the user's function, then clean up. */ + + err = func (file1_alt, file2_alt); + saved_errno = (err < 0 ? errno : 0); + + if (file1 != file1_alt) + free (file1_alt); + else if (file2 != file2_alt) + free (file2_alt); + + if (restore_cwd (&saved_cwd) != 0) + openat_restore_fail (errno); + + free_cwd (&saved_cwd); + + if (saved_errno) + errno = saved_errno; + return err; +} +#undef CALL_FUNC +#undef FUNC_RESULT diff --git a/gnu/btowc.c b/gnu/btowc.c index 1ff29ee..b40d8e7 100644 --- a/gnu/btowc.c +++ b/gnu/btowc.c @@ -1,7 +1,7 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ /* Convert unibyte character to wide character. - Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2008, 2010 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This program is free software: you can redistribute it and/or modify @@ -23,6 +23,7 @@ #include #include +#include wint_t btowc (int c) diff --git a/gnu/canonicalize-lgpl.c b/gnu/canonicalize-lgpl.c new file mode 100644 index 0000000..9c5a12e --- /dev/null +++ b/gnu/canonicalize-lgpl.c @@ -0,0 +1,381 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Return the canonical absolute name of a given file. + Copyright (C) 1996-2010 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +#ifndef _LIBC +# include +#endif + +#if !HAVE_CANONICALIZE_FILE_NAME || !FUNC_REALPATH_WORKS || defined _LIBC + +/* Don't use __attribute__ __nonnull__ in this compilation unit. Otherwise gcc + optimizes away the name == NULL test below. */ +#define _GL_ARG_NONNULL(params) + +/* Specification. */ +#include + +#include +#include +#include +#include +#if HAVE_SYS_PARAM_H || defined _LIBC +# include +#endif +#include +#include +#include + +#ifdef _LIBC +# include +#else +# define SHLIB_COMPAT(lib, introduced, obsoleted) 0 +# define versioned_symbol(lib, local, symbol, version) extern int dummy +# define compat_symbol(lib, local, symbol, version) +# define weak_alias(local, symbol) +# define __canonicalize_file_name canonicalize_file_name +# define __realpath realpath +# include "pathmax.h" +# include "malloca.h" +# if HAVE_GETCWD +# if IN_RELOCWRAPPER + /* When building the relocatable program wrapper, use the system's getcwd + function, not the gnulib override, otherwise we would get a link error. + */ +# undef getcwd +# endif +# ifdef VMS + /* We want the directory in Unix syntax, not in VMS syntax. */ +# define __getcwd(buf, max) getcwd (buf, max, 0) +# else +# define __getcwd getcwd +# endif +# else +# define __getcwd(buf, max) getwd (buf) +# endif +# define __readlink readlink +# define __set_errno(e) errno = (e) +/* Use the system functions, not the gnulib overrides in this file. */ +# undef malloc +# ifndef MAXSYMLINKS +# ifdef SYMLOOP_MAX +# define MAXSYMLINKS SYMLOOP_MAX +# else +# define MAXSYMLINKS 20 +# endif +# endif +#endif + +#ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT +# define DOUBLE_SLASH_IS_DISTINCT_ROOT 0 +#endif + +#if !FUNC_REALPATH_WORKS || defined _LIBC +/* Return the canonical absolute name of file NAME. A canonical name + does not contain any `.', `..' components nor any repeated path + separators ('/') or symlinks. All path components must exist. If + RESOLVED is null, the result is malloc'd; otherwise, if the + canonical name is PATH_MAX chars or more, returns null with `errno' + set to ENAMETOOLONG; if the name fits in fewer than PATH_MAX chars, + returns the name in RESOLVED. If the name cannot be resolved and + RESOLVED is non-NULL, it contains the path of the first component + that cannot be resolved. If the path can be resolved, RESOLVED + holds the same value as the value returned. */ + +char * +__realpath (const char *name, char *resolved) +{ + char *rpath, *dest, *extra_buf = NULL; + const char *start, *end, *rpath_limit; + long int path_max; + int num_links = 0; + + if (name == NULL) + { + /* As per Single Unix Specification V2 we must return an error if + either parameter is a null pointer. We extend this to allow + the RESOLVED parameter to be NULL in case the we are expected to + allocate the room for the return value. */ + __set_errno (EINVAL); + return NULL; + } + + if (name[0] == '\0') + { + /* As per Single Unix Specification V2 we must return an error if + the name argument points to an empty string. */ + __set_errno (ENOENT); + return NULL; + } + +#ifdef PATH_MAX + path_max = PATH_MAX; +#else + path_max = pathconf (name, _PC_PATH_MAX); + if (path_max <= 0) + path_max = 1024; +#endif + + if (resolved == NULL) + { + rpath = malloc (path_max); + if (rpath == NULL) + { + /* It's easier to set errno to ENOMEM than to rely on the + 'malloc-posix' gnulib module. */ + errno = ENOMEM; + return NULL; + } + } + else + rpath = resolved; + rpath_limit = rpath + path_max; + + if (name[0] != '/') + { + if (!__getcwd (rpath, path_max)) + { + rpath[0] = '\0'; + goto error; + } + dest = strchr (rpath, '\0'); + } + else + { + rpath[0] = '/'; + dest = rpath + 1; + if (DOUBLE_SLASH_IS_DISTINCT_ROOT && name[1] == '/') + *dest++ = '/'; + } + + for (start = end = name; *start; start = end) + { +#ifdef _LIBC + struct stat64 st; +#else + struct stat st; +#endif + int n; + + /* Skip sequence of multiple path-separators. */ + while (*start == '/') + ++start; + + /* Find end of path component. */ + for (end = start; *end && *end != '/'; ++end) + /* Nothing. */; + + if (end - start == 0) + break; + else if (end - start == 1 && start[0] == '.') + /* nothing */; + else if (end - start == 2 && start[0] == '.' && start[1] == '.') + { + /* Back up to previous component, ignore if at root already. */ + if (dest > rpath + 1) + while ((--dest)[-1] != '/'); + if (DOUBLE_SLASH_IS_DISTINCT_ROOT && dest == rpath + 1 + && *dest == '/') + dest++; + } + else + { + size_t new_size; + + if (dest[-1] != '/') + *dest++ = '/'; + + if (dest + (end - start) >= rpath_limit) + { + ptrdiff_t dest_offset = dest - rpath; + char *new_rpath; + + if (resolved) + { + __set_errno (ENAMETOOLONG); + if (dest > rpath + 1) + dest--; + *dest = '\0'; + goto error; + } + new_size = rpath_limit - rpath; + if (end - start + 1 > path_max) + new_size += end - start + 1; + else + new_size += path_max; + new_rpath = (char *) realloc (rpath, new_size); + if (new_rpath == NULL) + { + /* It's easier to set errno to ENOMEM than to rely on the + 'realloc-posix' gnulib module. */ + errno = ENOMEM; + goto error; + } + rpath = new_rpath; + rpath_limit = rpath + new_size; + + dest = rpath + dest_offset; + } + +#ifdef _LIBC + dest = __mempcpy (dest, start, end - start); +#else + memcpy (dest, start, end - start); + dest += end - start; +#endif + *dest = '\0'; + +#ifdef _LIBC + if (__lxstat64 (_STAT_VER, rpath, &st) < 0) +#else + if (lstat (rpath, &st) < 0) +#endif + goto error; + + if (S_ISLNK (st.st_mode)) + { + char *buf; + size_t len; + + if (++num_links > MAXSYMLINKS) + { + __set_errno (ELOOP); + goto error; + } + + buf = malloca (path_max); + if (!buf) + { + errno = ENOMEM; + goto error; + } + + n = __readlink (rpath, buf, path_max - 1); + if (n < 0) + { + int saved_errno = errno; + freea (buf); + errno = saved_errno; + goto error; + } + buf[n] = '\0'; + + if (!extra_buf) + { + extra_buf = malloca (path_max); + if (!extra_buf) + { + freea (buf); + errno = ENOMEM; + goto error; + } + } + + len = strlen (end); + if ((long int) (n + len) >= path_max) + { + freea (buf); + __set_errno (ENAMETOOLONG); + goto error; + } + + /* Careful here, end may be a pointer into extra_buf... */ + memmove (&extra_buf[n], end, len + 1); + name = end = memcpy (extra_buf, buf, n); + + if (buf[0] == '/') + { + dest = rpath + 1; /* It's an absolute symlink */ + if (DOUBLE_SLASH_IS_DISTINCT_ROOT && buf[1] == '/') + *dest++ = '/'; + } + else + { + /* Back up to previous component, ignore if at root + already: */ + if (dest > rpath + 1) + while ((--dest)[-1] != '/'); + if (DOUBLE_SLASH_IS_DISTINCT_ROOT && dest == rpath + 1 + && *dest == '/') + dest++; + } + } + else if (!S_ISDIR (st.st_mode) && *end != '\0') + { + __set_errno (ENOTDIR); + goto error; + } + } + } + if (dest > rpath + 1 && dest[-1] == '/') + --dest; + if (DOUBLE_SLASH_IS_DISTINCT_ROOT && dest == rpath + 1 && *dest == '/') + dest++; + *dest = '\0'; + + if (extra_buf) + freea (extra_buf); + + return rpath; + +error: + { + int saved_errno = errno; + if (extra_buf) + freea (extra_buf); + if (resolved == NULL) + free (rpath); + errno = saved_errno; + } + return NULL; +} +versioned_symbol (libc, __realpath, realpath, GLIBC_2_3); +#endif /* !FUNC_REALPATH_WORKS || defined _LIBC */ + + +#if SHLIB_COMPAT(libc, GLIBC_2_0, GLIBC_2_3) +char * +attribute_compat_text_section +__old_realpath (const char *name, char *resolved) +{ + if (resolved == NULL) + { + __set_errno (EINVAL); + return NULL; + } + + return __realpath (name, resolved); +} +compat_symbol (libc, __old_realpath, realpath, GLIBC_2_0); +#endif + + +char * +__canonicalize_file_name (const char *name) +{ + return __realpath (name, NULL); +} +weak_alias (__canonicalize_file_name, canonicalize_file_name) + +#else + +/* This declaration is solely to ensure that after preprocessing + this file is never empty. */ +typedef int dummy; + +#endif diff --git a/gnu/canonicalize.c b/gnu/canonicalize.c deleted file mode 100644 index 82a819e..0000000 --- a/gnu/canonicalize.c +++ /dev/null @@ -1,292 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* Return the canonical absolute name of a given file. - Copyright (C) 1996-2010 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -#include "canonicalize.h" - -#include -#include -#include -#include -#include - -#include "areadlink.h" -#include "file-set.h" -#include "hash-triple.h" -#include "pathmax.h" -#include "xalloc.h" -#include "xgetcwd.h" - -#ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT -# define DOUBLE_SLASH_IS_DISTINCT_ROOT 0 -#endif - -#if !((HAVE_CANONICALIZE_FILE_NAME && FUNC_REALPATH_WORKS) \ - || GNULIB_CANONICALIZE_LGPL) -/* Return the canonical absolute name of file NAME. A canonical name - does not contain any `.', `..' components nor any repeated file name - separators ('/') or symlinks. All components must exist. - The result is malloc'd. */ - -char * -canonicalize_file_name (const char *name) -{ - return canonicalize_filename_mode (name, CAN_EXISTING); -} -#endif /* !HAVE_CANONICALIZE_FILE_NAME */ - -/* Return true if we've already seen the triple, . - If *HT is not initialized, initialize it. */ -static bool -seen_triple (Hash_table **ht, char const *filename, struct stat const *st) -{ - if (*ht == NULL) - { - size_t initial_capacity = 7; - *ht = hash_initialize (initial_capacity, - NULL, - triple_hash, - triple_compare_ino_str, - triple_free); - if (*ht == NULL) - xalloc_die (); - } - - if (seen_file (*ht, filename, st)) - return true; - - record_file (*ht, filename, st); - return false; -} - -/* Return the canonical absolute name of file NAME, while treating - missing elements according to CAN_MODE. A canonical name - does not contain any `.', `..' components nor any repeated file name - separators ('/') or symlinks. Whether components must exist - or not depends on canonicalize mode. The result is malloc'd. */ - -char * -canonicalize_filename_mode (const char *name, canonicalize_mode_t can_mode) -{ - char *rname, *dest, *extra_buf = NULL; - char const *start; - char const *end; - char const *rname_limit; - size_t extra_len = 0; - Hash_table *ht = NULL; - int saved_errno; - - if (name == NULL) - { - errno = EINVAL; - return NULL; - } - - if (name[0] == '\0') - { - errno = ENOENT; - return NULL; - } - - if (name[0] != '/') - { - rname = xgetcwd (); - if (!rname) - return NULL; - dest = strchr (rname, '\0'); - if (dest - rname < PATH_MAX) - { - char *p = xrealloc (rname, PATH_MAX); - dest = p + (dest - rname); - rname = p; - rname_limit = rname + PATH_MAX; - } - else - { - rname_limit = dest; - } - } - else - { - rname = xmalloc (PATH_MAX); - rname_limit = rname + PATH_MAX; - rname[0] = '/'; - dest = rname + 1; - if (DOUBLE_SLASH_IS_DISTINCT_ROOT && name[1] == '/') - *dest++ = '/'; - } - - for (start = name; *start; start = end) - { - /* Skip sequence of multiple file name separators. */ - while (*start == '/') - ++start; - - /* Find end of component. */ - for (end = start; *end && *end != '/'; ++end) - /* Nothing. */; - - if (end - start == 0) - break; - else if (end - start == 1 && start[0] == '.') - /* nothing */; - else if (end - start == 2 && start[0] == '.' && start[1] == '.') - { - /* Back up to previous component, ignore if at root already. */ - if (dest > rname + 1) - while ((--dest)[-1] != '/'); - if (DOUBLE_SLASH_IS_DISTINCT_ROOT && dest == rname + 1 - && *dest == '/') - dest++; - } - else - { - struct stat st; - - if (dest[-1] != '/') - *dest++ = '/'; - - if (dest + (end - start) >= rname_limit) - { - ptrdiff_t dest_offset = dest - rname; - size_t new_size = rname_limit - rname; - - if (end - start + 1 > PATH_MAX) - new_size += end - start + 1; - else - new_size += PATH_MAX; - rname = xrealloc (rname, new_size); - rname_limit = rname + new_size; - - dest = rname + dest_offset; - } - - dest = memcpy (dest, start, end - start); - dest += end - start; - *dest = '\0'; - - if (lstat (rname, &st) != 0) - { - saved_errno = errno; - if (can_mode == CAN_EXISTING) - goto error; - if (can_mode == CAN_ALL_BUT_LAST) - { - if (end[strspn (end, "/")] || saved_errno != ENOENT) - goto error; - continue; - } - st.st_mode = 0; - } - - if (S_ISLNK (st.st_mode)) - { - char *buf; - size_t n, len; - - /* Detect loops. We cannot use the cycle-check module here, - since it's actually possible to encounter the same symlink - more than once in a given traversal. However, encountering - the same symlink,NAME pair twice does indicate a loop. */ - if (seen_triple (&ht, name, &st)) - { - if (can_mode == CAN_MISSING) - continue; - saved_errno = ELOOP; - goto error; - } - - buf = areadlink_with_size (rname, st.st_size); - if (!buf) - { - if (can_mode == CAN_MISSING && errno != ENOMEM) - continue; - saved_errno = errno; - goto error; - } - - n = strlen (buf); - len = strlen (end); - - if (!extra_len) - { - extra_len = - ((n + len + 1) > PATH_MAX) ? (n + len + 1) : PATH_MAX; - extra_buf = xmalloc (extra_len); - } - else if ((n + len + 1) > extra_len) - { - extra_len = n + len + 1; - extra_buf = xrealloc (extra_buf, extra_len); - } - - /* Careful here, end may be a pointer into extra_buf... */ - memmove (&extra_buf[n], end, len + 1); - name = end = memcpy (extra_buf, buf, n); - - if (buf[0] == '/') - { - dest = rname + 1; /* It's an absolute symlink */ - if (DOUBLE_SLASH_IS_DISTINCT_ROOT && buf[1] == '/') - *dest++ = '/'; - } - else - { - /* Back up to previous component, ignore if at root - already: */ - if (dest > rname + 1) - while ((--dest)[-1] != '/'); - if (DOUBLE_SLASH_IS_DISTINCT_ROOT && dest == rname + 1 - && *dest == '/') - dest++; - } - - free (buf); - } - else - { - if (!S_ISDIR (st.st_mode) && *end && (can_mode != CAN_MISSING)) - { - saved_errno = ENOTDIR; - goto error; - } - } - } - } - if (dest > rname + 1 && dest[-1] == '/') - --dest; - if (DOUBLE_SLASH_IS_DISTINCT_ROOT && dest == rname + 1 && *dest == '/') - dest++; - *dest = '\0'; - if (rname_limit != dest + 1) - rname = xrealloc (rname, dest - rname + 1); - - free (extra_buf); - if (ht) - hash_free (ht); - return rname; - -error: - free (extra_buf); - free (rname); - if (ht) - hash_free (ht); - errno = saved_errno; - return NULL; -} diff --git a/gnu/canonicalize.h b/gnu/canonicalize.h deleted file mode 100644 index 06bf3c9..0000000 --- a/gnu/canonicalize.h +++ /dev/null @@ -1,43 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* Return the canonical absolute name of a given file. - Copyright (C) 1996-2007, 2009-2010 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef CANONICALIZE_H_ -# define CANONICALIZE_H_ - -#include /* for canonicalize_file_name */ - -enum canonicalize_mode_t - { - /* All components must exist. */ - CAN_EXISTING = 0, - - /* All components excluding last one must exist. */ - CAN_ALL_BUT_LAST = 1, - - /* No requirements on components existence. */ - CAN_MISSING = 2 - }; -typedef enum canonicalize_mode_t canonicalize_mode_t; - -/* Return a malloc'd string containing the canonical absolute name of - the named file. This acts like canonicalize_file_name, except that - whether components must exist depends on the canonicalize_mode_t - argument. */ -char *canonicalize_filename_mode (const char *, canonicalize_mode_t); - -#endif /* !CANONICALIZE_H_ */ diff --git a/gnu/chdir-long.c b/gnu/chdir-long.c index 5050b1f..338c050 100644 --- a/gnu/chdir-long.c +++ b/gnu/chdir-long.c @@ -74,7 +74,7 @@ static int cdb_advance_fd (struct cd_buf *cdb, char const *dir) { int new_fd = openat (cdb->fd, dir, - O_RDONLY | O_DIRECTORY | O_NOCTTY | O_NONBLOCK); + O_SEARCH | O_DIRECTORY | O_NOCTTY | O_NONBLOCK); if (new_fd < 0) return -1; diff --git a/gnu/cloexec.c b/gnu/cloexec.c new file mode 100644 index 0000000..4fb995e --- /dev/null +++ b/gnu/cloexec.c @@ -0,0 +1,85 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* closexec.c - set or clear the close-on-exec descriptor flag + + Copyright (C) 1991, 2004-2006, 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + 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 . + + The code is taken from glibc/manual/llio.texi */ + +#include + +#include "cloexec.h" + +#include +#include +#include + +/* Set the `FD_CLOEXEC' flag of DESC if VALUE is true, + or clear the flag if VALUE is false. + Return 0 on success, or -1 on error with `errno' set. + + Note that on MingW, this function does NOT protect DESC from being + inherited into spawned children. Instead, either use dup_cloexec + followed by closing the original DESC, or use interfaces such as + open or pipe2 that accept flags like O_CLOEXEC to create DESC + non-inheritable in the first place. */ + +int +set_cloexec_flag (int desc, bool value) +{ +#ifdef F_SETFD + + int flags = fcntl (desc, F_GETFD, 0); + + if (0 <= flags) + { + int newflags = (value ? flags | FD_CLOEXEC : flags & ~FD_CLOEXEC); + + if (flags == newflags + || fcntl (desc, F_SETFD, newflags) != -1) + return 0; + } + + return -1; + +#else /* !F_SETFD */ + + /* Use dup2 to reject invalid file descriptors; the cloexec flag + will be unaffected. */ + if (desc < 0) + { + errno = EBADF; + return -1; + } + if (dup2 (desc, desc) < 0) + /* errno is EBADF here. */ + return -1; + + /* There is nothing we can do on this kind of platform. Punt. */ + return 0; +#endif /* !F_SETFD */ +} + + +/* Duplicates a file handle FD, while marking the copy to be closed + prior to exec or spawn. Returns -1 and sets errno if FD could not + be duplicated. */ + +int +dup_cloexec (int fd) +{ + return fcntl (fd, F_DUPFD_CLOEXEC, 0); +} diff --git a/gnu/cloexec.h b/gnu/cloexec.h new file mode 100644 index 0000000..12f17a8 --- /dev/null +++ b/gnu/cloexec.h @@ -0,0 +1,40 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* closexec.c - set or clear the close-on-exec descriptor flag + + Copyright (C) 2004, 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +*/ + +#include + +/* Set the `FD_CLOEXEC' flag of DESC if VALUE is true, + or clear the flag if VALUE is false. + Return 0 on success, or -1 on error with `errno' set. + + Note that on MingW, this function does NOT protect DESC from being + inherited into spawned children. Instead, either use dup_cloexec + followed by closing the original DESC, or use interfaces such as + open or pipe2 that accept flags like O_CLOEXEC to create DESC + non-inheritable in the first place. */ + +int set_cloexec_flag (int desc, bool value); + +/* Duplicates a file handle FD, while marking the copy to be closed + prior to exec or spawn. Returns -1 and sets errno if FD could not + be duplicated. */ + +int dup_cloexec (int fd); diff --git a/gnu/close-stream.c b/gnu/close-stream.c index 306d901..5004f30 100644 --- a/gnu/close-stream.c +++ b/gnu/close-stream.c @@ -57,9 +57,9 @@ int close_stream (FILE *stream) { - bool some_pending = (__fpending (stream) != 0); - bool prev_fail = (ferror (stream) != 0); - bool fclose_fail = (fclose (stream) != 0); + const bool some_pending = (__fpending (stream) != 0); + const bool prev_fail = (ferror (stream) != 0); + const bool fclose_fail = (fclose (stream) != 0); /* Return an error indication if there was a previous failure or if fclose failed, with one exception: ignore an fclose failure if diff --git a/gnu/config.charset b/gnu/config.charset index 2959df8..aa7d00d 100644 --- a/gnu/config.charset +++ b/gnu/config.charset @@ -30,21 +30,21 @@ # The current list of GNU canonical charset names is as follows. # # name MIME? used by which systems -# ASCII, ANSI_X3.4-1968 glibc solaris freebsd netbsd darwin -# ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin -# ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin -# ISO-8859-3 Y glibc solaris +# ASCII, ANSI_X3.4-1968 glibc solaris freebsd netbsd darwin cygwin +# ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin +# ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin +# ISO-8859-3 Y glibc solaris cygwin # ISO-8859-4 Y osf solaris freebsd netbsd openbsd darwin -# ISO-8859-5 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin -# ISO-8859-6 Y glibc aix hpux solaris -# ISO-8859-7 Y glibc aix hpux irix osf solaris netbsd openbsd darwin -# ISO-8859-8 Y glibc aix hpux osf solaris -# ISO-8859-9 Y glibc aix hpux irix osf solaris darwin -# ISO-8859-13 glibc netbsd openbsd darwin -# ISO-8859-14 glibc -# ISO-8859-15 glibc aix osf solaris freebsd netbsd openbsd darwin +# ISO-8859-5 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin +# ISO-8859-6 Y glibc aix hpux solaris cygwin +# ISO-8859-7 Y glibc aix hpux irix osf solaris netbsd openbsd darwin cygwin +# ISO-8859-8 Y glibc aix hpux osf solaris cygwin +# ISO-8859-9 Y glibc aix hpux irix osf solaris darwin cygwin +# ISO-8859-13 glibc netbsd openbsd darwin cygwin +# ISO-8859-14 glibc cygwin +# ISO-8859-15 glibc aix osf solaris freebsd netbsd openbsd darwin cygwin # KOI8-R Y glibc solaris freebsd netbsd openbsd darwin -# KOI8-U Y glibc freebsd netbsd openbsd darwin +# KOI8-U Y glibc freebsd netbsd openbsd darwin cygwin # KOI8-T glibc # CP437 dos # CP775 dos @@ -61,7 +61,7 @@ # CP869 dos # CP874 woe32 dos # CP922 aix -# CP932 aix woe32 dos +# CP932 aix cygwin woe32 dos # CP943 aix # CP949 osf darwin woe32 dos # CP950 woe32 dos @@ -71,7 +71,7 @@ # CP1129 aix # CP1131 darwin # CP1250 woe32 -# CP1251 glibc solaris netbsd openbsd darwin woe32 +# CP1251 glibc solaris netbsd openbsd darwin cygwin woe32 # CP1252 aix woe32 # CP1253 woe32 # CP1254 woe32 @@ -80,19 +80,19 @@ # CP1257 woe32 # GB2312 Y glibc aix hpux irix solaris freebsd netbsd darwin # EUC-JP Y glibc aix hpux irix osf solaris freebsd netbsd darwin -# EUC-KR Y glibc aix hpux irix osf solaris freebsd netbsd darwin +# EUC-KR Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin # EUC-TW glibc aix hpux irix osf solaris netbsd -# BIG5 Y glibc aix hpux osf solaris freebsd netbsd darwin +# BIG5 Y glibc aix hpux osf solaris freebsd netbsd darwin cygwin # BIG5-HKSCS glibc solaris darwin -# GBK glibc aix osf solaris darwin woe32 dos +# GBK glibc aix osf solaris darwin cygwin woe32 dos # GB18030 glibc solaris netbsd darwin # SHIFT_JIS Y hpux osf solaris freebsd netbsd darwin # JOHAB glibc solaris woe32 -# TIS-620 glibc aix hpux osf solaris +# TIS-620 glibc aix hpux osf solaris cygwin # VISCII Y glibc # TCVN5712-1 glibc # ARMSCII-8 glibc darwin -# GEORGIAN-PS glibc +# GEORGIAN-PS glibc cygwin # PT154 glibc # HP-ROMAN8 hpux # HP-ARABIC8 hpux @@ -102,7 +102,7 @@ # HP-KANA8 hpux # DEC-KANJI osf # DEC-HANYU osf -# UTF-8 Y glibc aix hpux osf solaris netbsd darwin +# UTF-8 Y glibc aix hpux osf solaris netbsd darwin cygwin # # Note: Names which are not marked as being a MIME name should not be used in # Internet protocols for information interchange (mail, news, etc.). diff --git a/gnu/dirent.in.h b/gnu/dirent.in.h index ddb78d8..ccc6a47 100644 --- a/gnu/dirent.in.h +++ b/gnu/dirent.in.h @@ -21,6 +21,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* The include_next requires a split double-inclusion guard. */ #@INCLUDE_NEXT@ @NEXT_DIRENT_H@ @@ -52,11 +53,28 @@ _GL_CXXALIAS_SYS (closedir, int, (DIR *)); _GL_CXXALIASWARN (closedir); #if @GNULIB_DIRFD@ -# if !@HAVE_DECL_DIRFD@ && !defined dirfd /* Return the file descriptor associated with the given directory stream, or -1 if none exists. */ -_GL_EXTERN_C int dirfd (DIR *dir) _GL_ARG_NONNULL ((1)); +# if @REPLACE_DIRFD@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef dirfd +# define dirfd rpl_dirfd +# endif +_GL_FUNCDECL_RPL (dirfd, int, (DIR *) _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (dirfd, int, (DIR *)); +# else +# if defined __cplusplus && defined GNULIB_NAMESPACE && defined dirfd + /* dirfd is defined as a macro and not as a function. + Turn it into a function and get rid of the macro. */ +static inline int (dirfd) (DIR *dp) { return dirfd (dp); } +# undef dirfd +# endif +# if !(@HAVE_DECL_DIRFD@ || defined dirfd) +_GL_FUNCDECL_SYS (dirfd, int, (DIR *) _GL_ARG_NONNULL ((1))); +# endif +_GL_CXXALIAS_SYS (dirfd, int, (DIR *)); # endif +_GL_CXXALIASWARN (dirfd); #elif defined GNULIB_POSIXCHECK # undef dirfd # if HAVE_RAW_DECL_DIRFD @@ -79,7 +97,7 @@ _GL_WARN_ON_USE (dirfd, "dirfd is unportable - " _GL_FUNCDECL_RPL (fdopendir, DIR *, (int fd)); _GL_CXXALIAS_RPL (fdopendir, DIR *, (int fd)); # else -# if !@HAVE_FDOPENDIR@ +# if !@HAVE_FDOPENDIR@ || !@HAVE_DECL_FDOPENDIR@ _GL_FUNCDECL_SYS (fdopendir, DIR *, (int fd)); # endif _GL_CXXALIAS_SYS (fdopendir, DIR *, (int fd)); diff --git a/gnu/errno.in.h b/gnu/errno.in.h index f613d26..d59c196 100644 --- a/gnu/errno.in.h +++ b/gnu/errno.in.h @@ -23,6 +23,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* The include_next requires a split double-inclusion guard. */ #@INCLUDE_NEXT@ @NEXT_ERRNO_H@ @@ -100,6 +101,7 @@ /* On OpenBSD 4.0 and on native Windows, the macros ENOMSG, EIDRM, ENOLINK, EPROTO, EMULTIHOP, EBADMSG, EOVERFLOW, ENOTSUP, ECANCELED are not defined. + Likewise, on NonStop Kernel, EDQUOT is not defined. Define them here. Values >= 2000 seem safe to use: Solaris ESTALE = 151, HP-UX EWOULDBLOCK = 246, IRIX EDQUOT = 1133. @@ -152,6 +154,11 @@ # define GNULIB_defined_ESTALE 1 # endif +# ifndef EDQUOT +# define EDQUOT 2010 +# define GNULIB_defined_EDQUOT 1 +# endif + # ifndef ECANCELED # define ECANCELED 2008 # define GNULIB_defined_ECANCELED 1 diff --git a/gnu/error.c b/gnu/error.c index b6e9c33..37b2c6e 100644 --- a/gnu/error.c +++ b/gnu/error.c @@ -90,6 +90,15 @@ extern void __error_at_line (int status, int errnum, const char *file_name, # include # include +# if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ +/* Get declarations of the Win32 API functions. */ +# define WIN32_LEAN_AND_MEAN +# include +# endif + +/* The gnulib override of fcntl is not needed in this file. */ +# undef fcntl + # if !HAVE_DECL_STRERROR_R && STRERROR_R_CHAR_P # ifndef HAVE_DECL_STRERROR_R "this configure-time declaration test was not run" @@ -106,10 +115,29 @@ extern char *program_name; # endif /* HAVE_STRERROR_R || defined strerror_r */ #endif /* not _LIBC */ +#if !_LIBC +/* Return non-zero if FD is open. */ +static inline int +is_open (int fd) +{ +# if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ + /* On Win32: The initial state of unassigned standard file descriptors is + that they are open but point to an INVALID_HANDLE_VALUE. There is no + fcntl, and the gnulib replacement fcntl does not support F_GETFL. */ + return (HANDLE) _get_osfhandle (fd) != INVALID_HANDLE_VALUE; +# else +# ifndef F_GETFL +# error Please port fcntl to your platform +# endif + return 0 <= fcntl (fd, F_GETFL); +# endif +} +#endif + static inline void flush_stdout (void) { -#if !_LIBC && defined F_GETFL +#if !_LIBC int stdout_fd; # if GNULIB_FREOPEN_SAFER @@ -126,7 +154,7 @@ flush_stdout (void) /* POSIX states that fflush (stdout) after fclose is unspecified; it is safe in glibc, but not on all other platforms. fflush (NULL) is always defined, but too draconian. */ - if (0 <= stdout_fd && 0 <= fcntl (stdout_fd, F_GETFL)) + if (0 <= stdout_fd && is_open (stdout_fd)) #endif fflush (stdout); } diff --git a/gnu/exclude.c b/gnu/exclude.c index 00a053f..dfa2aab 100644 --- a/gnu/exclude.c +++ b/gnu/exclude.c @@ -136,6 +136,26 @@ fnmatch_pattern_has_wildcards (const char *str, int options) return false; } +static void +unescape_pattern (char *str) +{ + int inset = 0; + char *q = str; + do + { + if (inset) + { + if (*q == ']') + inset = 0; + } + else if (*q == '[') + inset = 1; + else if (*q == '\\') + q++; + } + while ((*str++ = *q++)); +} + /* Return a newly allocated and empty exclude list. */ struct exclude * @@ -344,7 +364,7 @@ excluded_file_pattern_p (struct exclude_segment const *seg, char const *f) { char const *pattern = exclude[i].pattern; int options = exclude[i].options; - if (excluded != exclude_fnmatch (pattern, f, options)) + if (exclude_fnmatch (pattern, f, options)) return !excluded; } return excluded; @@ -482,6 +502,8 @@ add_exclude (struct exclude *ex, char const *pattern, int options) seg = new_exclude_segment (ex, exclude_hash, options); str = xstrdup (pattern); + if (options & EXCLUDE_WILDCARDS) + unescape_pattern (str); p = hash_insert (seg->v.table, str); if (p != str) free (str); diff --git a/gnu/fcntl.in.h b/gnu/fcntl.in.h index 95298de..c2ded08 100644 --- a/gnu/fcntl.in.h +++ b/gnu/fcntl.in.h @@ -22,6 +22,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ #if defined __need_system_fcntl_h /* Special invocation convention. */ @@ -172,6 +173,10 @@ _GL_WARN_ON_USE (openat, "openat is not portable - " # define O_CLOEXEC O_NOINHERIT #endif +#ifndef O_CLOEXEC +# define O_CLOEXEC 0 +#endif + #ifndef O_DIRECT # define O_DIRECT 0 #endif @@ -184,6 +189,10 @@ _GL_WARN_ON_USE (openat, "openat is not portable - " # define O_DSYNC 0 #endif +#ifndef O_EXEC +# define O_EXEC O_RDONLY /* This is often close enough in older systems. */ +#endif + #ifndef O_NDELAY # define O_NDELAY 0 #endif @@ -212,6 +221,10 @@ _GL_WARN_ON_USE (openat, "openat is not portable - " # define O_RSYNC 0 #endif +#ifndef O_SEARCH +# define O_SEARCH O_RDONLY /* This is often close enough in older systems. */ +#endif + #ifndef O_SYNC # define O_SYNC 0 #endif diff --git a/gnu/fdopendir.c b/gnu/fdopendir.c index 7488fbb..544bf5d 100644 --- a/gnu/fdopendir.c +++ b/gnu/fdopendir.c @@ -35,24 +35,86 @@ # include "dirent--.h" # endif -/* Replacement for Solaris' function by the same name. - +static DIR *fdopendir_with_dup (int, int); +static DIR *fd_clone_opendir (int); + +/* Replacement for POSIX fdopendir. + First, try to simulate it via opendir ("/proc/self/fd/FD"). Failing that, simulate it by using fchdir metadata, or by doing save_cwd/fchdir/opendir(".")/restore_cwd. If either the save_cwd or the restore_cwd fails (relatively unlikely), then give a diagnostic and exit nonzero. - Otherwise, this function works just like Solaris' fdopendir. + + If successful, the resulting stream is based on FD in + implementations where streams are based on file descriptors and in + applications where no other thread or signal handler allocates or + frees file descriptors. In other cases, consult dirfd on the result + to find out whether FD is still being used. + + Otherwise, this function works just like POSIX fdopendir. W A R N I N G: - Unlike other fd-related functions, this one effectively consumes - its FD parameter. The caller should not close or otherwise - manipulate FD if this function returns successfully. Also, this - implementation does not guarantee that dirfd(fdopendir(n))==n; - the open directory stream may use a clone of FD, or have no - associated fd at all. */ + + Unlike other fd-related functions, this one places constraints on FD. + If this function returns successfully, FD is under control of the + dirent.h system, and the caller should not close or modify the state of + FD other than by the dirent.h functions. */ DIR * fdopendir (int fd) +{ + return fdopendir_with_dup (fd, -1); +} + +/* Like fdopendir, except that if OLDER_DUPFD is not -1, it is known + to be a dup of FD which is less than FD - 1 and which will be + closed by the caller and not otherwise used by the caller. This + function makes sure that FD is closed and all file descriptors less + than FD are open, and then calls fd_clone_opendir on a dup of FD. + That way, barring race conditions, fd_clone_opendir returns a + stream whose file descriptor is FD. */ +static DIR * +fdopendir_with_dup (int fd, int older_dupfd) +{ + int dupfd = dup (fd); + if (dupfd < 0 && errno == EMFILE) + dupfd = older_dupfd; + if (dupfd < 0) + return NULL; + else + { + DIR *dir; + int saved_errno; + if (dupfd < fd - 1 && dupfd != older_dupfd) + { + dir = fdopendir_with_dup (fd, dupfd); + saved_errno = errno; + } + else + { + close (fd); + dir = fd_clone_opendir (dupfd); + saved_errno = errno; + if (! dir) + { + int fd1 = dup (dupfd); + if (fd1 != fd) + openat_save_fail (fd1 < 0 ? errno : EBADF); + } + } + + if (dupfd != older_dupfd) + close (dupfd); + errno = saved_errno; + return dir; + } +} + +/* Like fdopendir, except the result controls a clone of FD. It is + the caller's responsibility both to close FD and (if the result is + not null) to closedir the result. */ +static DIR * +fd_clone_opendir (int fd) { int saved_errno; DIR *dir; @@ -80,10 +142,23 @@ fdopendir (int fd) dir = opendir (name); saved_errno = errno; # else /* !REPLACE_FCHDIR */ + + /* Occupy the destination FD slot, so that save_cwd cannot hijack it. */ + int fd_reserve = dup (fd); + if (fd_reserve < 0) + { + saved_errno = errno; + dir = NULL; + goto fail; + } + struct saved_cwd saved_cwd; if (save_cwd (&saved_cwd) != 0) openat_save_fail (errno); + /* Liberate the target file descriptor, so that opendir uses it. */ + close (fd_reserve); + if (fchdir (fd) != 0) { dir = NULL; @@ -102,8 +177,7 @@ fdopendir (int fd) # endif /* !REPLACE_FCHDIR */ } - if (dir) - close (fd); + fail: if (proc_file != buf) free (proc_file); errno = saved_errno; diff --git a/gnu/fdutimensat.c b/gnu/fdutimensat.c new file mode 100644 index 0000000..6df7b56 --- /dev/null +++ b/gnu/fdutimensat.c @@ -0,0 +1,59 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Set file access and modification times. + + Copyright (C) 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the + Free Software Foundation; either version 3 of the License, or any + later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Eric Blake. */ + +/* derived from a function in utimens.c */ + +#include + +#include "utimens.h" + +#include +#include +#include + +/* Set the access and modification time stamps of FD (a.k.a. FILE) to be + TIMESPEC[0] and TIMESPEC[1], respectively; relative to directory DIR. + FD must be either negative -- in which case it is ignored -- + or a file descriptor that is open on FILE. + If FD is nonnegative, then FILE can be NULL, which means + use just futimes (or equivalent) instead of utimes (or equivalent), + and fail if on an old system without futimes (or equivalent). + If TIMESPEC is null, set the time stamps to the current time. + ATFLAG is passed to utimensat if FD is negative or futimens was + unsupported, which can allow operation on FILE as a symlink. + Return 0 on success, -1 (setting errno) on failure. */ + +int +fdutimensat (int fd, int dir, char const *file, struct timespec const ts[2], + int atflag) +{ + int result = 1; + if (0 <= fd) + result = futimens (fd, ts); + if (file && (fd < 0 || (result == -1 && errno == ENOSYS))) + result = utimensat (dir, file, ts, atflag); + if (result == 1) + { + errno = EBADF; + result = -1; + } + return result; +} diff --git a/gnu/file-set.c b/gnu/file-set.c deleted file mode 100644 index 1bcc05a..0000000 --- a/gnu/file-set.c +++ /dev/null @@ -1,76 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* Specialized functions to manipulate a set of files. - Copyright (C) 2007, 2009-2010 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Jim Meyering */ - -#include -#include "file-set.h" - -#include "hash-triple.h" -#include "xalloc.h" - -/* Record file, FILE, and dev/ino from *STATS, in the hash table, HT. - If HT is NULL, return immediately. - If memory allocation fails, exit immediately. */ -void -record_file (Hash_table *ht, char const *file, struct stat const *stats) -{ - struct F_triple *ent; - - if (ht == NULL) - return; - - ent = xmalloc (sizeof *ent); - ent->name = xstrdup (file); - ent->st_ino = stats->st_ino; - ent->st_dev = stats->st_dev; - - { - struct F_triple *ent_from_table = hash_insert (ht, ent); - if (ent_from_table == NULL) - { - /* Insertion failed due to lack of memory. */ - xalloc_die (); - } - - if (ent_from_table != ent) - { - /* There was alread a matching entry in the table, so ENT was - not inserted. Free it. */ - triple_free (ent); - } - } -} - -/* Return true if there is an entry in hash table, HT, - for the file described by FILE and STATS. */ -bool -seen_file (Hash_table const *ht, char const *file, - struct stat const *stats) -{ - struct F_triple new_ent; - - if (ht == NULL) - return false; - - new_ent.name = (char *) file; - new_ent.st_ino = stats->st_ino; - new_ent.st_dev = stats->st_dev; - - return !!hash_lookup (ht, &new_ent); -} diff --git a/gnu/file-set.h b/gnu/file-set.h deleted file mode 100644 index ef854ee..0000000 --- a/gnu/file-set.h +++ /dev/null @@ -1,14 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -#include -#include -#include - -#include "hash.h" - -extern void record_file (Hash_table *ht, char const *file, - struct stat const *stats) - __attribute__((nonnull(2, 3))); - -extern bool seen_file (Hash_table const *ht, char const *file, - struct stat const *stats); diff --git a/gnu/filenamecat-lgpl.c b/gnu/filenamecat-lgpl.c new file mode 100644 index 0000000..819f27b --- /dev/null +++ b/gnu/filenamecat-lgpl.c @@ -0,0 +1,90 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Concatenate two arbitrary file names. + + Copyright (C) 1996-2007, 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Jim Meyering. */ + +#include + +/* Specification. */ +#include "filenamecat.h" + +#include +#include + +#include "dirname.h" + +#if ! HAVE_MEMPCPY && ! defined mempcpy +# define mempcpy(D, S, N) ((void *) ((char *) memcpy (D, S, N) + (N))) +#endif + +/* Return the longest suffix of F that is a relative file name. + If it has no such suffix, return the empty string. */ + +static char const * +longest_relative_suffix (char const *f) +{ + for (f += FILE_SYSTEM_PREFIX_LEN (f); ISSLASH (*f); f++) + continue; + return f; +} + +/* Concatenate two file name components, DIR and ABASE, in + newly-allocated storage and return the result. + The resulting file name F is such that the commands "ls F" and "(cd + DIR; ls BASE)" refer to the same file, where BASE is ABASE with any + file system prefixes and leading separators removed. + Arrange for a directory separator if necessary between DIR and BASE + in the result, removing any redundant separators. + In any case, if BASE_IN_RESULT is non-NULL, set + *BASE_IN_RESULT to point to the copy of ABASE in the returned + concatenation. However, if ABASE begins with more than one slash, + set *BASE_IN_RESULT to point to the sole corresponding slash that + is copied into the result buffer. + + Return NULL if malloc fails. */ + +char * +mfile_name_concat (char const *dir, char const *abase, char **base_in_result) +{ + char const *dirbase = last_component (dir); + size_t dirbaselen = base_len (dirbase); + size_t dirlen = dirbase - dir + dirbaselen; + size_t needs_separator = (dirbaselen && ! ISSLASH (dirbase[dirbaselen - 1])); + + char const *base = longest_relative_suffix (abase); + size_t baselen = strlen (base); + + char *p_concat = malloc (dirlen + needs_separator + baselen + 1); + char *p; + + if (p_concat == NULL) + return NULL; + + p = mempcpy (p_concat, dir, dirlen); + *p = DIRECTORY_SEPARATOR; + p += needs_separator; + + if (base_in_result) + *base_in_result = p - IS_ABSOLUTE_FILE_NAME (abase); + + p = mempcpy (p, base, baselen); + *p = '\0'; + + return p_concat; +} diff --git a/gnu/same.h b/gnu/filenamecat.h similarity index 64% rename from gnu/same.h rename to gnu/filenamecat.h index c4b58fd..40a26d3 100644 --- a/gnu/same.h +++ b/gnu/filenamecat.h @@ -1,8 +1,9 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* Determine whether two file names refer to the same file. +/* Concatenate two arbitrary file names. - Copyright (C) 1997-2000, 2003-2004, 2009-2010 Free Software Foundation, Inc. + Copyright (C) 1996-1997, 2003, 2005, 2007, 2009-2010 Free Software + Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,11 +18,12 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#ifndef SAME_H_ -# define SAME_H_ 1 +/* Written by Jim Meyering. */ -# include +#if GNULIB_FILENAMECAT +char *file_name_concat (char const *dir, char const *base, + char **base_in_result); +#endif -bool same_name (const char *source, const char *dest); - -#endif /* SAME_H_ */ +char *mfile_name_concat (char const *dir, char const *base, + char **base_in_result); diff --git a/gnu/float+.h b/gnu/float+.h index 4a120b7..08b9bce 100644 --- a/gnu/float+.h +++ b/gnu/float+.h @@ -143,8 +143,8 @@ #define SIZEOF_LDBL ((LDBL_TOTAL_BIT + CHAR_BIT - 1) / CHAR_BIT) /* Verify that SIZEOF_FLT <= sizeof (float) etc. */ -typedef int verify_sizeof_flt[2 * (SIZEOF_FLT <= sizeof (float)) - 1]; -typedef int verify_sizeof_dbl[2 * (SIZEOF_DBL <= sizeof (double)) - 1]; -typedef int verify_sizeof_ldbl[2 * (SIZEOF_LDBL <= sizeof (long double)) - 1]; +typedef int verify_sizeof_flt[SIZEOF_FLT <= sizeof (float) ? 1 : -1]; +typedef int verify_sizeof_dbl[SIZEOF_DBL <= sizeof (double) ? 1 : - 1]; +typedef int verify_sizeof_ldbl[SIZEOF_LDBL <= sizeof (long double) ? 1 : - 1]; #endif /* _FLOATPLUS_H */ diff --git a/gnu/float.in.h b/gnu/float.in.h index 9ec97ab..cc2dbdf 100644 --- a/gnu/float.in.h +++ b/gnu/float.in.h @@ -22,6 +22,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* The include_next requires a split double-inclusion guard. */ #@INCLUDE_NEXT@ @NEXT_FLOAT_H@ diff --git a/gnu/fseeko.c b/gnu/fseeko.c index 03a4d99..5eb256a 100644 --- a/gnu/fseeko.c +++ b/gnu/fseeko.c @@ -27,14 +27,13 @@ #include "stdio-impl.h" +int +fseeko (FILE *fp, off_t offset, int whence) #undef fseeko #if !HAVE_FSEEKO # undef fseek # define fseeko fseek #endif - -int -rpl_fseeko (FILE *fp, off_t offset, int whence) { #if LSEEK_PIPE_BROKEN /* mingw gives bogus answers rather than failure on non-seekable files. */ diff --git a/gnu/ftruncate.c b/gnu/ftruncate.c deleted file mode 100644 index 39b4bda..0000000 --- a/gnu/ftruncate.c +++ /dev/null @@ -1,92 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* ftruncate emulations that work on some System V's. - This file is in the public domain. */ - -#include - -/* Specification. */ -#include - -#include -#include - -#ifdef F_CHSIZE - -int -ftruncate (int fd, off_t length) -{ - return fcntl (fd, F_CHSIZE, length); -} - -#else /* not F_CHSIZE */ -# ifdef F_FREESP - -/* By William Kucharski . */ - -# include -# include - -int -ftruncate (int fd, off_t length) -{ - struct flock fl; - struct stat filebuf; - - if (fstat (fd, &filebuf) < 0) - return -1; - - if (filebuf.st_size < length) - { - /* Extend file length. */ - if (lseek (fd, (length - 1), SEEK_SET) < 0) - return -1; - - /* Write a "0" byte. */ - if (write (fd, "", 1) != 1) - return -1; - } - else - { - - /* Truncate length. */ - - fl.l_whence = 0; - fl.l_len = 0; - fl.l_start = length; - fl.l_type = F_WRLCK; /* write lock on file space */ - - /* This relies on the *undocumented* F_FREESP argument to fcntl, - which truncates the file so that it ends at the position - indicated by fl.l_start. Will minor miracles never cease? */ - - if (fcntl (fd, F_FREESP, &fl) < 0) - return -1; - } - - return 0; -} - -# else /* not F_CHSIZE nor F_FREESP */ -# if HAVE_CHSIZE /* native Windows, e.g. mingw */ - -int -ftruncate (int fd, off_t length) -{ - return chsize (fd, length); -} - -# else /* not F_CHSIZE nor F_FREESP nor HAVE_CHSIZE */ - -# include - -int -ftruncate (int fd, off_t length) -{ - errno = EIO; - return -1; -} - -# endif /* not HAVE_CHSIZE */ -# endif /* not F_FREESP */ -#endif /* not F_CHSIZE */ diff --git a/gnu/futimens.c b/gnu/futimens.c new file mode 100644 index 0000000..4e8f894 --- /dev/null +++ b/gnu/futimens.c @@ -0,0 +1,39 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Set the access and modification time of an open fd. + Copyright (C) 2009, 2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +#include "utimens.h" + +/* Set the access and modification time stamps of FD to be + TIMESPEC[0] and TIMESPEC[1], respectively. + Fail with ENOSYS on systems without futimes (or equivalent). + If TIMESPEC is null, set the time stamps to the current time. + Return 0 on success, -1 (setting errno) on failure. */ +int +futimens (int fd, struct timespec const times[2]) +{ + /* fdutimens also works around bugs in native futimens, when running + with glibc compiled against newer headers but on a Linux kernel + older than 2.6.32. */ + return fdutimens (fd, NULL, times); +} diff --git a/gnu/getcwd.c b/gnu/getcwd.c index 504448f..2ccca79 100644 --- a/gnu/getcwd.c +++ b/gnu/getcwd.c @@ -138,13 +138,11 @@ __getcwd (char *buf, size_t size) size_t allocated = size; size_t used; -#if HAVE_PARTLY_WORKING_GETCWD - /* The system getcwd works, except it sometimes fails when it - shouldn't, setting errno to ERANGE, ENAMETOOLONG, or ENOENT. If - AT_FDCWD is not defined, the algorithm below is O(N**2) and this - is much slower than the system getcwd (at least on GNU/Linux). - So trust the system getcwd's results unless they look - suspicious. +#if HAVE_RAW_DECL_GETCWD + /* If AT_FDCWD is not defined, the algorithm below is O(N**2) and + this is much slower than the system getcwd (at least on + GNU/Linux). So trust the system getcwd's results unless they + look suspicious. Use the system getcwd even if we have openat support, since the system getcwd works even when a parent is unreadable, while the @@ -152,8 +150,27 @@ __getcwd (char *buf, size_t size) # undef getcwd dir = getcwd (buf, size); - if (dir || (errno != ERANGE && errno != ENAMETOOLONG && errno != ENOENT)) + if (dir) return dir; + + /* Solaris getcwd (NULL, 0) fails with errno == EINVAL, but it has + internal magic that lets it work even if an ancestor directory is + inaccessible, which is better in many cases. So in this case try + again with a buffer that's almost always big enough. */ + if (errno == EINVAL && buf == NULL && size == 0) + { + char big_buffer[BIG_FILE_NAME_LENGTH + 1]; + dir = getcwd (big_buffer, sizeof big_buffer); + if (dir) + return strdup (dir); + } + +# if HAVE_PARTLY_WORKING_GETCWD + /* The system getcwd works, except it sometimes fails when it + shouldn't, setting errno to ERANGE, ENAMETOOLONG, or ENOENT. */ + if (errno != ERANGE && errno != ENAMETOOLONG && errno != ENOENT) + return NULL; +# endif #endif if (size == 0) @@ -232,8 +249,6 @@ __getcwd (char *buf, size_t size) dirstream = fdopendir (fd); if (dirstream == NULL) goto lose; - /* Reset fd. It may have been closed by fdopendir. */ - fd = dirfd (dirstream); fd_needs_closing = false; #else dirstream = __opendir (dotlist); diff --git a/gnu/getopt.c b/gnu/getopt.c index 0c13f23..6eae49e 100644 --- a/gnu/getopt.c +++ b/gnu/getopt.c @@ -43,10 +43,6 @@ # include #endif -#ifndef attribute_hidden -# define attribute_hidden -#endif - /* This version of `getopt' appears to the caller like standard Unix `getopt' but it behaves differently for the user, since it allows the user to intersperse the options with the other arguments. @@ -354,8 +350,6 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, int long_only, struct _getopt_data *d, int posixly_correct) { int print_errors = d->opterr; - if (optstring[0] == ':') - print_errors = 0; if (argc < 1) return -1; @@ -370,6 +364,10 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, posixly_correct); d->__initialized = 1; } + else if (optstring[0] == '-' || optstring[0] == '+') + optstring++; + if (optstring[0] == ':') + print_errors = 0; /* Test whether ARGV[optind] points to a non-option argument. Either it does not have option syntax, or there is an environment flag @@ -639,8 +637,8 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, char *buf; if (__asprintf (&buf, _("\ -%s: option '%s' requires an argument\n"), - argv[0], argv[d->optind - 1]) >= 0) +%s: option '--%s' requires an argument\n"), + argv[0], pfound->name) >= 0) { _IO_flockfile (stderr); @@ -657,8 +655,8 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, } #else fprintf (stderr, - _("%s: option '%s' requires an argument\n"), - argv[0], argv[d->optind - 1]); + _("%s: option '--%s' requires an argument\n"), + argv[0], pfound->name); #endif } d->__nextchar += strlen (d->__nextchar); @@ -742,13 +740,13 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, { char c = *d->__nextchar++; - char *temp = strchr (optstring, c); + const char *temp = strchr (optstring, c); /* Increment `optind' when we start to process its last character. */ if (*d->__nextchar == '\0') ++d->optind; - if (temp == NULL || c == ':') + if (temp == NULL || c == ':' || c == ';') { if (print_errors) { @@ -870,7 +868,10 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, pfound = p; indfound = option_index; } - else + else if (long_only + || pfound->has_arg != p->has_arg + || pfound->flag != p->flag + || pfound->val != p->val) /* Second or later nonexact match found. */ ambig = 1; } @@ -882,7 +883,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, char *buf; if (__asprintf (&buf, _("%s: option '-W %s' is ambiguous\n"), - argv[0], argv[d->optind]) >= 0) + argv[0], d->optarg) >= 0) { _IO_flockfile (stderr); @@ -898,7 +899,7 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, } #else fprintf (stderr, _("%s: option '-W %s' is ambiguous\n"), - argv[0], argv[d->optind]); + argv[0], d->optarg); #endif } d->__nextchar += strlen (d->__nextchar); @@ -961,8 +962,8 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, char *buf; if (__asprintf (&buf, _("\ -%s: option '%s' requires an argument\n"), - argv[0], argv[d->optind - 1]) >= 0) +%s: option '-W %s' requires an argument\n"), + argv[0], pfound->name) >= 0) { _IO_flockfile (stderr); @@ -978,15 +979,17 @@ _getopt_internal_r (int argc, char **argv, const char *optstring, free (buf); } #else - fprintf (stderr, - _("%s: option '%s' requires an argument\n"), - argv[0], argv[d->optind - 1]); + fprintf (stderr, _("\ +%s: option '-W %s' requires an argument\n"), + argv[0], pfound->name); #endif } d->__nextchar += strlen (d->__nextchar); return optstring[0] == ':' ? ':' : '?'; } } + else + d->optarg = NULL; d->__nextchar += strlen (d->__nextchar); if (longind != NULL) *longind = option_index; diff --git a/gnu/getopt.in.h b/gnu/getopt.in.h index 3478945..d077edc 100644 --- a/gnu/getopt.in.h +++ b/gnu/getopt.in.h @@ -23,6 +23,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* The include_next requires a split double-inclusion guard. We must also inform the replacement unistd.h to not recursively use diff --git a/gnu/getopt_int.h b/gnu/getopt_int.h index 0095d44..697689c 100644 --- a/gnu/getopt_int.h +++ b/gnu/getopt_int.h @@ -32,6 +32,40 @@ extern int _getopt_internal (int ___argc, char **___argv, /* Reentrant versions which can handle parsing multiple argument vectors at the same time. */ +/* Describe how to deal with options that follow non-option ARGV-elements. + + If the caller did not specify anything, + the default is REQUIRE_ORDER if the environment variable + POSIXLY_CORRECT is defined, PERMUTE otherwise. + + REQUIRE_ORDER means don't recognize them as options; + stop option processing when the first non-option is seen. + This is what Unix does. + This mode of operation is selected by either setting the environment + variable POSIXLY_CORRECT, or using `+' as the first character + of the list of option characters, or by calling getopt. + + PERMUTE is the default. We permute the contents of ARGV as we + scan, so that eventually all the non-options are at the end. + This allows options to be given in any order, even with programs + that were not written to expect this. + + RETURN_IN_ORDER is an option available to programs that were + written to expect options and other ARGV-elements in any order + and that care about the ordering of the two. We describe each + non-option ARGV-element as if it were the argument of an option + with character code 1. Using `-' as the first character of the + list of option characters selects this mode of operation. + + The special argument `--' forces an end of option-scanning regardless + of the value of `ordering'. In the case of RETURN_IN_ORDER, only + `--' can cause `getopt' to return -1 with `optind' != ARGC. */ + +enum __ord + { + REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER + }; + /* Data type for reentrant functions. */ struct _getopt_data { @@ -56,39 +90,8 @@ struct _getopt_data by advancing to the next ARGV-element. */ char *__nextchar; - /* Describe how to deal with options that follow non-option ARGV-elements. - - If the caller did not specify anything, - the default is REQUIRE_ORDER if the environment variable - POSIXLY_CORRECT is defined, PERMUTE otherwise. - - REQUIRE_ORDER means don't recognize them as options; - stop option processing when the first non-option is seen. - This is what Unix does. - This mode of operation is selected by either setting the environment - variable POSIXLY_CORRECT, or using `+' as the first character - of the list of option characters, or by calling getopt. - - PERMUTE is the default. We permute the contents of ARGV as we - scan, so that eventually all the non-options are at the end. - This allows options to be given in any order, even with programs - that were not written to expect this. - - RETURN_IN_ORDER is an option available to programs that were - written to expect options and other ARGV-elements in any order - and that care about the ordering of the two. We describe each - non-option ARGV-element as if it were the argument of an option - with character code 1. Using `-' as the first character of the - list of option characters selects this mode of operation. - - The special argument `--' forces an end of option-scanning regardless - of the value of `ordering'. In the case of RETURN_IN_ORDER, only - `--' can cause `getopt' to return -1 with `optind' != ARGC. */ - - enum - { - REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER - } __ordering; + /* See __ord above. */ + enum __ord __ordering; /* If the POSIXLY_CORRECT environment variable is set or getopt was called. */ diff --git a/gnu/gettext.h b/gnu/gettext.h index 360d176..0b054db 100644 --- a/gnu/gettext.h +++ b/gnu/gettext.h @@ -83,7 +83,7 @@ ((void) (Domainname), ngettext (Msgid1, Msgid2, N)) # undef dcngettext # define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \ - ((void) (Category), dngettext(Domainname, Msgid1, Msgid2, N)) + ((void) (Category), dngettext (Domainname, Msgid1, Msgid2, N)) # undef textdomain # define textdomain(Domainname) ((const char *) (Domainname)) # undef bindtextdomain diff --git a/gnu/hash-pjw.h b/gnu/hash-pjw.h deleted file mode 100644 index 5f674d5..0000000 --- a/gnu/hash-pjw.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* hash-pjw.h -- declaration for a simple hash function - Copyright (C) 2001, 2003, 2009-2010 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Compute a hash code for a NUL-terminated string starting at X, - and return the hash code modulo TABLESIZE. - The result is platform dependent: it depends on the size of the 'size_t' - type and on the signedness of the 'char' type. */ -extern size_t hash_pjw (void const *x, size_t tablesize); diff --git a/gnu/hash-triple.c b/gnu/hash-triple.c deleted file mode 100644 index 6a44520..0000000 --- a/gnu/hash-triple.c +++ /dev/null @@ -1,79 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* Hash functions for file-related triples: name, device, inode. - Copyright (C) 2007, 2009-2010 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Jim Meyering */ - -#include - -#include "hash-triple.h" - -#include -#include - -#include "hash-pjw.h" -#include "same.h" -#include "same-inode.h" - -#define STREQ(a, b) (strcmp (a, b) == 0) - -/* Hash an F_triple, and *do* consider the file name. */ -size_t -triple_hash (void const *x, size_t table_size) -{ - struct F_triple const *p = x; - size_t tmp = hash_pjw (p->name, table_size); - - /* Ignoring the device number here should be fine. */ - return (tmp ^ p->st_ino) % table_size; -} - -/* Hash an F_triple, without considering the file name. */ -size_t -triple_hash_no_name (void const *x, size_t table_size) -{ - struct F_triple const *p = x; - - /* Ignoring the device number here should be fine. */ - return p->st_ino % table_size; -} - -/* Compare two F_triple structs. */ -bool -triple_compare (void const *x, void const *y) -{ - struct F_triple const *a = x; - struct F_triple const *b = y; - return (SAME_INODE (*a, *b) && same_name (a->name, b->name)) ? true : false; -} - -bool -triple_compare_ino_str (void const *x, void const *y) -{ - struct F_triple const *a = x; - struct F_triple const *b = y; - return (SAME_INODE (*a, *b) && STREQ (a->name, b->name)) ? true : false; -} - -/* Free an F_triple. */ -void -triple_free (void *x) -{ - struct F_triple *a = x; - free (a->name); - free (a); -} diff --git a/gnu/hash-triple.h b/gnu/hash-triple.h deleted file mode 100644 index 39bb335..0000000 --- a/gnu/hash-triple.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -#ifndef HASH_TRIPLE_H -#define HASH_TRIPLE_H - -#include -#include -#include - -/* Describe a just-created or just-renamed destination file. */ -struct F_triple -{ - char *name; - ino_t st_ino; - dev_t st_dev; -}; - -extern size_t triple_hash (void const *x, size_t table_size); -extern size_t triple_hash_no_name (void const *x, size_t table_size); -extern bool triple_compare (void const *x, void const *y); -extern bool triple_compare_ino_str (void const *x, void const *y); -extern void triple_free (void *x); - -#endif diff --git a/gnu/hash.c b/gnu/hash.c index 2278c30..c49d34d 100644 --- a/gnu/hash.c +++ b/gnu/hash.c @@ -245,19 +245,26 @@ hash_print_statistics (const Hash_table *table, FILE *stream) (unsigned long int) max_bucket_length); } +/* Hash KEY and return a pointer to the selected bucket. + If TABLE->hasher misbehaves, abort. */ +static struct hash_entry * +safe_hasher (const Hash_table *table, const void *key) +{ + size_t n = table->hasher (key, table->n_buckets); + if (! (n < table->n_buckets)) + abort (); + return table->bucket + n; +} + /* If ENTRY matches an entry already in the hash table, return the entry from the table. Otherwise, return NULL. */ void * hash_lookup (const Hash_table *table, const void *entry) { - struct hash_entry const *bucket - = table->bucket + table->hasher (entry, table->n_buckets); + struct hash_entry const *bucket = safe_hasher (table, entry); struct hash_entry const *cursor; - if (! (bucket < table->bucket_limit)) - abort (); - if (bucket->data == NULL) return NULL; @@ -301,17 +308,18 @@ hash_get_first (const Hash_table *table) void * hash_get_next (const Hash_table *table, const void *entry) { - struct hash_entry const *bucket - = table->bucket + table->hasher (entry, table->n_buckets); + struct hash_entry const *bucket = safe_hasher (table, entry); struct hash_entry const *cursor; - if (! (bucket < table->bucket_limit)) - abort (); - /* Find next entry in the same bucket. */ - for (cursor = bucket; cursor; cursor = cursor->next) - if (cursor->data == entry && cursor->next) - return cursor->next->data; + cursor = bucket; + do + { + if (cursor->data == entry && cursor->next) + return cursor->next->data; + cursor = cursor->next; + } + while (cursor != NULL); /* Find first entry in any subsequent bucket. */ while (++bucket < table->bucket_limit) @@ -784,13 +792,9 @@ static void * hash_find_entry (Hash_table *table, const void *entry, struct hash_entry **bucket_head, bool delete) { - struct hash_entry *bucket - = table->bucket + table->hasher (entry, table->n_buckets); + struct hash_entry *bucket = safe_hasher (table, entry); struct hash_entry *cursor; - if (! (bucket < table->bucket_limit)) - abort (); - *bucket_head = bucket; /* Test for empty bucket. */ @@ -875,10 +879,7 @@ transfer_entries (Hash_table *dst, Hash_table *src, bool safe) for (cursor = bucket->next; cursor; cursor = next) { data = cursor->data; - new_bucket = (dst->bucket + dst->hasher (data, dst->n_buckets)); - - if (! (new_bucket < dst->bucket_limit)) - abort (); + new_bucket = safe_hasher (dst, data); next = cursor->next; @@ -905,10 +906,7 @@ transfer_entries (Hash_table *dst, Hash_table *src, bool safe) bucket->next = NULL; if (safe) continue; - new_bucket = (dst->bucket + dst->hasher (data, dst->n_buckets)); - - if (! (new_bucket < dst->bucket_limit)) - abort (); + new_bucket = safe_hasher (dst, data); if (new_bucket->data) { @@ -1022,25 +1020,39 @@ hash_rehash (Hash_table *table, size_t candidate) return false; } -/* If ENTRY matches an entry already in the hash table, return the pointer - to the entry from the table. Otherwise, insert ENTRY and return ENTRY. - Return NULL if the storage required for insertion cannot be allocated. - This implementation does not support duplicate entries or insertion of - NULL. */ - -void * -hash_insert (Hash_table *table, const void *entry) +/* Return -1 upon memory allocation failure. + Return 1 if insertion succeeded. + Return 0 if there is already a matching entry in the table, + and in that case, if MATCHED_ENT is non-NULL, set *MATCHED_ENT + to that entry. + + This interface is easier to use than hash_insert when you must + distinguish between the latter two cases. More importantly, + hash_insert is unusable for some types of ENTRY values. When using + hash_insert, the only way to distinguish those cases is to compare + the return value and ENTRY. That works only when you can have two + different ENTRY values that point to data that compares "equal". Thus, + when the ENTRY value is a simple scalar, you must use hash_insert0. + ENTRY must not be NULL. */ +int +hash_insert0 (Hash_table *table, void const *entry, void const **matched_ent) { void *data; struct hash_entry *bucket; - /* The caller cannot insert a NULL entry. */ + /* The caller cannot insert a NULL entry, since hash_lookup returns NULL + to indicate "not found", and hash_find_entry uses "bucket->data == NULL" + to indicate an empty bucket. */ if (! entry) abort (); /* If there's a matching entry already in the table, return that. */ if ((data = hash_find_entry (table, entry, &bucket, false)) != NULL) - return data; + { + if (matched_ent) + *matched_ent = data; + return 0; + } /* If the growth threshold of the buckets in use has been reached, increase the table size and rehash. There's no point in checking the number of @@ -1064,11 +1076,11 @@ hash_insert (Hash_table *table, const void *entry) * tuning->growth_threshold)); if (SIZE_MAX <= candidate) - return NULL; + return -1; /* If the rehash fails, arrange to return NULL. */ if (!hash_rehash (table, candidate)) - return NULL; + return -1; /* Update the bucket we are interested in. */ if (hash_find_entry (table, entry, &bucket, false) != NULL) @@ -1083,7 +1095,7 @@ hash_insert (Hash_table *table, const void *entry) struct hash_entry *new_entry = allocate_entry (table); if (new_entry == NULL) - return NULL; + return -1; /* Add ENTRY in the overflow of the bucket. */ @@ -1091,7 +1103,7 @@ hash_insert (Hash_table *table, const void *entry) new_entry->next = bucket->next; bucket->next = new_entry; table->n_entries++; - return (void *) entry; + return 1; } /* Add ENTRY right in the bucket head. */ @@ -1100,7 +1112,23 @@ hash_insert (Hash_table *table, const void *entry) table->n_entries++; table->n_buckets_used++; - return (void *) entry; + return 1; +} + +/* If ENTRY matches an entry already in the hash table, return the pointer + to the entry from the table. Otherwise, insert ENTRY and return ENTRY. + Return NULL if the storage required for insertion cannot be allocated. + This implementation does not support duplicate entries or insertion of + NULL. */ + +void * +hash_insert (Hash_table *table, void const *entry) +{ + void const *matched_ent; + int err = hash_insert0 (table, entry, &matched_ent); + return (err == -1 + ? NULL + : (void *) (err == 0 ? matched_ent : entry)); } /* If ENTRY is already in the table, remove it and return the just-deleted diff --git a/gnu/hash.h b/gnu/hash.h index 9db3374..98f965d 100644 --- a/gnu/hash.h +++ b/gnu/hash.h @@ -90,6 +90,8 @@ void hash_free (Hash_table *); /* Insertion and deletion. */ bool hash_rehash (Hash_table *, size_t) ATTRIBUTE_WUR; void *hash_insert (Hash_table *, const void *) ATTRIBUTE_WUR; +int hash_insert0 (Hash_table *table, const void *entry, + const void **matched_ent); void *hash_delete (Hash_table *, const void *); #endif diff --git a/gnu/imaxtostr.c b/gnu/imaxtostr.c index af7316d..86fd3aa 100644 --- a/gnu/imaxtostr.c +++ b/gnu/imaxtostr.c @@ -1,6 +1,6 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -#define inttostr imaxtostr +#define anytostr imaxtostr #define inttype intmax_t #define inttype_is_signed 1 -#include "inttostr.c" +#include "anytostr.c" diff --git a/gnu/inttostr.c b/gnu/inttostr.c index d4f99cc..1bba4a0 100644 --- a/gnu/inttostr.c +++ b/gnu/inttostr.c @@ -1,56 +1,6 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* inttostr.c -- convert integers to printable strings - - Copyright (C) 2001, 2006, 2008, 2009, 2010 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert */ - -#include - -#include "inttostr.h" -#include "verify.h" - -/* Convert I to a printable string in BUF, which must be at least - INT_BUFSIZE_BOUND (INTTYPE) bytes long. Return the address of the - printable string, which need not start at BUF. */ - -char * -inttostr (inttype i, char *buf) -{ - char *p = buf + INT_STRLEN_BOUND (inttype); - *p = 0; - - verify (TYPE_SIGNED (inttype) == inttype_is_signed); -#if inttype_is_signed - if (i < 0) - { - do - *--p = '0' - i % 10; - while ((i /= 10) != 0); - - *--p = '-'; - } - else -#endif - { - do - *--p = '0' + i % 10; - while ((i /= 10) != 0); - } - - return p; -} +#define anytostr inttostr +#define inttype int +#define inttype_is_signed 1 +#include "anytostr.c" diff --git a/gnu/inttostr.h b/gnu/inttostr.h index 8b6dbce..edd0145 100644 --- a/gnu/inttostr.h +++ b/gnu/inttostr.h @@ -41,7 +41,8 @@ # define __attribute_warn_unused_result__ /* empty */ #endif -char *offtostr (off_t, char *) __attribute_warn_unused_result__; char *imaxtostr (intmax_t, char *) __attribute_warn_unused_result__; -char *umaxtostr (uintmax_t, char *) __attribute_warn_unused_result__; +char *inttostr (int, char *) __attribute_warn_unused_result__; +char *offtostr (off_t, char *) __attribute_warn_unused_result__; char *uinttostr (unsigned int, char *) __attribute_warn_unused_result__; +char *umaxtostr (uintmax_t, char *) __attribute_warn_unused_result__; diff --git a/gnu/inttypes.in.h b/gnu/inttypes.in.h index 27deaa7..ce8fab3 100644 --- a/gnu/inttypes.in.h +++ b/gnu/inttypes.in.h @@ -22,15 +22,17 @@ * */ +#if __GNUC__ >= 3 +@PRAGMA_SYSTEM_HEADER@ +#endif +@PRAGMA_COLUMNS@ + /* Include the original if it exists, and if this file has not been included yet or if this file includes gnulib stdint.h which in turn includes this file. The include_next requires a split double-inclusion guard. */ #if ! defined INTTYPES_H || defined _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H # if @HAVE_INTTYPES_H@ -# if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -# endif # @INCLUDE_NEXT@ @NEXT_INTTYPES_H@ # endif #endif diff --git a/gnu/langinfo.in.h b/gnu/langinfo.in.h index 5a41111..95b8d57 100644 --- a/gnu/langinfo.in.h +++ b/gnu/langinfo.in.h @@ -27,6 +27,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* The include_next requires a split double-inclusion guard. */ #if @HAVE_LANGINFO_H@ @@ -114,6 +115,11 @@ typedef int nl_item; # define GNULIB_defined_CODESET 1 # endif +# if !@HAVE_LANGINFO_T_FMT_AMPM@ +# define T_FMT_AMPM 10006 +# define GNULIB_defined_T_FMT_AMPM 1 +# endif + # if !@HAVE_LANGINFO_ERA@ # define ERA 10047 # define ERA_D_FMT 10048 @@ -123,6 +129,12 @@ typedef int nl_item; # define GNULIB_defined_ERA 1 # endif +# if !@HAVE_LANGINFO_YESEXPR@ +# define YESEXPR 10053 +# define NOEXPR 10054 +# define GNULIB_defined_YESEXPR 1 +# endif + #endif /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ diff --git a/gnu/lchown.c b/gnu/lchown.c index 0753010..8daaa2b 100644 --- a/gnu/lchown.c +++ b/gnu/lchown.c @@ -72,11 +72,12 @@ lchown (const char *file, uid_t uid, gid_t gid) int rpl_lchown (const char *file, uid_t uid, gid_t gid) { - struct stat st; bool stat_valid = false; int result; # if CHOWN_CHANGE_TIME_BUG + struct stat st; + if (gid != (gid_t) -1 || uid != (uid_t) -1) { if (lstat (file, &st)) diff --git a/gnu/link.c b/gnu/link.c new file mode 100644 index 0000000..9b988bc --- /dev/null +++ b/gnu/link.c @@ -0,0 +1,205 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Emulate link on platforms that lack it, namely native Windows platforms. + + Copyright (C) 2009, 2010 Free Software Foundation, Inc. + + This program is free software; you can redistribute 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, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +#include + +#include + +#include +#include +#include +#include + +#if !HAVE_LINK +# if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ + +# define WIN32_LEAN_AND_MEAN +# include + +/* CreateHardLink was introduced only in Windows 2000. */ +typedef BOOL (WINAPI * CreateHardLinkFuncType) (LPCTSTR lpFileName, + LPCTSTR lpExistingFileName, + LPSECURITY_ATTRIBUTES lpSecurityAttributes); +static CreateHardLinkFuncType CreateHardLinkFunc = NULL; +static BOOL initialized = FALSE; + +static void +initialize (void) +{ + HMODULE kernel32 = GetModuleHandle ("kernel32.dll"); + if (kernel32 != NULL) + { + CreateHardLinkFunc = + (CreateHardLinkFuncType) GetProcAddress (kernel32, "CreateHardLinkA"); + } + initialized = TRUE; +} + +int +link (const char *file1, const char *file2) +{ + char *dir; + size_t len1 = strlen (file1); + size_t len2 = strlen (file2); + if (!initialized) + initialize (); + if (CreateHardLinkFunc == NULL) + { + /* System does not support hard links. */ + errno = EPERM; + return -1; + } + /* Reject trailing slashes on non-directories; mingw does not + support hard-linking directories. */ + if ((len1 && (file1[len1 - 1] == '/' || file1[len1 - 1] == '\\')) + || (len2 && (file2[len2 - 1] == '/' || file2[len2 - 1] == '\\'))) + { + struct stat st; + if (stat (file1, &st) == 0 && S_ISDIR (st.st_mode)) + errno = EPERM; + else + errno = ENOTDIR; + return -1; + } + /* CreateHardLink("b/.","a",NULL) creates file "b", so we must check + that dirname(file2) exists. */ + dir = strdup (file2); + if (!dir) + return -1; + { + struct stat st; + char *p = strchr (dir, '\0'); + while (dir < p && (*--p != '/' && *p != '\\')); + *p = '\0'; + if (p != dir && stat (dir, &st) == -1) + { + int saved_errno = errno; + free (dir); + errno = saved_errno; + return -1; + } + free (dir); + } + /* Now create the link. */ + if (CreateHardLinkFunc (file2, file1, NULL) == 0) + { + /* It is not documented which errors CreateHardLink() can produce. + * The following conversions are based on tests on a Windows XP SP2 + * system. */ + DWORD err = GetLastError (); + switch (err) + { + case ERROR_ACCESS_DENIED: + errno = EACCES; + break; + + case ERROR_INVALID_FUNCTION: /* fs does not support hard links */ + errno = EPERM; + break; + + case ERROR_NOT_SAME_DEVICE: + errno = EXDEV; + break; + + case ERROR_PATH_NOT_FOUND: + case ERROR_FILE_NOT_FOUND: + errno = ENOENT; + break; + + case ERROR_INVALID_PARAMETER: + errno = ENAMETOOLONG; + break; + + case ERROR_TOO_MANY_LINKS: + errno = EMLINK; + break; + + case ERROR_ALREADY_EXISTS: + errno = EEXIST; + break; + + default: + errno = EIO; + } + return -1; + } + + return 0; +} + +# else /* !Windows */ + +# error "This platform lacks a link function, and Gnulib doesn't provide a replacement. This is a bug in Gnulib." + +# endif /* !Windows */ +#else /* HAVE_LINK */ + +# undef link + +/* Create a hard link from FILE1 to FILE2, working around platform bugs. */ +int +rpl_link (char const *file1, char const *file2) +{ + /* Reject trailing slashes on non-directories. */ + size_t len1 = strlen (file1); + size_t len2 = strlen (file2); + if ((len1 && file1[len1 - 1] == '/') + || (len2 && file2[len2 - 1] == '/')) + { + /* Let link() decide whether hard-linking directories is legal. + If stat() fails, then link() should fail for the same reason + (although on Solaris 9, link("file/","oops") mistakenly + succeeds); if stat() succeeds, require a directory. */ + struct stat st; + if (stat (file1, &st)) + return -1; + if (!S_ISDIR (st.st_mode)) + { + errno = ENOTDIR; + return -1; + } + } + else + { + /* Fix Cygwin 1.5.x bug where link("a","b/.") creates file "b". */ + char *dir = strdup (file2); + struct stat st; + char *p; + if (!dir) + return -1; + /* We already know file2 does not end in slash. Strip off the + basename, then check that the dirname exists. */ + p = strrchr (dir, '/'); + if (p) + { + *p = '\0'; + if (stat (dir, &st) == -1) + { + int saved_errno = errno; + free (dir); + errno = saved_errno; + return -1; + } + } + free (dir); + } + return link (file1, file2); +} +#endif /* HAVE_LINK */ diff --git a/gnu/linkat.c b/gnu/linkat.c new file mode 100644 index 0000000..1f855cb --- /dev/null +++ b/gnu/linkat.c @@ -0,0 +1,316 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Create a hard link relative to open directories. + Copyright (C) 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +#include +#include +#include +#include +#include +#include +#include + +#include "areadlink.h" +#include "dirname.h" +#include "filenamecat.h" +#include "openat-priv.h" + +#if HAVE_SYS_PARAM_H +# include +#endif +#ifndef MAXSYMLINKS +# ifdef SYMLOOP_MAX +# define MAXSYMLINKS SYMLOOP_MAX +# else +# define MAXSYMLINKS 20 +# endif +#endif + +#if !HAVE_LINKAT + +/* Create a link. If FILE1 is a symlink, either create a hardlink to + that symlink, or fake it by creating an identical symlink. */ +# if LINK_FOLLOWS_SYMLINKS == 0 +# define link_immediate link +# else +static int +link_immediate (char const *file1, char const *file2) +{ + char *target = areadlink (file1); + if (target) + { + /* A symlink cannot be modified in-place. Therefore, creating + an identical symlink behaves like a hard link to a symlink, + except for incorrect st_ino and st_nlink. However, we must + be careful of EXDEV. */ + struct stat st1; + struct stat st2; + char *dir = mdir_name (file2); + if (!dir) + { + free (target); + errno = ENOMEM; + return -1; + } + if (lstat (file1, &st1) == 0 && stat (dir, &st2) == 0) + { + if (st1.st_dev == st2.st_dev) + { + int result = symlink (target, file2); + int saved_errno = errno; + free (target); + free (dir); + errno = saved_errno; + return result; + } + free (target); + free (dir); + errno = EXDEV; + return -1; + } + free (target); + free (dir); + } + if (errno == ENOMEM) + return -1; + return link (file1, file2); +} +# endif /* LINK_FOLLOWS_SYMLINKS == 0 */ + +/* Create a link. If FILE1 is a symlink, create a hardlink to the + canonicalized file. */ +# if 0 < LINK_FOLLOWS_SYMLINKS +# define link_follow link +# else +static int +link_follow (char const *file1, char const *file2) +{ + char *name = (char *) file1; + char *target; + int result; + int i = MAXSYMLINKS; + + /* Using realpath or canonicalize_file_name is too heavy-handed: we + don't need an absolute name, and we don't need to resolve + intermediate symlinks, just the basename of each iteration. */ + while (i-- && (target = areadlink (name))) + { + if (IS_ABSOLUTE_FILE_NAME (target)) + { + if (name != file1) + free (name); + name = target; + } + else + { + char *dir = mdir_name (name); + if (name != file1) + free (name); + if (!dir) + { + free (target); + errno = ENOMEM; + return -1; + } + name = mfile_name_concat (dir, target, NULL); + free (dir); + free (target); + if (!name) + { + errno = ENOMEM; + return -1; + } + } + } + if (i < 0) + { + target = NULL; + errno = ELOOP; + } + if (!target && errno != EINVAL) + { + if (name != file1) + { + int saved_errno = errno; + free (name); + errno = saved_errno; + } + return -1; + } + result = link (name, file2); + if (name != file1) + { + int saved_errno = errno; + free (name); + errno = saved_errno; + } + return result; +} +# endif /* 0 < LINK_FOLLOWS_SYMLINKS */ + +/* Create a link to FILE1, in the directory open on descriptor FD1, to FILE2, + in the directory open on descriptor FD2. If FILE1 is a symlink, FLAG + controls whether to dereference FILE1 first. If possible, do it without + changing the working directory. Otherwise, resort to using + save_cwd/fchdir, then rename/restore_cwd. If either the save_cwd or + the restore_cwd fails, then give a diagnostic and exit nonzero. */ + +int +linkat (int fd1, char const *file1, int fd2, char const *file2, int flag) +{ + if (flag & ~AT_SYMLINK_FOLLOW) + { + errno = EINVAL; + return -1; + } + return at_func2 (fd1, file1, fd2, file2, + flag ? link_follow : link_immediate); +} + +#else /* HAVE_LINKAT */ + +# undef linkat + +/* Create a link. If FILE1 is a symlink, create a hardlink to the + canonicalized file. */ + +static int +linkat_follow (int fd1, char const *file1, int fd2, char const *file2) +{ + char *name = (char *) file1; + char *target; + int result; + int i = MAXSYMLINKS; + + /* There is no realpathat. */ + while (i-- && (target = areadlinkat (fd1, name))) + { + if (IS_ABSOLUTE_FILE_NAME (target)) + { + if (name != file1) + free (name); + name = target; + } + else + { + char *dir = mdir_name (name); + if (name != file1) + free (name); + if (!dir) + { + free (target); + errno = ENOMEM; + return -1; + } + name = mfile_name_concat (dir, target, NULL); + free (dir); + free (target); + if (!name) + { + errno = ENOMEM; + return -1; + } + } + } + if (i < 0) + { + target = NULL; + errno = ELOOP; + } + if (!target && errno != EINVAL) + { + if (name != file1) + { + int saved_errno = errno; + free (name); + errno = saved_errno; + } + return -1; + } + result = linkat (fd1, name, fd2, file2, 0); + if (name != file1) + { + int saved_errno = errno; + free (name); + errno = saved_errno; + } + return result; +} + + +/* Like linkat, but guarantee that AT_SYMLINK_FOLLOW works even on + older Linux kernels. */ + +int +rpl_linkat (int fd1, char const *file1, int fd2, char const *file2, int flag) +{ + if (flag & ~AT_SYMLINK_FOLLOW) + { + errno = EINVAL; + return -1; + } + +#if LINKAT_TRAILING_SLASH_BUG + /* Reject trailing slashes on non-directories. */ + { + size_t len1 = strlen (file1); + size_t len2 = strlen (file2); + if ((len1 && file1[len1 - 1] == '/') + || (len2 && file2[len2 - 1] == '/')) + { + /* Let linkat() decide whether hard-linking directories is legal. + If fstatat() fails, then linkat() should fail for the same reason; + if fstatat() succeeds, require a directory. */ + struct stat st; + if (fstatat (fd1, file1, &st, flag ? 0 : AT_SYMLINK_NOFOLLOW)) + return -1; + if (!S_ISDIR (st.st_mode)) + { + errno = ENOTDIR; + return -1; + } + } + } +#endif + + if (!flag) + return linkat (fd1, file1, fd2, file2, flag); + + /* Cache the information on whether the system call really works. */ + { + static int have_follow_really; /* 0 = unknown, 1 = yes, -1 = no */ + if (0 <= have_follow_really) + { + int result = linkat (fd1, file1, fd2, file2, flag); + if (!(result == -1 && errno == EINVAL)) + { + have_follow_really = 1; + return result; + } + have_follow_really = -1; + } + } + return linkat_follow (fd1, file1, fd2, file2); +} + +#endif /* HAVE_LINKAT */ diff --git a/gnu/localcharset.c b/gnu/localcharset.c index 4255174..794fec6 100644 --- a/gnu/localcharset.c +++ b/gnu/localcharset.c @@ -371,10 +371,9 @@ locale_charset (void) codeset = nl_langinfo (CODESET); # ifdef __CYGWIN__ - /* Cygwin 1.5.x does not have locales. nl_langinfo (CODESET) always - returns "US-ASCII". As long as this is not fixed, return the suffix - of the locale name from the environment variables (if present) or - the codepage as a number. */ + /* Cygwin < 1.7 does not have locales. nl_langinfo (CODESET) always + returns "US-ASCII". Return the suffix of the locale name from the + environment variables (if present) or the codepage as a number. */ if (codeset != NULL && strcmp (codeset, "US-ASCII") == 0) { const char *locale; diff --git a/gnu/malloc.c b/gnu/malloc.c index d9eec75..3daa858 100644 --- a/gnu/malloc.c +++ b/gnu/malloc.c @@ -23,8 +23,11 @@ #include /* Only the AC_FUNC_MALLOC macro defines 'malloc' already in config.h. */ #ifdef malloc -# define NEED_MALLOC_GNU +# define NEED_MALLOC_GNU 1 # undef malloc +/* Whereas the gnulib module 'malloc-gnu' defines HAVE_MALLOC_GNU. */ +#elif GNULIB_MALLOC_GNU && !HAVE_MALLOC_GNU +# define NEED_MALLOC_GNU 1 #endif /* Specification. */ @@ -43,7 +46,7 @@ rpl_malloc (size_t n) { void *result; -#ifdef NEED_MALLOC_GNU +#if NEED_MALLOC_GNU if (n == 0) n = 1; #endif diff --git a/gnu/malloca.c b/gnu/malloca.c index 6b59638..8992000 100644 --- a/gnu/malloca.c +++ b/gnu/malloca.c @@ -23,6 +23,11 @@ /* Specification. */ #include "malloca.h" +#include "verify.h" + +/* Use the system functions, not the gnulib overrides in this file. */ +#undef malloc + /* The speed critical point in this file is freea() applied to an alloca() result: it must be fast, to match the speed of alloca(). The speed of mmalloca() and freea() in the other case are not critical, because they @@ -52,8 +57,7 @@ struct preliminary_header { void *next; char room[MAGIC_SIZE]; }; #define HEADER_SIZE \ (((sizeof (struct preliminary_header) + sa_alignment_max - 1) / sa_alignment_max) * sa_alignment_max) struct header { void *next; char room[HEADER_SIZE - sizeof (struct preliminary_header) + MAGIC_SIZE]; }; -/* Verify that HEADER_SIZE == sizeof (struct header). */ -typedef int verify1[2 * (HEADER_SIZE == sizeof (struct header)) - 1]; +verify (HEADER_SIZE == sizeof (struct header)); /* We make the hash table quite big, so that during lookups the probability of empty hash buckets is quite high. There is no need to make the hash table resizable, because when the hash table gets filled so much that the diff --git a/gnu/mkdir.c b/gnu/mkdir.c index c782a73..d2d618e 100644 --- a/gnu/mkdir.c +++ b/gnu/mkdir.c @@ -38,7 +38,8 @@ /* mingw's _mkdir() function has 1 argument, but we pass 2 arguments. Additionally, it declares _mkdir (and depending on compile flags, an - alias mkdir), only in the nonstandard io.h. */ + alias mkdir), only in the nonstandard includes and , + which are included in the override. */ #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ # define mkdir(name,mode) _mkdir (name) # define maybe_unused _GL_UNUSED diff --git a/gnu/mkfifo.c b/gnu/mkfifo.c new file mode 100644 index 0000000..2bd9245 --- /dev/null +++ b/gnu/mkfifo.c @@ -0,0 +1,60 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Create a named fifo. + Copyright (C) 2009, 2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +#include +#include + +#if !HAVE_MKFIFO +/* Mingw lacks mkfifo; always fail with ENOSYS. */ + +int +mkfifo (char const *name _GL_UNUSED, mode_t mode _GL_UNUSED) +{ + errno = ENOSYS; + return -1; +} + +#else /* HAVE_MKFIFO */ + +# undef mkfifo + +/* Create a named fifo FILE, with access permissions in MODE. Work +around trailing slash bugs. */ + +int +rpl_mkfifo (char const *name, mode_t mode) +{ +# if MKFIFO_TRAILING_SLASH_BUG + size_t len = strlen (name); + if (len && name[len - 1] == '/') + { + struct stat st; + if (stat (name, &st) == 0) + errno = EEXIST; + return -1; + } +# endif + return mkfifo (name, mode); +} +#endif /* HAVE_MKFIFO */ diff --git a/gnu/mkfifoat.c b/gnu/mkfifoat.c new file mode 100644 index 0000000..814351d --- /dev/null +++ b/gnu/mkfifoat.c @@ -0,0 +1,57 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Create a named fifo relative to an open directory. + Copyright (C) 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +#if !HAVE_MKFIFO + +# include + +/* Mingw lacks mkfifo, so this wrapper is trivial. */ + +int +mkfifoat (int fd _GL_UNUSED, char const *path _GL_UNUSED, + mode_t mode _GL_UNUSED) +{ + errno = ENOSYS; + return -1; +} + +#else /* HAVE_MKFIFO */ + +/* Create a named fifo FILE relative to directory FD, with access + permissions in MODE. If possible, do it without changing the + working directory. Otherwise, resort to using save_cwd/fchdir, + then mkfifo/restore_cwd. If either the save_cwd or the restore_cwd + fails, then give a diagnostic and exit nonzero. */ + +# define AT_FUNC_NAME mkfifoat +# define AT_FUNC_F1 mkfifo +# define AT_FUNC_POST_FILE_PARAM_DECLS , mode_t mode +# define AT_FUNC_POST_FILE_ARGS , mode +# include "at-func.c" +# undef AT_FUNC_NAME +# undef AT_FUNC_F1 +# undef AT_FUNC_POST_FILE_PARAM_DECLS +# undef AT_FUNC_POST_FILE_ARGS + +#endif /* HAVE_MKFIFO */ diff --git a/gnu/mknod.c b/gnu/mknod.c new file mode 100644 index 0000000..01e5cc4 --- /dev/null +++ b/gnu/mknod.c @@ -0,0 +1,76 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Create a device inode. + Copyright (C) 2009, 2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +#include +#include + +#if !HAVE_MKNOD +/* Mingw lacks mknod; always fail with ENOSYS. */ + +int +mknod (char const *name _GL_UNUSED, mode_t mode _GL_UNUSED, + dev_t dev _GL_UNUSED) +{ + errno = ENOSYS; + return -1; +} + +#else /* HAVE_MKNOD */ + +# undef mknod + +/* Create a file system node FILE, with access permissions and file + type in MODE, and device type in DEV. Usually, non-root + applications can only create named fifos (mode includes S_IFIFO), + with DEV set to 0. Also work around trailing slash bugs. */ + +int +rpl_mknod (char const *name, mode_t mode, dev_t dev) +{ +# if MKFIFO_TRAILING_SLASH_BUG + /* Trailing slash only makes sense for directories. Of course, + using mknod to create a directory is not very portable, so it may + still fail later on. */ + if (!S_ISDIR (mode)) + { + size_t len = strlen (name); + if (len && name[len - 1] == '/') + { + struct stat st; + if (stat (name, &st) == 0) + errno = EEXIST; + return -1; + } + } +# endif +# if MKNOD_FIFO_BUG + /* POSIX requires mknod to create fifos for non-privileged + processes, but BSD implementations fail with EPERM. */ + if (S_ISFIFO (mode) && dev == 0) + return mkfifo (name, mode & ~S_IFIFO); +# endif + return mknod (name, mode, dev); +} + +#endif /* HAVE_MKNOD */ diff --git a/gnu/mknodat.c b/gnu/mknodat.c new file mode 100644 index 0000000..19a2fcd --- /dev/null +++ b/gnu/mknodat.c @@ -0,0 +1,59 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Create an inode relative to an open directory. + Copyright (C) 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +#if !HAVE_MKNOD + +# include + +/* Mingw lacks mknod, so this wrapper is trivial. */ + +int +mknodat (int fd _GL_UNUSED, char const *path _GL_UNUSED, + mode_t mode _GL_UNUSED, dev_t dev _GL_UNUSED) +{ + errno = ENOSYS; + return -1; +} + +#else /* HAVE_MKFIFO */ + +/* Create a file system node FILE relative to directory FD, with + access permissions and file type in MODE, and device type in DEV. + Usually, non-root applications can only create named fifos, with + DEV set to 0. If possible, create the node without changing the + working directory. Otherwise, resort to using save_cwd/fchdir, + then mknod/restore_cwd. If either the save_cwd or the restore_cwd + fails, then give a diagnostic and exit nonzero. */ + +# define AT_FUNC_NAME mknodat +# define AT_FUNC_F1 mknod +# define AT_FUNC_POST_FILE_PARAM_DECLS , mode_t mode, dev_t dev +# define AT_FUNC_POST_FILE_ARGS , mode, dev +# include "at-func.c" +# undef AT_FUNC_NAME +# undef AT_FUNC_F1 +# undef AT_FUNC_POST_FILE_PARAM_DECLS +# undef AT_FUNC_POST_FILE_ARGS + +#endif /* HAVE_MKFIFO */ diff --git a/gnu/nl_langinfo.c b/gnu/nl_langinfo.c index a709942..4fcb76f 100644 --- a/gnu/nl_langinfo.c +++ b/gnu/nl_langinfo.c @@ -69,6 +69,10 @@ rpl_nl_langinfo (nl_item item) return ""; } # endif +# if GNULIB_defined_T_FMT_AMPM + case T_FMT_AMPM: + return "%I:%M:%S %p"; +# endif # if GNULIB_defined_ERA case ERA: /* The format is not standardized. In glibc it is a sequence of strings @@ -94,6 +98,12 @@ rpl_nl_langinfo (nl_item item) /* The format is not standardized. In glibc it is a sequence of 10 strings, appended in memory. */ return "\0\0\0\0\0\0\0\0\0\0"; +# endif +# if GNULIB_defined_YESEXPR + case YESEXPR: + return "^[yY]"; + case NOEXPR: + return "^[nN]"; # endif default: break; diff --git a/gnu/obstack.h b/gnu/obstack.h index 113aad8..f225a52 100644 --- a/gnu/obstack.h +++ b/gnu/obstack.h @@ -105,10 +105,6 @@ Summary: #ifndef _OBSTACK_H #define _OBSTACK_H 1 - -#ifdef __cplusplus -extern "C" { -#endif /* We need the type of a pointer subtraction. If __PTRDIFF_TYPE__ is defined, as with GNU C, use that; that way we don't pollute the @@ -141,6 +137,10 @@ extern "C" { #include +#ifdef __cplusplus +extern "C" { +#endif + struct _obstack_chunk /* Lives at front of each chunk. */ { char *limit; /* 1 past end of this chunk */ diff --git a/gnu/offtostr.c b/gnu/offtostr.c index 98b0c05..e3e11fc 100644 --- a/gnu/offtostr.c +++ b/gnu/offtostr.c @@ -1,6 +1,6 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -#define inttostr offtostr +#define anytostr offtostr #define inttype off_t #define inttype_is_signed 1 -#include "inttostr.c" +#include "anytostr.c" diff --git a/gnu/open.c b/gnu/open.c index 7c2bbb8..1d06696 100644 --- a/gnu/open.c +++ b/gnu/open.c @@ -113,7 +113,8 @@ open (const char *filename, int flags, ...) override fstat() in fchdir.c to hide the fact that we have a dummy. */ if (REPLACE_OPEN_DIRECTORY && fd < 0 && errno == EACCES - && (flags & O_ACCMODE) == O_RDONLY) + && ((flags & O_ACCMODE) == O_RDONLY + || (O_SEARCH != O_RDONLY && (flags & O_ACCMODE) == O_SEARCH))) { struct stat statbuf; if (stat (filename, &statbuf) == 0 && S_ISDIR (statbuf.st_mode)) diff --git a/gnu/openat-proc.c b/gnu/openat-proc.c index e0693be..9b4d957 100644 --- a/gnu/openat-proc.c +++ b/gnu/openat-proc.c @@ -77,7 +77,7 @@ openat_proc_name (char buf[OPENAT_BUFFER_SIZE], int fd, char const *file) problem is exhibited on code that built on Solaris 8 and running on Solaris 10. */ - int proc_self_fd = open ("/proc/self/fd", O_RDONLY); + int proc_self_fd = open ("/proc/self/fd", O_SEARCH); if (proc_self_fd < 0) proc_status = -1; else diff --git a/gnu/openat.c b/gnu/openat.c index f5e8a49..79e2b65 100644 --- a/gnu/openat.c +++ b/gnu/openat.c @@ -246,7 +246,7 @@ bool openat_needs_fchdir (void) { bool needs_fchdir = true; - int fd = open ("/", O_RDONLY); + int fd = open ("/", O_SEARCH); if (0 <= fd) { diff --git a/gnu/openat.h b/gnu/openat.h index 7cc7ad9..590e576 100644 --- a/gnu/openat.h +++ b/gnu/openat.h @@ -95,22 +95,10 @@ lstatat (int fd, char const *name, struct stat *st) return fstatat (fd, name, st, AT_SYMLINK_NOFOLLOW); } -#if GNULIB_FACCESSAT /* For now, there are no wrappers named laccessat or leuidaccessat, since gnulib doesn't support faccessat(,AT_SYMLINK_NOFOLLOW) and - since access rights on symlinks are of limited utility. */ - -static inline int -accessat (int fd, char const *file, int mode) -{ - return faccessat (fd, file, mode, 0); -} - -static inline int -euidaccessat (int fd, char const *file, int mode) -{ - return faccessat (fd, file, mode, AT_EACCESS); -} -#endif + since access rights on symlinks are of limited utility. Likewise, + wrappers are not provided for accessat or euidaccessat, so as to + avoid dragging in -lgen on some platforms. */ #endif /* _GL_HEADER_OPENAT */ diff --git a/gnu/getdate.c b/gnu/parse-datetime.c similarity index 96% rename from gnu/getdate.c rename to gnu/parse-datetime.c index c45ce3d..6a204c2 100644 --- a/gnu/getdate.c +++ b/gnu/parse-datetime.c @@ -114,7 +114,7 @@ /* Copy the first part of user declarations. */ -#line 1 "getdate.y" +#line 1 "parse-datetime.y" /* Parse a string into an internal time stamp. @@ -150,7 +150,7 @@ #include -#include "getdate.h" +#include "parse-datetime.h" #include "intprops.h" #include "timespec.h" @@ -167,7 +167,7 @@ #define YYMAXDEPTH 20 #define YYINITDEPTH YYMAXDEPTH -/* Since the code of getdate.y is not included in the Emacs executable +/* Since the code of parse-datetime.y is not included in the Emacs executable itself, there is no need to #define static in this file. Even if the code were included in the Emacs executable, it probably wouldn't do any harm to #undef it here; this will only cause @@ -185,6 +185,14 @@ #include "xalloc.h" +/* Bison's skeleton tests _STDLIB_H, while some stdlib.h headers + use _STDLIB_H_ as witness. Map the latter to the one bison uses. */ +/* FIXME: this is temporary. Remove when we have a mechanism to ensure + that the version we're using is fixed, too. */ +#ifdef _STDLIB_H_ +# undef _STDLIB_H +# define _STDLIB_H 1 +#endif /* ISDIGIT differs from isdigit, as follows: - Its arg may be any int or unsigned int; it need not be an unsigned char @@ -409,7 +417,7 @@ set_hhmmss (parser_control *pc, long int hour, long int minutes, #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 285 "getdate.y" +#line 293 "parse-datetime.y" { long int intval; textint textintval; @@ -417,7 +425,7 @@ typedef union YYSTYPE relative_time rel; } /* Line 187 of yacc.c. */ -#line 421 "getdate.c" +#line 429 "parse-datetime.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -430,7 +438,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 434 "getdate.c" +#line 442 "parse-datetime.c" #ifdef short # undef short @@ -744,15 +752,15 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 311, 311, 312, 316, 323, 325, 329, 331, 333, - 335, 337, 339, 340, 341, 345, 350, 355, 362, 367, - 377, 382, 390, 392, 395, 397, 399, 404, 409, 414, - 419, 427, 432, 452, 459, 467, 475, 480, 486, 491, - 500, 502, 504, 509, 511, 513, 515, 517, 519, 521, - 523, 525, 527, 529, 531, 533, 535, 537, 539, 541, - 543, 545, 547, 549, 553, 555, 557, 559, 561, 563, - 568, 572, 572, 575, 576, 581, 582, 587, 592, 603, - 604, 610, 611 + 0, 319, 319, 320, 324, 331, 333, 337, 339, 341, + 343, 345, 347, 348, 349, 353, 358, 363, 370, 375, + 385, 390, 398, 400, 403, 405, 407, 412, 417, 422, + 427, 435, 440, 460, 467, 475, 483, 488, 494, 499, + 508, 510, 512, 517, 519, 521, 523, 525, 527, 529, + 531, 533, 535, 537, 539, 541, 543, 545, 547, 549, + 551, 553, 555, 557, 561, 563, 565, 567, 569, 571, + 576, 580, 580, 583, 584, 589, 590, 595, 600, 611, + 612, 618, 619 }; #endif @@ -1729,7 +1737,7 @@ yyreduce: switch (yyn) { case 4: -#line 317 "getdate.y" +#line 325 "parse-datetime.y" { pc->seconds = (yyvsp[(2) - (2)].timespec); pc->timespec_seen = true; @@ -1737,32 +1745,32 @@ yyreduce: break; case 7: -#line 330 "getdate.y" +#line 338 "parse-datetime.y" { pc->times_seen++; } break; case 8: -#line 332 "getdate.y" +#line 340 "parse-datetime.y" { pc->local_zones_seen++; } break; case 9: -#line 334 "getdate.y" +#line 342 "parse-datetime.y" { pc->zones_seen++; } break; case 10: -#line 336 "getdate.y" +#line 344 "parse-datetime.y" { pc->dates_seen++; } break; case 11: -#line 338 "getdate.y" +#line 346 "parse-datetime.y" { pc->days_seen++; } break; case 15: -#line 346 "getdate.y" +#line 354 "parse-datetime.y" { set_hhmmss (pc, (yyvsp[(1) - (2)].textintval).value, 0, 0, 0); pc->meridian = (yyvsp[(2) - (2)].intval); @@ -1770,7 +1778,7 @@ yyreduce: break; case 16: -#line 351 "getdate.y" +#line 359 "parse-datetime.y" { set_hhmmss (pc, (yyvsp[(1) - (4)].textintval).value, (yyvsp[(3) - (4)].textintval).value, 0, 0); pc->meridian = (yyvsp[(4) - (4)].intval); @@ -1778,7 +1786,7 @@ yyreduce: break; case 17: -#line 356 "getdate.y" +#line 364 "parse-datetime.y" { set_hhmmss (pc, (yyvsp[(1) - (5)].textintval).value, (yyvsp[(3) - (5)].textintval).value, 0, 0); pc->meridian = MER24; @@ -1788,7 +1796,7 @@ yyreduce: break; case 18: -#line 363 "getdate.y" +#line 371 "parse-datetime.y" { set_hhmmss (pc, (yyvsp[(1) - (6)].textintval).value, (yyvsp[(3) - (6)].textintval).value, (yyvsp[(5) - (6)].timespec).tv_sec, (yyvsp[(5) - (6)].timespec).tv_nsec); pc->meridian = (yyvsp[(6) - (6)].intval); @@ -1796,7 +1804,7 @@ yyreduce: break; case 19: -#line 368 "getdate.y" +#line 376 "parse-datetime.y" { set_hhmmss (pc, (yyvsp[(1) - (7)].textintval).value, (yyvsp[(3) - (7)].textintval).value, (yyvsp[(5) - (7)].timespec).tv_sec, (yyvsp[(5) - (7)].timespec).tv_nsec); pc->meridian = MER24; @@ -1806,7 +1814,7 @@ yyreduce: break; case 20: -#line 378 "getdate.y" +#line 386 "parse-datetime.y" { pc->local_isdst = (yyvsp[(1) - (1)].intval); pc->dsts_seen += (0 < (yyvsp[(1) - (1)].intval)); @@ -1814,7 +1822,7 @@ yyreduce: break; case 21: -#line 383 "getdate.y" +#line 391 "parse-datetime.y" { pc->local_isdst = 1; pc->dsts_seen += (0 < (yyvsp[(1) - (2)].intval)) + 1; @@ -1822,33 +1830,33 @@ yyreduce: break; case 22: -#line 391 "getdate.y" +#line 399 "parse-datetime.y" { pc->time_zone = (yyvsp[(1) - (1)].intval); } break; case 23: -#line 393 "getdate.y" +#line 401 "parse-datetime.y" { pc->time_zone = (yyvsp[(1) - (2)].intval); apply_relative_time (pc, (yyvsp[(2) - (2)].rel), 1); } break; case 24: -#line 396 "getdate.y" +#line 404 "parse-datetime.y" { pc->time_zone = (yyvsp[(1) - (3)].intval) + time_zone_hhmm (pc, (yyvsp[(2) - (3)].textintval), (yyvsp[(3) - (3)].intval)); } break; case 25: -#line 398 "getdate.y" +#line 406 "parse-datetime.y" { pc->time_zone = (yyvsp[(1) - (1)].intval) + 60; } break; case 26: -#line 400 "getdate.y" +#line 408 "parse-datetime.y" { pc->time_zone = (yyvsp[(1) - (2)].intval) + 60; } break; case 27: -#line 405 "getdate.y" +#line 413 "parse-datetime.y" { pc->day_ordinal = 0; pc->day_number = (yyvsp[(1) - (1)].intval); @@ -1856,7 +1864,7 @@ yyreduce: break; case 28: -#line 410 "getdate.y" +#line 418 "parse-datetime.y" { pc->day_ordinal = 0; pc->day_number = (yyvsp[(1) - (2)].intval); @@ -1864,7 +1872,7 @@ yyreduce: break; case 29: -#line 415 "getdate.y" +#line 423 "parse-datetime.y" { pc->day_ordinal = (yyvsp[(1) - (2)].intval); pc->day_number = (yyvsp[(2) - (2)].intval); @@ -1872,7 +1880,7 @@ yyreduce: break; case 30: -#line 420 "getdate.y" +#line 428 "parse-datetime.y" { pc->day_ordinal = (yyvsp[(1) - (2)].textintval).value; pc->day_number = (yyvsp[(2) - (2)].intval); @@ -1880,7 +1888,7 @@ yyreduce: break; case 31: -#line 428 "getdate.y" +#line 436 "parse-datetime.y" { pc->month = (yyvsp[(1) - (3)].textintval).value; pc->day = (yyvsp[(3) - (3)].textintval).value; @@ -1888,7 +1896,7 @@ yyreduce: break; case 32: -#line 433 "getdate.y" +#line 441 "parse-datetime.y" { /* Interpret as YYYY/MM/DD if the first value has 4 or more digits, otherwise as MM/DD/YY. @@ -1911,7 +1919,7 @@ yyreduce: break; case 33: -#line 453 "getdate.y" +#line 461 "parse-datetime.y" { /* ISO 8601 format. YYYY-MM-DD. */ pc->year = (yyvsp[(1) - (3)].textintval); @@ -1921,7 +1929,7 @@ yyreduce: break; case 34: -#line 460 "getdate.y" +#line 468 "parse-datetime.y" { /* e.g. 17-JUN-1992. */ pc->day = (yyvsp[(1) - (3)].textintval).value; @@ -1932,7 +1940,7 @@ yyreduce: break; case 35: -#line 468 "getdate.y" +#line 476 "parse-datetime.y" { /* e.g. JUN-17-1992. */ pc->month = (yyvsp[(1) - (3)].intval); @@ -1943,7 +1951,7 @@ yyreduce: break; case 36: -#line 476 "getdate.y" +#line 484 "parse-datetime.y" { pc->month = (yyvsp[(1) - (2)].intval); pc->day = (yyvsp[(2) - (2)].textintval).value; @@ -1951,7 +1959,7 @@ yyreduce: break; case 37: -#line 481 "getdate.y" +#line 489 "parse-datetime.y" { pc->month = (yyvsp[(1) - (4)].intval); pc->day = (yyvsp[(2) - (4)].textintval).value; @@ -1960,7 +1968,7 @@ yyreduce: break; case 38: -#line 487 "getdate.y" +#line 495 "parse-datetime.y" { pc->day = (yyvsp[(1) - (2)].textintval).value; pc->month = (yyvsp[(2) - (2)].intval); @@ -1968,7 +1976,7 @@ yyreduce: break; case 39: -#line 492 "getdate.y" +#line 500 "parse-datetime.y" { pc->day = (yyvsp[(1) - (3)].textintval).value; pc->month = (yyvsp[(2) - (3)].intval); @@ -1977,172 +1985,172 @@ yyreduce: break; case 40: -#line 501 "getdate.y" +#line 509 "parse-datetime.y" { apply_relative_time (pc, (yyvsp[(1) - (2)].rel), -1); } break; case 41: -#line 503 "getdate.y" +#line 511 "parse-datetime.y" { apply_relative_time (pc, (yyvsp[(1) - (1)].rel), 1); } break; case 42: -#line 505 "getdate.y" +#line 513 "parse-datetime.y" { apply_relative_time (pc, (yyvsp[(1) - (1)].rel), 1); } break; case 43: -#line 510 "getdate.y" +#line 518 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).year = (yyvsp[(1) - (2)].intval); } break; case 44: -#line 512 "getdate.y" +#line 520 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).year = (yyvsp[(1) - (2)].textintval).value; } break; case 45: -#line 514 "getdate.y" +#line 522 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).year = 1; } break; case 46: -#line 516 "getdate.y" +#line 524 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).month = (yyvsp[(1) - (2)].intval); } break; case 47: -#line 518 "getdate.y" +#line 526 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).month = (yyvsp[(1) - (2)].textintval).value; } break; case 48: -#line 520 "getdate.y" +#line 528 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).month = 1; } break; case 49: -#line 522 "getdate.y" +#line 530 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).day = (yyvsp[(1) - (2)].intval) * (yyvsp[(2) - (2)].intval); } break; case 50: -#line 524 "getdate.y" +#line 532 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).day = (yyvsp[(1) - (2)].textintval).value * (yyvsp[(2) - (2)].intval); } break; case 51: -#line 526 "getdate.y" +#line 534 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).day = (yyvsp[(1) - (1)].intval); } break; case 52: -#line 528 "getdate.y" +#line 536 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).hour = (yyvsp[(1) - (2)].intval); } break; case 53: -#line 530 "getdate.y" +#line 538 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).hour = (yyvsp[(1) - (2)].textintval).value; } break; case 54: -#line 532 "getdate.y" +#line 540 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).hour = 1; } break; case 55: -#line 534 "getdate.y" +#line 542 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).minutes = (yyvsp[(1) - (2)].intval); } break; case 56: -#line 536 "getdate.y" +#line 544 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).minutes = (yyvsp[(1) - (2)].textintval).value; } break; case 57: -#line 538 "getdate.y" +#line 546 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).minutes = 1; } break; case 58: -#line 540 "getdate.y" +#line 548 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).seconds = (yyvsp[(1) - (2)].intval); } break; case 59: -#line 542 "getdate.y" +#line 550 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).seconds = (yyvsp[(1) - (2)].textintval).value; } break; case 60: -#line 544 "getdate.y" +#line 552 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).seconds = (yyvsp[(1) - (2)].timespec).tv_sec; (yyval.rel).ns = (yyvsp[(1) - (2)].timespec).tv_nsec; } break; case 61: -#line 546 "getdate.y" +#line 554 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).seconds = (yyvsp[(1) - (2)].timespec).tv_sec; (yyval.rel).ns = (yyvsp[(1) - (2)].timespec).tv_nsec; } break; case 62: -#line 548 "getdate.y" +#line 556 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).seconds = 1; } break; case 64: -#line 554 "getdate.y" +#line 562 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).year = (yyvsp[(1) - (2)].textintval).value; } break; case 65: -#line 556 "getdate.y" +#line 564 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).month = (yyvsp[(1) - (2)].textintval).value; } break; case 66: -#line 558 "getdate.y" +#line 566 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).day = (yyvsp[(1) - (2)].textintval).value * (yyvsp[(2) - (2)].intval); } break; case 67: -#line 560 "getdate.y" +#line 568 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).hour = (yyvsp[(1) - (2)].textintval).value; } break; case 68: -#line 562 "getdate.y" +#line 570 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).minutes = (yyvsp[(1) - (2)].textintval).value; } break; case 69: -#line 564 "getdate.y" +#line 572 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).seconds = (yyvsp[(1) - (2)].textintval).value; } break; case 70: -#line 569 "getdate.y" +#line 577 "parse-datetime.y" { (yyval.rel) = RELATIVE_TIME_0; (yyval.rel).day = (yyvsp[(1) - (1)].intval); } break; case 74: -#line 577 "getdate.y" +#line 585 "parse-datetime.y" { (yyval.timespec).tv_sec = (yyvsp[(1) - (1)].textintval).value; (yyval.timespec).tv_nsec = 0; } break; case 76: -#line 583 "getdate.y" +#line 591 "parse-datetime.y" { (yyval.timespec).tv_sec = (yyvsp[(1) - (1)].textintval).value; (yyval.timespec).tv_nsec = 0; } break; case 77: -#line 588 "getdate.y" +#line 596 "parse-datetime.y" { digits_to_date_time (pc, (yyvsp[(1) - (1)].textintval)); } break; case 78: -#line 593 "getdate.y" +#line 601 "parse-datetime.y" { /* Hybrid all-digit and relative offset, so that we accept e.g., "YYYYMMDD +N days" as well as "YYYYMMDD N days". */ @@ -2152,28 +2160,28 @@ yyreduce: break; case 79: -#line 603 "getdate.y" +#line 611 "parse-datetime.y" { (yyval.intval) = -1; } break; case 80: -#line 605 "getdate.y" +#line 613 "parse-datetime.y" { (yyval.intval) = (yyvsp[(2) - (2)].textintval).value; } break; case 81: -#line 610 "getdate.y" +#line 618 "parse-datetime.y" { (yyval.intval) = MER24; } break; case 82: -#line 612 "getdate.y" +#line 620 "parse-datetime.y" { (yyval.intval) = (yyvsp[(1) - (1)].intval); } break; /* Line 1267 of yacc.c. */ -#line 2177 "getdate.c" +#line 2185 "parse-datetime.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2387,7 +2395,7 @@ yyreturn: } -#line 615 "getdate.y" +#line 623 "parse-datetime.y" static table const meridian_table[] = @@ -2488,7 +2496,7 @@ static table const universal_time_zone_table[] = /* The time zone table. This table is necessarily incomplete, as time zone abbreviations are ambiguous; e.g. Australians interpret "EST" as Eastern time in Australia, not as US Eastern Standard Time. - You cannot rely on getdate to handle arbitrary time zone + You cannot rely on parse_datetime to handle arbitrary time zone abbreviations; use numeric abbreviations like `-0500' instead. */ static table const time_zone_table[] = { @@ -2977,7 +2985,8 @@ get_tz (char tzbuf[TZBUFSIZE]) P can be an incomplete or relative time specification; if so, use *NOW as the basis for the returned time. */ bool -get_date (struct timespec *result, char const *p, struct timespec const *now) +parse_datetime (struct timespec *result, char const *p, + struct timespec const *now) { time_t Start; long int Start_ns; @@ -3326,7 +3335,7 @@ main (int ac, char **av) { struct timespec d; struct tm const *tm; - if (! get_date (&d, buff, NULL)) + if (! parse_datetime (&d, buff, NULL)) printf ("Bad format - couldn't convert.\n"); else if (! (tm = localtime (&d.tv_sec))) { diff --git a/gnu/getdate.h b/gnu/parse-datetime.h similarity index 92% rename from gnu/getdate.h rename to gnu/parse-datetime.h index 380b8ee..1081f97 100644 --- a/gnu/getdate.h +++ b/gnu/parse-datetime.h @@ -21,4 +21,4 @@ #include #include -bool get_date (struct timespec *, char const *, struct timespec const *); +bool parse_datetime (struct timespec *, char const *, struct timespec const *); diff --git a/gnu/getdate.y b/gnu/parse-datetime.y similarity index 98% rename from gnu/getdate.y rename to gnu/parse-datetime.y index 445865b..a760e69 100644 --- a/gnu/getdate.y +++ b/gnu/parse-datetime.y @@ -33,7 +33,7 @@ #include -#include "getdate.h" +#include "parse-datetime.h" #include "intprops.h" #include "timespec.h" @@ -50,7 +50,7 @@ #define YYMAXDEPTH 20 #define YYINITDEPTH YYMAXDEPTH -/* Since the code of getdate.y is not included in the Emacs executable +/* Since the code of parse-datetime.y is not included in the Emacs executable itself, there is no need to #define static in this file. Even if the code were included in the Emacs executable, it probably wouldn't do any harm to #undef it here; this will only cause @@ -68,6 +68,14 @@ #include "xalloc.h" +/* Bison's skeleton tests _STDLIB_H, while some stdlib.h headers + use _STDLIB_H_ as witness. Map the latter to the one bison uses. */ +/* FIXME: this is temporary. Remove when we have a mechanism to ensure + that the version we're using is fixed, too. */ +#ifdef _STDLIB_H_ +# undef _STDLIB_H +# define _STDLIB_H 1 +#endif /* ISDIGIT differs from isdigit, as follows: - Its arg may be any int or unsigned int; it need not be an unsigned char @@ -712,7 +720,7 @@ static table const universal_time_zone_table[] = /* The time zone table. This table is necessarily incomplete, as time zone abbreviations are ambiguous; e.g. Australians interpret "EST" as Eastern time in Australia, not as US Eastern Standard Time. - You cannot rely on getdate to handle arbitrary time zone + You cannot rely on parse_datetime to handle arbitrary time zone abbreviations; use numeric abbreviations like `-0500' instead. */ static table const time_zone_table[] = { @@ -1201,7 +1209,8 @@ get_tz (char tzbuf[TZBUFSIZE]) P can be an incomplete or relative time specification; if so, use *NOW as the basis for the returned time. */ bool -get_date (struct timespec *result, char const *p, struct timespec const *now) +parse_datetime (struct timespec *result, char const *p, + struct timespec const *now) { time_t Start; long int Start_ns; @@ -1550,7 +1559,7 @@ main (int ac, char **av) { struct timespec d; struct tm const *tm; - if (! get_date (&d, buff, NULL)) + if (! parse_datetime (&d, buff, NULL)) printf ("Bad format - couldn't convert.\n"); else if (! (tm = localtime (&d.tv_sec))) { diff --git a/gnu/priv-set.c b/gnu/priv-set.c index e9f8fb2..6d98a97 100644 --- a/gnu/priv-set.c +++ b/gnu/priv-set.c @@ -22,7 +22,7 @@ #include #include "priv-set.h" -#if HAVE_GETPPRIV +#if HAVE_GETPPRIV && HAVE_PRIV_H # include # include @@ -80,7 +80,7 @@ priv_set_ismember (const char *priv) /* Try to remove priv from the effective set. - Returns 0 if priv was removed from or was not present in the effective set. + Returns 0 if priv was removed. Returns -1 on error with errno set appropriately. */ int priv_set_remove (const char *priv) @@ -111,9 +111,8 @@ priv_set_remove (const char *priv) /* Try to restore priv to the effective set. - Returns 0 if priv was re-added to the effective set (after being prviously - removed by a call to priv_set_remove) or if priv was already in the - effective set. + Returns 0 if priv was re-added to the effective set (after being previously + removed by a call to priv_set_remove). Returns -1 on error with errno set appropriately. */ int priv_set_restore (const char *priv) diff --git a/gnu/priv-set.h b/gnu/priv-set.h index 588f579..c698824 100644 --- a/gnu/priv-set.h +++ b/gnu/priv-set.h @@ -19,7 +19,7 @@ Written by David Bartley. */ -#if HAVE_GETPPRIV +#if HAVE_GETPPRIV && HAVE_PRIV_H # include diff --git a/gnu/readlinkat.c b/gnu/readlinkat.c new file mode 100644 index 0000000..a722ec4 --- /dev/null +++ b/gnu/readlinkat.c @@ -0,0 +1,49 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Read a symlink relative to an open directory. + Copyright (C) 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +/* Gnulib provides a readlink stub for mingw; use it for distinction + between EINVAL and ENOENT, rather than always failing with ENOSYS. */ + +/* POSIX 2008 says that unlike readlink, readlinkat returns 0 for + success instead of the buffer length. But this would render + readlinkat worthless since readlink does not guarantee a + NUL-terminated buffer. Assume this was a bug in POSIX. */ + +/* Read the contents of symlink FILE into buffer BUF of size LEN, in the + directory open on descriptor FD. If possible, do it without changing + the working directory. Otherwise, resort to using save_cwd/fchdir, + then readlink/restore_cwd. If either the save_cwd or the restore_cwd + fails, then give a diagnostic and exit nonzero. */ + +#define AT_FUNC_NAME readlinkat +#define AT_FUNC_F1 readlink +#define AT_FUNC_POST_FILE_PARAM_DECLS , char *buf, size_t len +#define AT_FUNC_POST_FILE_ARGS , buf, len +#define AT_FUNC_RESULT ssize_t +#include "at-func.c" +#undef AT_FUNC_NAME +#undef AT_FUNC_F1 +#undef AT_FUNC_POST_FILE_PARAM_DECLS +#undef AT_FUNC_POST_FILE_ARGS +#undef AT_FUNC_RESULT diff --git a/gnu/realloc.c b/gnu/realloc.c index 04894fa..61d047f 100644 --- a/gnu/realloc.c +++ b/gnu/realloc.c @@ -25,11 +25,14 @@ /* Only the AC_FUNC_REALLOC macro defines 'realloc' already in config.h. */ #ifdef realloc # define NEED_REALLOC_GNU 1 +/* Whereas the gnulib module 'realloc-gnu' defines HAVE_REALLOC_GNU. */ +#elif GNULIB_REALLOC_GNU && !HAVE_REALLOC_GNU +# define NEED_REALLOC_GNU 1 #endif /* Infer the properties of the system's malloc function. - Only the AC_FUNC_MALLOC macro defines 'malloc' already in config.h. */ -#if GNULIB_MALLOC_GNU && !defined malloc + The gnulib module 'malloc-gnu' defines HAVE_MALLOC_GNU. */ +#if GNULIB_MALLOC_GNU && HAVE_MALLOC_GNU # define SYSTEM_MALLOC_GLIBC_COMPATIBLE 1 #endif diff --git a/gnu/regcomp.c b/gnu/regcomp.c index 69f5c94..fd9272f 100644 --- a/gnu/regcomp.c +++ b/gnu/regcomp.c @@ -2624,11 +2624,17 @@ parse_dup_op (bin_tree_t *elem, re_string_t *regexp, re_dfa_t *dfa, static reg_errcode_t internal_function # ifdef RE_ENABLE_I18N -build_range_exp (bitset_t sbcset, re_charset_t *mbcset, Idx *range_alloc, - bracket_elem_t *start_elem, bracket_elem_t *end_elem) +build_range_exp (const reg_syntax_t syntax, + bitset_t sbcset, + re_charset_t *mbcset, + Idx *range_alloc, + const bracket_elem_t *start_elem, + const bracket_elem_t *end_elem) # else /* not RE_ENABLE_I18N */ -build_range_exp (bitset_t sbcset, bracket_elem_t *start_elem, - bracket_elem_t *end_elem) +build_range_exp (const reg_syntax_t syntax, + bitset_t sbcset, + const bracket_elem_t *start_elem, + const bracket_elem_t *end_elem) # endif /* not RE_ENABLE_I18N */ { unsigned int start_ch, end_ch; @@ -2667,7 +2673,9 @@ build_range_exp (bitset_t sbcset, bracket_elem_t *start_elem, return REG_ECOLLATE; cmp_buf[0] = start_wc; cmp_buf[4] = end_wc; - if (wcscoll (cmp_buf, cmp_buf + 4) > 0) + + if (BE ((syntax & RE_NO_EMPTY_RANGES) + && wcscoll (cmp_buf, cmp_buf + 4) > 0, 0)) return REG_ERANGE; /* Got valid collation sequence values, add them as a new entry. @@ -3170,11 +3178,11 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, &start_elem, &end_elem); #else # ifdef RE_ENABLE_I18N - *err = build_range_exp (sbcset, + *err = build_range_exp (syntax, sbcset, dfa->mb_cur_max > 1 ? mbcset : NULL, &range_alloc, &start_elem, &end_elem); # else - *err = build_range_exp (sbcset, &start_elem, &end_elem); + *err = build_range_exp (syntax, sbcset, &start_elem, &end_elem); # endif #endif /* RE_ENABLE_I18N */ if (BE (*err != REG_NOERROR, 0)) diff --git a/gnu/regex.h b/gnu/regex.h index ef54b55..14ba6d2 100644 --- a/gnu/regex.h +++ b/gnu/regex.h @@ -116,10 +116,10 @@ typedef unsigned long int reg_syntax_t; /* If this bit is set, then ^ and $ are always anchors (outside bracket expressions, of course). If this bit is not set, then it depends: - ^ is an anchor if it is at the beginning of a regular - expression or after an open-group or an alternation operator; - $ is an anchor if it is at the end of a regular expression, or - before a close-group or an alternation operator. + ^ is an anchor if it is at the beginning of a regular + expression or after an open-group or an alternation operator; + $ is an anchor if it is at the end of a regular expression, or + before a close-group or an alternation operator. This bit could be (re)combined with RE_CONTEXT_INDEP_OPS, because POSIX draft 11.2 says that * etc. in leading positions is undefined. @@ -221,8 +221,8 @@ typedef unsigned long int reg_syntax_t; whether ^ should be special. */ # define RE_CARET_ANCHORS_HERE (RE_ICASE << 1) -/* If this bit is set, then \{ cannot be first in an bre or - immediately after an alternation or begin-group operator. */ +/* If this bit is set, then \{ cannot be first in a regex or + immediately after an alternation, open-group or \} operator. */ # define RE_CONTEXT_INVALID_DUP (RE_CARET_ANCHORS_HERE << 1) /* If this bit is set, then no_sub will be set to 1 during @@ -497,8 +497,8 @@ struct re_pattern_buffer #endif unsigned int _REG_RE_NAME (regs_allocated) : 2; - /* Set to zero when `regex_compile' compiles a pattern; set to one - by `re_compile_fastmap' if it updates the fastmap. */ + /* Set to zero when `re_compile_pattern' compiles a pattern; set to + one by `re_compile_fastmap' if it updates the fastmap. */ unsigned int _REG_RE_NAME (fastmap_accurate) : 1; /* If set, `re_match_2' does not return information about @@ -612,8 +612,8 @@ extern regoff_t re_match_2 (struct re_pattern_buffer *__buffer, register data. Unless this function is called, the first search or match using - PATTERN_BUFFER will allocate its own register data, without - freeing the old data. */ + BUFFER will allocate its own register data, without freeing the old + data. */ extern void re_set_registers (struct re_pattern_buffer *__buffer, struct re_registers *__regs, __re_size_t __num_regs, diff --git a/gnu/regex_internal.c b/gnu/regex_internal.c index c964814..910424c 100644 --- a/gnu/regex_internal.c +++ b/gnu/regex_internal.c @@ -735,15 +735,17 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) mbstate_t cur_state; wchar_t wc2; Idx mlen = raw + pstr->len - p; - unsigned char buf[6]; size_t mbclen; +#if 0 /* dead code: buf is set but never used */ + unsigned char buf[6]; if (BE (pstr->trans != NULL, 0)) { int i = mlen < 6 ? mlen : 6; while (--i >= 0) buf[i] = pstr->trans[p[i]]; } +#endif /* XXX Don't use mbrtowc, we know which conversion to use (UTF-8 -> UCS4). */ memset (&cur_state, 0, sizeof (cur_state)); diff --git a/gnu/regex_internal.h b/gnu/regex_internal.h index 4305be3..c8c37c3 100644 --- a/gnu/regex_internal.h +++ b/gnu/regex_internal.h @@ -469,6 +469,8 @@ static unsigned int re_string_context_at (const re_string_t *input, Idx idx, # else /* alloca is implemented with malloc, so just use malloc. */ # define __libc_use_alloca(n) 0 +# undef alloca +# define alloca(n) malloc (n) # endif #endif diff --git a/gnu/rename.c b/gnu/rename.c new file mode 100644 index 0000000..4ecf64f --- /dev/null +++ b/gnu/rename.c @@ -0,0 +1,475 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Work around rename bugs in some systems. + + Copyright (C) 2001-2003, 2005-2006, 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Volker Borchert, Eric Blake. */ + +#include + +#include + +#undef rename + +#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ +/* The mingw rename has problems with trailing slashes; it also + requires use of native Windows calls to allow atomic renames over + existing files. */ + +# include +# include +# include +# include +# include + +# define WIN32_LEAN_AND_MEAN +# include + +# include "dirname.h" + +/* Rename the file SRC to DST. This replacement is necessary on + Windows, on which the system rename function will not replace + an existing DST. */ +int +rpl_rename (char const *src, char const *dst) +{ + int error; + size_t src_len = strlen (src); + size_t dst_len = strlen (dst); + char *src_base = last_component (src); + char *dst_base = last_component (dst); + bool src_slash; + bool dst_slash; + bool dst_exists; + struct stat src_st; + struct stat dst_st; + + /* Filter out dot as last component. */ + if (!src_len || !dst_len) + { + errno = ENOENT; + return -1; + } + if (*src_base == '.') + { + size_t len = base_len (src_base); + if (len == 1 || (len == 2 && src_base[1] == '.')) + { + errno = EINVAL; + return -1; + } + } + if (*dst_base == '.') + { + size_t len = base_len (dst_base); + if (len == 1 || (len == 2 && dst_base[1] == '.')) + { + errno = EINVAL; + return -1; + } + } + + /* Presence of a trailing slash requires directory semantics. If + the source does not exist, or if the destination cannot be turned + into a directory, give up now. Otherwise, strip trailing slashes + before calling rename. There are no symlinks on mingw, so stat + works instead of lstat. */ + src_slash = ISSLASH (src[src_len - 1]); + dst_slash = ISSLASH (dst[dst_len - 1]); + if (stat (src, &src_st)) + return -1; + if (stat (dst, &dst_st)) + { + if (errno != ENOENT || (!S_ISDIR (src_st.st_mode) && dst_slash)) + return -1; + dst_exists = false; + } + else + { + if (S_ISDIR (dst_st.st_mode) != S_ISDIR (src_st.st_mode)) + { + errno = S_ISDIR (dst_st.st_mode) ? EISDIR : ENOTDIR; + return -1; + } + dst_exists = true; + } + + /* There are no symlinks, so if a file existed with a trailing + slash, it must be a directory, and we don't have to worry about + stripping strip trailing slash. However, mingw refuses to + replace an existing empty directory, so we have to help it out. + And canonicalize_file_name is not yet ported to mingw; however, + for directories, getcwd works as a viable alternative. Ensure + that we can get back to where we started before using it; later + attempts to return are fatal. Note that we can end up losing a + directory if rename then fails, but it was empty, so not much + damage was done. */ + if (dst_exists && S_ISDIR (dst_st.st_mode)) + { + char *cwd = getcwd (NULL, 0); + char *src_temp; + char *dst_temp; + if (!cwd || chdir (cwd)) + return -1; + if (IS_ABSOLUTE_FILE_NAME (src)) + { + dst_temp = chdir (dst) ? NULL : getcwd (NULL, 0); + src_temp = chdir (src) ? NULL : getcwd (NULL, 0); + } + else + { + src_temp = chdir (src) ? NULL : getcwd (NULL, 0); + if (!IS_ABSOLUTE_FILE_NAME (dst) && chdir (cwd)) + abort (); + dst_temp = chdir (dst) ? NULL : getcwd (NULL, 0); + } + if (chdir (cwd)) + abort (); + free (cwd); + if (!src_temp || !dst_temp) + { + free (src_temp); + free (dst_temp); + errno = ENOMEM; + return -1; + } + src_len = strlen (src_temp); + if (strncmp (src_temp, dst_temp, src_len) == 0 + && (ISSLASH (dst_temp[src_len]) || dst_temp[src_len] == '\0')) + { + error = dst_temp[src_len]; + free (src_temp); + free (dst_temp); + if (error) + { + errno = EINVAL; + return -1; + } + return 0; + } + if (rmdir (dst)) + { + error = errno; + free (src_temp); + free (dst_temp); + errno = error; + return -1; + } + free (src_temp); + free (dst_temp); + } + + /* MoveFileEx works if SRC is a directory without any flags, but + fails with MOVEFILE_REPLACE_EXISTING, so try without flags first. + Thankfully, MoveFileEx handles hard links correctly, even though + rename() does not. */ + if (MoveFileEx (src, dst, 0)) + return 0; + + /* Retry with MOVEFILE_REPLACE_EXISTING if the move failed + due to the destination already existing. */ + error = GetLastError (); + if (error == ERROR_FILE_EXISTS || error == ERROR_ALREADY_EXISTS) + { + if (MoveFileEx (src, dst, MOVEFILE_REPLACE_EXISTING)) + return 0; + + error = GetLastError (); + } + + switch (error) + { + case ERROR_FILE_NOT_FOUND: + case ERROR_PATH_NOT_FOUND: + case ERROR_BAD_PATHNAME: + case ERROR_DIRECTORY: + errno = ENOENT; + break; + + case ERROR_ACCESS_DENIED: + case ERROR_SHARING_VIOLATION: + errno = EACCES; + break; + + case ERROR_OUTOFMEMORY: + errno = ENOMEM; + break; + + case ERROR_CURRENT_DIRECTORY: + errno = EBUSY; + break; + + case ERROR_NOT_SAME_DEVICE: + errno = EXDEV; + break; + + case ERROR_WRITE_PROTECT: + errno = EROFS; + break; + + case ERROR_WRITE_FAULT: + case ERROR_READ_FAULT: + case ERROR_GEN_FAILURE: + errno = EIO; + break; + + case ERROR_HANDLE_DISK_FULL: + case ERROR_DISK_FULL: + case ERROR_DISK_TOO_FRAGMENTED: + errno = ENOSPC; + break; + + case ERROR_FILE_EXISTS: + case ERROR_ALREADY_EXISTS: + errno = EEXIST; + break; + + case ERROR_BUFFER_OVERFLOW: + case ERROR_FILENAME_EXCED_RANGE: + errno = ENAMETOOLONG; + break; + + case ERROR_INVALID_NAME: + case ERROR_DELETE_PENDING: + errno = EPERM; /* ? */ + break; + +# ifndef ERROR_FILE_TOO_LARGE +/* This value is documented but not defined in all versions of windows.h. */ +# define ERROR_FILE_TOO_LARGE 223 +# endif + case ERROR_FILE_TOO_LARGE: + errno = EFBIG; + break; + + default: + errno = EINVAL; + break; + } + + return -1; +} + +#else /* ! W32 platform */ + +# include +# include +# include +# include +# include +# include + +# include "dirname.h" +# include "same-inode.h" + +/* Rename the file SRC to DST, fixing any trailing slash bugs. */ + +int +rpl_rename (char const *src, char const *dst) +{ + size_t src_len = strlen (src); + size_t dst_len = strlen (dst); + char *src_temp = (char *) src; + char *dst_temp = (char *) dst; + bool src_slash; + bool dst_slash; + bool dst_exists; + int ret_val = -1; + int rename_errno = ENOTDIR; + struct stat src_st; + struct stat dst_st; + + if (!src_len || !dst_len) + return rename (src, dst); /* Let strace see the ENOENT failure. */ + +# if RENAME_DEST_EXISTS_BUG + { + char *src_base = last_component (src); + char *dst_base = last_component (dst); + if (*src_base == '.') + { + size_t len = base_len (src_base); + if (len == 1 || (len == 2 && src_base[1] == '.')) + { + errno = EINVAL; + return -1; + } + } + if (*dst_base == '.') + { + size_t len = base_len (dst_base); + if (len == 1 || (len == 2 && dst_base[1] == '.')) + { + errno = EINVAL; + return -1; + } + } + } +# endif /* RENAME_DEST_EXISTS_BUG */ + + src_slash = src[src_len - 1] == '/'; + dst_slash = dst[dst_len - 1] == '/'; + +# if !RENAME_HARD_LINK_BUG && !RENAME_DEST_EXISTS_BUG + /* If there are no trailing slashes, then trust the native + implementation unless we also suspect issues with hard link + detection or file/directory conflicts. */ + if (!src_slash && !dst_slash) + return rename (src, dst); +# endif /* !RENAME_HARD_LINK_BUG && !RENAME_DEST_EXISTS_BUG */ + + /* Presence of a trailing slash requires directory semantics. If + the source does not exist, or if the destination cannot be turned + into a directory, give up now. Otherwise, strip trailing slashes + before calling rename. */ + if (lstat (src, &src_st)) + return -1; + if (lstat (dst, &dst_st)) + { + if (errno != ENOENT || (!S_ISDIR (src_st.st_mode) && dst_slash)) + return -1; + dst_exists = false; + } + else + { + if (S_ISDIR (dst_st.st_mode) != S_ISDIR (src_st.st_mode)) + { + errno = S_ISDIR (dst_st.st_mode) ? EISDIR : ENOTDIR; + return -1; + } +# if RENAME_HARD_LINK_BUG + if (SAME_INODE (src_st, dst_st)) + return 0; +# endif /* RENAME_HARD_LINK_BUG */ + dst_exists = true; + } + +# if (RENAME_TRAILING_SLASH_SOURCE_BUG || RENAME_DEST_EXISTS_BUG \ + || RENAME_HARD_LINK_BUG) + /* If the only bug was that a trailing slash was allowed on a + non-existing file destination, as in Solaris 10, then we've + already covered that situation. But if there is any problem with + a trailing slash on an existing source or destination, as in + Solaris 9, or if a directory can overwrite a symlink, as on + Cygwin 1.5, or if directories cannot be created with trailing + slash, as on NetBSD 1.6, then we must strip the offending slash + and check that we have not encountered a symlink instead of a + directory. + + Stripping a trailing slash interferes with POSIX semantics, where + rename behavior on a symlink with a trailing slash operates on + the corresponding target directory. We prefer the GNU semantics + of rejecting any use of a symlink with trailing slash, but do not + enforce them, since Solaris 10 is able to obey POSIX semantics + and there might be clients expecting it, as counter-intuitive as + those semantics are. + + Technically, we could also follow the POSIX behavior by chasing a + readlink trail, but that is harder to implement. */ + if (src_slash) + { + src_temp = strdup (src); + if (!src_temp) + { + /* Rather than rely on strdup-posix, we set errno ourselves. */ + rename_errno = ENOMEM; + goto out; + } + strip_trailing_slashes (src_temp); + if (lstat (src_temp, &src_st)) + { + rename_errno = errno; + goto out; + } + if (S_ISLNK (src_st.st_mode)) + goto out; + } + if (dst_slash) + { + dst_temp = strdup (dst); + if (!dst_temp) + { + rename_errno = ENOMEM; + goto out; + } + strip_trailing_slashes (dst_temp); + if (lstat (dst_temp, &dst_st)) + { + if (errno != ENOENT) + { + rename_errno = errno; + goto out; + } + } + else if (S_ISLNK (dst_st.st_mode)) + goto out; + } +# endif /* RENAME_TRAILING_SLASH_SOURCE_BUG || RENAME_DEST_EXISTS_BUG + || RENAME_HARD_LINK_BUG */ + +# if RENAME_DEST_EXISTS_BUG + /* Cygwin 1.5 sometimes behaves oddly when moving a non-empty + directory on top of an empty one (the old directory name can + reappear if the new directory tree is removed). Work around this + by removing the target first, but don't remove the target if it + is a subdirectory of the source. Note that we can end up losing + a directory if rename then fails, but it was empty, so not much + damage was done. */ + if (dst_exists && S_ISDIR (dst_st.st_mode)) + { + if (src_st.st_dev != dst_st.st_dev) + { + rename_errno = EXDEV; + goto out; + } + if (src_temp != src) + free (src_temp); + src_temp = canonicalize_file_name (src); + if (dst_temp != dst) + free (dst_temp); + dst_temp = canonicalize_file_name (dst); + if (!src_temp || !dst_temp) + { + rename_errno = ENOMEM; + goto out; + } + src_len = strlen (src_temp); + if (strncmp (src_temp, dst_temp, src_len) == 0 + && dst_temp[src_len] == '/') + { + rename_errno = EINVAL; + goto out; + } + if (rmdir (dst)) + { + rename_errno = errno; + goto out; + } + } +# endif /* RENAME_DEST_EXISTS_BUG */ + + ret_val = rename (src_temp, dst_temp); + rename_errno = errno; + out: + if (src_temp != src) + free (src_temp); + if (dst_temp != dst) + free (dst_temp); + errno = rename_errno; + return ret_val; +} +#endif /* ! W32 platform */ diff --git a/gnu/renameat.c b/gnu/renameat.c new file mode 100644 index 0000000..ddec0dd --- /dev/null +++ b/gnu/renameat.c @@ -0,0 +1,159 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Rename a file relative to open directories. + Copyright (C) 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +#if HAVE_RENAMEAT + +# include +# include +# include +# include +# include + +# include "dirname.h" +# include "openat.h" + +# undef renameat + +/* renameat does not honor trailing / on Solaris 10. Solve it in a + similar manner to rename. No need to worry about bugs not present + on Solaris, since all other systems either lack renameat or honor + trailing slash correctly. */ + +int +rpl_renameat (int fd1, char const *src, int fd2, char const *dst) +{ + size_t src_len = strlen (src); + size_t dst_len = strlen (dst); + char *src_temp = (char *) src; + char *dst_temp = (char *) dst; + bool src_slash; + bool dst_slash; + int ret_val = -1; + int rename_errno = ENOTDIR; + struct stat src_st; + struct stat dst_st; + + /* Let strace see any ENOENT failure. */ + if (!src_len || !dst_len) + return renameat (fd1, src, fd2, dst); + + src_slash = src[src_len - 1] == '/'; + dst_slash = dst[dst_len - 1] == '/'; + if (!src_slash && !dst_slash) + return renameat (fd1, src, fd2, dst); + + /* Presence of a trailing slash requires directory semantics. If + the source does not exist, or if the destination cannot be turned + into a directory, give up now. Otherwise, strip trailing slashes + before calling rename. */ + if (lstatat (fd1, src, &src_st)) + return -1; + if (lstatat (fd2, dst, &dst_st)) + { + if (errno != ENOENT || !S_ISDIR (src_st.st_mode)) + return -1; + } + else if (!S_ISDIR (dst_st.st_mode)) + { + errno = ENOTDIR; + return -1; + } + else if (!S_ISDIR (src_st.st_mode)) + { + errno = EISDIR; + return -1; + } + +# if RENAME_TRAILING_SLASH_SOURCE_BUG + /* See the lengthy comment in rename.c why Solaris 9 is forced to + GNU behavior, while Solaris 10 is left with POSIX behavior, + regarding symlinks with trailing slash. */ + if (src_slash) + { + src_temp = strdup (src); + if (!src_temp) + { + /* Rather than rely on strdup-posix, we set errno ourselves. */ + rename_errno = ENOMEM; + goto out; + } + strip_trailing_slashes (src_temp); + if (lstatat (fd1, src_temp, &src_st)) + { + rename_errno = errno; + goto out; + } + if (S_ISLNK (src_st.st_mode)) + goto out; + } + if (dst_slash) + { + dst_temp = strdup (dst); + if (!dst_temp) + { + rename_errno = ENOMEM; + goto out; + } + strip_trailing_slashes (dst_temp); + if (lstatat (fd2, dst_temp, &dst_st)) + { + if (errno != ENOENT) + { + rename_errno = errno; + goto out; + } + } + else if (S_ISLNK (dst_st.st_mode)) + goto out; + } +# endif /* RENAME_TRAILING_SLASH_SOURCE_BUG */ + + ret_val = renameat (fd1, src_temp, fd2, dst_temp); + rename_errno = errno; + out: + if (src_temp != src) + free (src_temp); + if (dst_temp != dst) + free (dst_temp); + errno = rename_errno; + return ret_val; +} + +#else /* !HAVE_RENAMEAT */ + +# include "openat-priv.h" + +/* Rename FILE1, in the directory open on descriptor FD1, to FILE2, in + the directory open on descriptor FD2. If possible, do it without + changing the working directory. Otherwise, resort to using + save_cwd/fchdir, then rename/restore_cwd. If either the save_cwd or + the restore_cwd fails, then give a diagnostic and exit nonzero. */ + +int +renameat (int fd1, char const *file1, int fd2, char const *file2) +{ + return at_func2 (fd1, file1, fd2, file2, rename); +} + +#endif /* !HAVE_RENAMEAT */ diff --git a/gnu/rmdir.c b/gnu/rmdir.c index 5b1c095..c052d34 100644 --- a/gnu/rmdir.c +++ b/gnu/rmdir.c @@ -24,8 +24,6 @@ #include #include -#include -#include #undef rmdir @@ -35,7 +33,6 @@ int rpl_rmdir (char const *dir) { -#if HAVE_RMDIR /* Work around cygwin 1.5.x bug where rmdir("dir/./") succeeds. */ size_t len = strlen (dir); int result; @@ -53,49 +50,4 @@ rpl_rmdir (char const *dir) if (result == -1 && errno == EINVAL) errno = ENOTDIR; return result; - -#else /* !HAVE_RMDIR */ - /* rmdir adapted from GNU tar. FIXME: Delete this implementation in - 2010 if no one reports a system with missing rmdir. */ - pid_t cpid; - int status; - struct stat statbuf; - - if (stat (dir, &statbuf) != 0) - return -1; /* errno already set */ - - if (!S_ISDIR (statbuf.st_mode)) - { - errno = ENOTDIR; - return -1; - } - - cpid = fork (); - switch (cpid) - { - case -1: /* cannot fork */ - return -1; /* errno already set */ - - case 0: /* child process */ - execl ("/bin/rmdir", "rmdir", dir, (char *) 0); - _exit (1); - - default: /* parent process */ - - /* Wait for kid to finish. */ - - while (wait (&status) != cpid) - /* Do nothing. */ ; - - if (status) - { - - /* /bin/rmdir failed. */ - - errno = EIO; - return -1; - } - return 0; - } -#endif /* !HAVE_RMDIR */ } diff --git a/gnu/same.c b/gnu/same.c deleted file mode 100644 index 5d9c585..0000000 --- a/gnu/same.c +++ /dev/null @@ -1,125 +0,0 @@ -/* -*- buffer-read-only: t -*- vi: set ro: */ -/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* Determine whether two file names refer to the same file. - - Copyright (C) 1997-2000, 2002-2006, 2009-2010 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* written by Jim Meyering */ - -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#ifndef _POSIX_NAME_MAX -# define _POSIX_NAME_MAX 14 -#endif - -#include "same.h" -#include "dirname.h" -#include "error.h" -#include "same-inode.h" - -#ifndef MIN -# define MIN(a, b) ((a) < (b) ? (a) : (b)) -#endif - -/* Return nonzero if SOURCE and DEST point to the same name in the same - directory. */ - -bool -same_name (const char *source, const char *dest) -{ - /* Compare the basenames. */ - char const *source_basename = last_component (source); - char const *dest_basename = last_component (dest); - size_t source_baselen = base_len (source_basename); - size_t dest_baselen = base_len (dest_basename); - bool identical_basenames = - (source_baselen == dest_baselen - && memcmp (source_basename, dest_basename, dest_baselen) == 0); - bool compare_dirs = identical_basenames; - bool same = false; - -#if ! _POSIX_NO_TRUNC && HAVE_PATHCONF && defined _PC_NAME_MAX - /* This implementation silently truncates components of file names. If - the base names might be truncated, check whether the truncated - base names are the same, while checking the directories. */ - size_t slen_max = HAVE_LONG_FILE_NAMES ? 255 : _POSIX_NAME_MAX; - size_t min_baselen = MIN (source_baselen, dest_baselen); - if (slen_max <= min_baselen - && memcmp (source_basename, dest_basename, slen_max) == 0) - compare_dirs = true; -#endif - - if (compare_dirs) - { - struct stat source_dir_stats; - struct stat dest_dir_stats; - char *source_dirname, *dest_dirname; - - /* Compare the parent directories (via the device and inode numbers). */ - source_dirname = dir_name (source); - dest_dirname = dir_name (dest); - - if (stat (source_dirname, &source_dir_stats)) - { - /* Shouldn't happen. */ - error (1, errno, "%s", source_dirname); - } - - if (stat (dest_dirname, &dest_dir_stats)) - { - /* Shouldn't happen. */ - error (1, errno, "%s", dest_dirname); - } - - same = SAME_INODE (source_dir_stats, dest_dir_stats); - -#if ! _POSIX_NO_TRUNC && HAVE_PATHCONF && defined _PC_NAME_MAX - if (same && ! identical_basenames) - { - long name_max = (errno = 0, pathconf (dest_dirname, _PC_NAME_MAX)); - if (name_max < 0) - { - if (errno) - { - /* Shouldn't happen. */ - error (1, errno, "%s", dest_dirname); - } - same = false; - } - else - same = (name_max <= min_baselen - && memcmp (source_basename, dest_basename, name_max) == 0); - } -#endif - - free (source_dirname); - free (dest_dirname); - } - - return same; -} diff --git a/gnu/save-cwd.c b/gnu/save-cwd.c index 6cb3c36..c6b6342 100644 --- a/gnu/save-cwd.c +++ b/gnu/save-cwd.c @@ -33,6 +33,7 @@ #include "chdir-long.h" #include "unistd--.h" #include "xgetcwd.h" +#include "cloexec.h" #if GNULIB_FCNTL_SAFER # include "fcntl--.h" @@ -77,7 +78,7 @@ save_cwd (struct saved_cwd *cwd) { cwd->name = NULL; - cwd->desc = open (".", O_RDONLY); + cwd->desc = open (".", O_SEARCH); if (!GNULIB_FCNTL_SAFER) cwd->desc = fd_safer (cwd->desc); if (cwd->desc < 0) @@ -86,6 +87,7 @@ save_cwd (struct saved_cwd *cwd) return cwd->name ? 0 : -1; } + set_cloexec_flag (cwd->desc, true); return 0; } diff --git a/gnu/savedir.c b/gnu/savedir.c index a1eaa43..5984341 100644 --- a/gnu/savedir.c +++ b/gnu/savedir.c @@ -46,11 +46,11 @@ /* Return a freshly allocated string containing the file names in directory DIRP, separated by '\0' characters; the end is marked by two '\0' characters in a row. - Return NULL (setting errno) if DIRP cannot be read or closed. + Return NULL (setting errno) if DIRP cannot be read. If DIRP is NULL, return NULL without affecting errno. */ -static char * -savedirstream (DIR *dirp) +char * +streamsavedir (DIR *dirp) { char *name_space; size_t allocated = NAME_SIZE_DEFAULT; @@ -98,8 +98,6 @@ savedirstream (DIR *dirp) } name_space[used] = '\0'; save_errno = errno; - if (closedir (dirp) != 0) - save_errno = errno; if (save_errno != 0) { free (name_space); @@ -109,6 +107,22 @@ savedirstream (DIR *dirp) return name_space; } +/* Like savedirstreamp (DIRP), except also close DIRP. */ + +static char * +savedirstream (DIR *dirp) +{ + char *name_space = streamsavedir (dirp); + if (dirp && closedir (dirp) != 0) + { + int save_errno = errno; + free (name_space); + errno = save_errno; + return NULL; + } + return name_space; +} + /* Return a freshly allocated string containing the file names in directory DIR, separated by '\0' characters; the end is marked by two '\0' characters in a row. @@ -125,6 +139,7 @@ savedir (char const *dir) the end is marked by two '\0' characters in a row. Return NULL (setting errno) if FD cannot be read or closed. */ +/* deprecated */ char * fdsavedir (int fd) { diff --git a/gnu/savedir.h b/gnu/savedir.h index ee50d80..7ba1943 100644 --- a/gnu/savedir.h +++ b/gnu/savedir.h @@ -20,10 +20,12 @@ /* Written by David MacKenzie . */ -#if !defined SAVEDIR_H_ -# define SAVEDIR_H_ +#ifndef _GL_SAVEDIR_H +#define _GL_SAVEDIR_H +#include +char *streamsavedir (DIR *dirp); char *savedir (char const *dir); -char *fdsavedir (int fd); +char *fdsavedir (int fd); /* deprecated */ #endif diff --git a/gnu/setenv.c b/gnu/setenv.c index d4670e5..a1c1df8 100644 --- a/gnu/setenv.c +++ b/gnu/setenv.c @@ -66,6 +66,10 @@ __libc_lock_define_initialized (static, envlock) # define clearenv __clearenv # define tfind __tfind # define tsearch __tsearch +#else +/* Use the system functions, not the gnulib overrides in this file. */ +# undef malloc +# undef realloc #endif /* In the GNU C library implementation we try to be more clever and @@ -114,8 +118,8 @@ int __add_to_environ (const char *name, const char *value, const char *combined, int replace) { - register char **ep; - register size_t size; + char **ep; + size_t size; const size_t namelen = strlen (name); const size_t vallen = value != NULL ? strlen (value) + 1 : 0; @@ -149,6 +153,9 @@ __add_to_environ (const char *name, const char *value, const char *combined, : realloc (last_environ, (size + 2) * sizeof (char *))); if (new_environ == NULL) { + /* It's easier to set errno to ENOMEM than to rely on the + 'malloc-posix' and 'realloc-posix' gnulib modules. */ + __set_errno (ENOMEM); UNLOCK; return -1; } @@ -251,7 +258,7 @@ __add_to_environ (const char *name, const char *value, const char *combined, if (np == NULL) #endif { - np = malloc (namelen + 1 + vallen); + np = (char *) malloc (namelen + 1 + vallen); if (np == NULL) { #if defined USE_TSEARCH && !defined _LIBC diff --git a/gnu/stdarg.in.h b/gnu/stdarg.in.h index 5a17d8a..84d3e32 100644 --- a/gnu/stdarg.in.h +++ b/gnu/stdarg.in.h @@ -22,6 +22,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* The include_next requires a split double-inclusion guard. */ #@INCLUDE_NEXT@ @NEXT_STDARG_H@ diff --git a/gnu/stdbool.in.h b/gnu/stdbool.in.h index 39d1847..ea7ead5 100644 --- a/gnu/stdbool.in.h +++ b/gnu/stdbool.in.h @@ -52,6 +52,9 @@ with this substitute. With this substitute, only the values 0 and 1 give the expected result when converted to _Bool' or 'bool'. + - C99 allows the use of (_Bool)0.0 in constant expressions, but + this substitute cannot always provide this property. + Also, it is suggested that programs use 'bool' rather than '_Bool'; this isn't required, but 'bool' is more common. */ diff --git a/gnu/stddef.in.h b/gnu/stddef.in.h index 2de616b..d67a019 100644 --- a/gnu/stddef.in.h +++ b/gnu/stddef.in.h @@ -28,6 +28,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ #if defined __need_wchar_t || defined __need_size_t \ || defined __need_ptrdiff_t || defined __need_NULL \ diff --git a/gnu/stdint.in.h b/gnu/stdint.in.h index 8fd48f0..9775969 100644 --- a/gnu/stdint.in.h +++ b/gnu/stdint.in.h @@ -25,6 +25,11 @@ #ifndef _GL_STDINT_H +#if __GNUC__ >= 3 +@PRAGMA_SYSTEM_HEADER@ +#endif +@PRAGMA_COLUMNS@ + /* When including a system file that in turn includes , use the system , not our substitute. This avoids problems with (for example) VMS, whose includes @@ -51,9 +56,6 @@ in would reinclude us, skipping our contents because _GL_STDINT_H is defined. The include_next requires a split double-inclusion guard. */ -# if __GNUC__ >= 3 -@PRAGMA_SYSTEM_HEADER@ -# endif # @INCLUDE_NEXT@ @NEXT_STDINT_H@ #endif @@ -279,7 +281,8 @@ typedef unsigned long int gl_uintmax_t; /* Verify that intmax_t and uintmax_t have the same size. Too much code breaks if this is not the case. If this check fails, the reason is likely to be found in the autoconf macros. */ -typedef int _verify_intmax_size[2 * (sizeof (intmax_t) == sizeof (uintmax_t)) - 1]; +typedef int _verify_intmax_size[sizeof (intmax_t) == sizeof (uintmax_t) + ? 1 : -1]; /* 7.18.2. Limits of specified-width integer types */ @@ -476,8 +479,9 @@ typedef int _verify_intmax_size[2 * (sizeof (intmax_t) == sizeof (uintmax_t)) - /* wchar_t limits */ /* Get WCHAR_MIN, WCHAR_MAX. - This include is not on the top, above, because on OSF/1 4.0 we have a sequence of nested - includes -> -> -> , and the latter includes + This include is not on the top, above, because on OSF/1 4.0 we have a + sequence of nested includes + -> -> -> , and the latter includes and assumes its types are already defined. */ #if ! (defined WCHAR_MIN && defined WCHAR_MAX) # define _GL_JUST_INCLUDE_SYSTEM_WCHAR_H diff --git a/gnu/stdio-impl.h b/gnu/stdio-impl.h index a05563f..f3fbbc5 100644 --- a/gnu/stdio-impl.h +++ b/gnu/stdio-impl.h @@ -1,7 +1,7 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ /* Implementation details of FILE streams. - Copyright (C) 2007-2010 Free Software Foundation, Inc. + Copyright (C) 2007-2008, 2010 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -23,6 +23,11 @@ /* BSD stdio derived implementations. */ +#if defined __NetBSD__ /* NetBSD */ +/* Get __NetBSD_Version__. */ +# include +#endif + #if defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, MacOS X, Cygwin */ # if defined __DragonFly__ /* DragonFly */ @@ -52,7 +57,7 @@ # define fp_ fp # endif -# if defined __NetBSD__ || defined __OpenBSD__ /* NetBSD, OpenBSD */ +# if (defined __NetBSD__ && __NetBSD_Version__ >= 105270000) || defined __OpenBSD__ /* NetBSD >= 1.5ZA, OpenBSD */ /* See and */ struct __sfileext @@ -61,7 +66,7 @@ /* More fields, not relevant here. */ }; # define fp_ub ((struct __sfileext *) fp->_ext._base)->_ub -# else /* FreeBSD, DragonFly, MacOS X, Cygwin */ +# else /* FreeBSD, NetBSD <= 1.5Z, DragonFly, MacOS X, Cygwin */ # define fp_ub fp_->_ub # endif diff --git a/gnu/stdio-write.c b/gnu/stdio-write.c index 06047b4..4159368 100644 --- a/gnu/stdio-write.c +++ b/gnu/stdio-write.c @@ -65,7 +65,6 @@ } # if !REPLACE_PRINTF_POSIX /* avoid collision with printf.c */ -# if !DEPENDS_ON_LIBINTL /* avoid collision with intl/printf.c */ int printf (const char *format, ...) { @@ -78,7 +77,6 @@ printf (const char *format, ...) return retval; } -# endif # endif # if !REPLACE_FPRINTF_POSIX /* avoid collision with fprintf.c */ diff --git a/gnu/stdio.in.h b/gnu/stdio.in.h index 88b368b..02df65a 100644 --- a/gnu/stdio.in.h +++ b/gnu/stdio.in.h @@ -21,6 +21,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ #if defined __need_FILE || defined __need___FILE /* Special invocation convention inside glibc header files. */ @@ -65,6 +66,10 @@ /* The definition of _GL_WARN_ON_USE is copied here. */ +/* Macros for stringification. */ +#define _GL_STDIO_STRINGIZE(token) #token +#define _GL_STDIO_MACROEXPAND_AND_STRINGIZE(token) _GL_STDIO_STRINGIZE(token) + #if @GNULIB_DPRINTF@ # if @REPLACE_DPRINTF@ @@ -263,7 +268,8 @@ _GL_CXXALIASWARN (freopen); #elif defined GNULIB_POSIXCHECK # undef freopen /* Assume freopen is always declared. */ -_GL_WARN_ON_USE (freopen, "freopen on Win32 platforms is not POSIX compatible - " +_GL_WARN_ON_USE (freopen, + "freopen on Win32 platforms is not POSIX compatible - " "use gnulib module freopen for portability"); #endif @@ -324,30 +330,39 @@ _GL_CXXALIASWARN (fseek); # undef fseek # endif # if @REPLACE_FSEEKO@ -/* Provide fseek, fseeko functions that are aware of a preceding - fflush(), and which detect pipes. */ +/* Provide an fseeko function that is aware of a preceding fflush(), and which + detects pipes. */ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # undef fseeko # define fseeko rpl_fseeko # endif _GL_FUNCDECL_RPL (fseeko, int, (FILE *fp, off_t offset, int whence) _GL_ARG_NONNULL ((1))); -# if !@GNULIB_FSEEK@ - /* In order to avoid that fseek gets defined as a macro here, the - developer can request the 'fseek' module. */ -# undef fseek -# define fseek rpl_fseek +_GL_CXXALIAS_RPL (fseeko, int, (FILE *fp, off_t offset, int whence)); +# else +# if ! @HAVE_FSEEKO@ +_GL_FUNCDECL_SYS (fseeko, int, (FILE *fp, off_t offset, int whence) + _GL_ARG_NONNULL ((1))); +# endif +_GL_CXXALIAS_SYS (fseeko, int, (FILE *fp, off_t offset, int whence)); +# endif +_GL_CXXALIASWARN (fseeko); +# if (@REPLACE_FSEEKO@ || !@HAVE_FSEEKO@) && !@GNULIB_FSEEK@ + /* Provide an fseek function that is consistent with fseeko. */ + /* In order to avoid that fseek gets defined as a macro here, the + developer can request the 'fseek' module. */ +# undef fseek +# define fseek rpl_fseek static inline int _GL_ARG_NONNULL ((1)) rpl_fseek (FILE *fp, long offset, int whence) { +# if @REPLACE_FSEEKO@ + return rpl_fseeko (fp, offset, whence); +# else return fseeko (fp, offset, whence); -} # endif -_GL_CXXALIAS_RPL (fseeko, int, (FILE *fp, off_t offset, int whence)); -# else -_GL_CXXALIAS_SYS (fseeko, int, (FILE *fp, off_t offset, int whence)); +} # endif -_GL_CXXALIASWARN (fseeko); #elif defined GNULIB_POSIXCHECK # define _GL_FSEEK_WARN /* Category 1, above. */ # undef fseek @@ -399,22 +414,30 @@ _GL_CXXALIASWARN (ftell); # define ftello rpl_ftello # endif _GL_FUNCDECL_RPL (ftello, off_t, (FILE *fp) _GL_ARG_NONNULL ((1))); -# if !@GNULIB_FTELL@ - /* In order to avoid that ftell gets defined as a macro here, the - developer can request the 'ftell' module. */ -# undef ftell -# define ftell rpl_ftell +_GL_CXXALIAS_RPL (ftello, off_t, (FILE *fp)); +# else +# if ! @HAVE_FTELLO@ +_GL_FUNCDECL_SYS (ftello, off_t, (FILE *fp) _GL_ARG_NONNULL ((1))); +# endif +_GL_CXXALIAS_SYS (ftello, off_t, (FILE *fp)); +# endif +_GL_CXXALIASWARN (ftello); +# if (@REPLACE_FTELLO@ || !@HAVE_FTELLO@) && !@GNULIB_FTELL@ + /* Provide an ftell function that is consistent with ftello. */ + /* In order to avoid that ftell gets defined as a macro here, the + developer can request the 'ftell' module. */ +# undef ftell +# define ftell rpl_ftell static inline long _GL_ARG_NONNULL ((1)) rpl_ftell (FILE *f) { +# if @REPLACE_FTELLO@ + return rpl_ftello (f); +# else return ftello (f); -} # endif -_GL_CXXALIAS_RPL (ftello, off_t, (FILE *fp)); -# else -_GL_CXXALIAS_SYS (ftello, off_t, (FILE *fp)); +} # endif -_GL_CXXALIASWARN (ftello); #elif defined GNULIB_POSIXCHECK # define _GL_FTELL_WARN /* Category 1, above. */ # undef ftell @@ -518,7 +541,9 @@ _GL_FUNCDECL_SYS (getline, ssize_t, _GL_CXXALIAS_SYS (getline, ssize_t, (char **lineptr, size_t *linesize, FILE *stream)); # endif +# if @HAVE_DECL_GETLINE@ _GL_CXXALIASWARN (getline); +# endif #elif defined GNULIB_POSIXCHECK # undef getline # if HAVE_RAW_DECL_GETLINE @@ -623,16 +648,26 @@ _GL_WARN_ON_USE (popen, "popen is buggy on some platforms - " #if @GNULIB_PRINTF_POSIX@ || @GNULIB_PRINTF@ # if (@GNULIB_PRINTF_POSIX@ && @REPLACE_PRINTF@) \ || (@GNULIB_PRINTF@ && @REPLACE_STDIO_WRITE_FUNCS@ && @GNULIB_STDIO_H_SIGPIPE@) -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# if defined __GNUC__ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) /* Don't break __attribute__((format(printf,M,N))). */ -# define printf __printf__ -# endif -# define GNULIB_overrides_printf 1 +# define printf __printf__ +# endif _GL_FUNCDECL_RPL_1 (__printf__, int, (const char *format, ...) + __asm__ (@ASM_SYMBOL_PREFIX@ + _GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_printf)) __attribute__ ((__format__ (__printf__, 1, 2))) _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_RPL_1 (printf, __printf__, int, (const char *format, ...)); +# else +_GL_FUNCDECL_RPL (printf, int, + (const char *format, ...) + __attribute__ ((__format__ (__printf__, 1, 2))) + _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (printf, int, (const char *format, ...)); +# endif +# define GNULIB_overrides_printf 1 # else _GL_CXXALIAS_SYS (printf, int, (const char *format, ...)); # endif @@ -821,6 +856,25 @@ _GL_WARN_ON_USE (sprintf, "sprintf is not always POSIX compliant - " "POSIX compliance"); #endif +#if @GNULIB_TMPFILE@ +# if @REPLACE_TMPFILE@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# define tmpfile rpl_tmpfile +# endif +_GL_FUNCDECL_RPL (tmpfile, FILE *, (void)); +_GL_CXXALIAS_RPL (tmpfile, FILE *, (void)); +# else +_GL_CXXALIAS_SYS (tmpfile, FILE *, (void)); +# endif +_GL_CXXALIASWARN (tmpfile); +#elif defined GNULIB_POSIXCHECK +# undef tmpfile +# if HAVE_RAW_DECL_TMPFILE +_GL_WARN_ON_USE (tmpfile, "tmpfile is not usable on mingw - " + "use gnulib module tmpfile for portability"); +# endif +#endif + #if @GNULIB_VASPRINTF@ /* Write formatted output to a string dynamically allocated with malloc(). If the memory allocation succeeds, store the address of the string in @@ -885,7 +939,10 @@ _GL_FUNCDECL_SYS (vdprintf, int, (int fd, const char *format, va_list args) __attribute__ ((__format__ (__printf__, 2, 0))) _GL_ARG_NONNULL ((2))); # endif -_GL_CXXALIAS_SYS (vdprintf, int, (int fd, const char *format, va_list args)); +/* Need to cast, because on Solaris, the third parameter will likely be + __va_list args. */ +_GL_CXXALIAS_SYS_CAST (vdprintf, int, + (int fd, const char *format, va_list args)); # endif _GL_CXXALIASWARN (vdprintf); #elif defined GNULIB_POSIXCHECK @@ -908,7 +965,11 @@ _GL_FUNCDECL_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args) _GL_ARG_NONNULL ((1, 2))); _GL_CXXALIAS_RPL (vfprintf, int, (FILE *fp, const char *format, va_list args)); # else -_GL_CXXALIAS_SYS (vfprintf, int, (FILE *fp, const char *format, va_list args)); +/* Need to cast, because on Solaris, the third parameter is + __va_list args + and GCC's fixincludes did not change this to __gnuc_va_list. */ +_GL_CXXALIAS_SYS_CAST (vfprintf, int, + (FILE *fp, const char *format, va_list args)); # endif _GL_CXXALIASWARN (vfprintf); #endif @@ -934,7 +995,10 @@ _GL_FUNCDECL_RPL (vprintf, int, (const char *format, va_list args) _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_RPL (vprintf, int, (const char *format, va_list args)); # else -_GL_CXXALIAS_SYS (vprintf, int, (const char *format, va_list args)); +/* Need to cast, because on Solaris, the second parameter is + __va_list args + and GCC's fixincludes did not change this to __gnuc_va_list. */ +_GL_CXXALIAS_SYS_CAST (vprintf, int, (const char *format, va_list args)); # endif _GL_CXXALIASWARN (vprintf); #endif @@ -990,8 +1054,11 @@ _GL_FUNCDECL_RPL (vsprintf, int, _GL_CXXALIAS_RPL (vsprintf, int, (char *str, const char *format, va_list args)); # else -_GL_CXXALIAS_SYS (vsprintf, int, - (char *str, const char *format, va_list args)); +/* Need to cast, because on Solaris, the third parameter is + __va_list args + and GCC's fixincludes did not change this to __gnuc_va_list. */ +_GL_CXXALIAS_SYS_CAST (vsprintf, int, + (char *str, const char *format, va_list args)); # endif _GL_CXXALIASWARN (vsprintf); #elif defined GNULIB_POSIXCHECK diff --git a/gnu/stdlib.in.h b/gnu/stdlib.in.h index 9b40775..5b3c4d7 100644 --- a/gnu/stdlib.in.h +++ b/gnu/stdlib.in.h @@ -20,6 +20,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ #if defined __need_malloc_and_calloc /* Special invocation convention inside glibc header files. */ @@ -40,6 +41,11 @@ /* NetBSD 5.0 mis-defines NULL. */ #include +/* MirBSD 10 defines WEXITSTATUS in , not in . */ +#if @GNULIB_SYSTEM_POSIX@ && !defined WEXITSTATUS +# include +#endif + /* Solaris declares getloadavg() in . */ #if (@GNULIB_GETLOADAVG@ || defined GNULIB_POSIXCHECK) && @HAVE_SYS_LOADAVG_H@ # include @@ -57,6 +63,9 @@ #endif #if !@HAVE_STRUCT_RANDOM_DATA@ +/* Define 'struct random_data'. + But allow multiple gnulib generated replacements to coexist. */ +# if !GNULIB_defined_struct_random_data struct random_data { int32_t *fptr; /* Front pointer. */ @@ -67,15 +76,23 @@ struct random_data int rand_sep; /* Distance between front and rear. */ int32_t *end_ptr; /* Pointer behind state table. */ }; +# define GNULIB_defined_struct_random_data 1 +# endif #endif -#if (@GNULIB_MKSTEMP@ || @GNULIB_GETSUBOPT@ || defined GNULIB_POSIXCHECK) && ! defined __GLIBC__ +#if (@GNULIB_MKSTEMP@ || @GNULIB_GETSUBOPT@ || defined GNULIB_POSIXCHECK) && ! defined __GLIBC__ && !((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) /* On MacOS X 10.3, only declares mkstemp. */ /* On Cygwin 1.7.1, only declares getsubopt. */ -/* But avoid namespace pollution on glibc systems. */ +/* But avoid namespace pollution on glibc systems and native Windows. */ # include #endif +#ifndef __attribute__ +# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) +# define __attribute__(Spec) /* empty */ +# endif +#endif + /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ /* The definition of _GL_ARG_NONNULL is copied here. */ @@ -97,6 +114,23 @@ struct random_data #endif +#if @GNULIB__EXIT@ +/* Terminate the current process with the given return code, without running + the 'atexit' handlers. */ +# if !@HAVE__EXIT@ +_GL_FUNCDECL_SYS (_Exit, void, (int status) __attribute__ ((__noreturn__))); +# endif +_GL_CXXALIAS_SYS (_Exit, void, (int status)); +_GL_CXXALIASWARN (_Exit); +#elif defined GNULIB_POSIXCHECK +# undef _Exit +# if HAVE_RAW_DECL__EXIT +_GL_WARN_ON_USE (_Exit, "_Exit is unportable - " + "use gnulib module _Exit for portability"); +# endif +#endif + + #if @GNULIB_ATOLL@ /* Parse a signed decimal integer. Returns the value of the integer. Errors are not detected. */ @@ -114,7 +148,7 @@ _GL_WARN_ON_USE (atoll, "atoll is unportable - " #endif #if @GNULIB_CALLOC_POSIX@ -# if !@HAVE_CALLOC_POSIX@ +# if @REPLACE_CALLOC@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # undef calloc # define calloc rpl_calloc @@ -151,7 +185,8 @@ _GL_CXXALIASWARN (canonicalize_file_name); #elif defined GNULIB_POSIXCHECK # undef canonicalize_file_name # if HAVE_RAW_DECL_CANONICALIZE_FILE_NAME -_GL_WARN_ON_USE (canonicalize_file_name, "canonicalize_file_name is unportable - " +_GL_WARN_ON_USE (canonicalize_file_name, + "canonicalize_file_name is unportable - " "use gnulib module canonicalize-lgpl for portability"); # endif #endif @@ -203,8 +238,24 @@ _GL_WARN_ON_USE (getsubopt, "getsubopt is unportable - " # endif #endif +#if @GNULIB_GRANTPT@ +/* Change the ownership and access permission of the slave side of the + pseudo-terminal whose master side is specified by FD. */ +# if !@HAVE_GRANTPT@ +_GL_FUNCDECL_SYS (grantpt, int, (int fd)); +# endif +_GL_CXXALIAS_SYS (grantpt, int, (int fd)); +_GL_CXXALIASWARN (grantpt); +#elif defined GNULIB_POSIXCHECK +# undef grantpt +# if HAVE_RAW_DECL_GRANTPT +_GL_WARN_ON_USE (ptsname, "grantpt is not portable - " + "use gnulib module grantpt for portability"); +# endif +#endif + #if @GNULIB_MALLOC_POSIX@ -# if !@HAVE_MALLOC_POSIX@ +# if @REPLACE_MALLOC@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # undef malloc # define malloc rpl_malloc @@ -315,6 +366,9 @@ _GL_WARN_ON_USE (mkostemps, "mkostemps is unportable - " _GL_FUNCDECL_RPL (mkstemp, int, (char * /*template*/) _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_RPL (mkstemp, int, (char * /*template*/)); # else +# if ! @HAVE_MKSTEMP@ +_GL_FUNCDECL_SYS (mkstemp, int, (char * /*template*/) _GL_ARG_NONNULL ((1))); +# endif _GL_CXXALIAS_SYS (mkstemp, int, (char * /*template*/)); # endif _GL_CXXALIASWARN (mkstemp); @@ -351,6 +405,22 @@ _GL_WARN_ON_USE (mkstemps, "mkstemps is unportable - " # endif #endif +#if @GNULIB_PTSNAME@ +/* Return the pathname of the pseudo-terminal slave associated with + the master FD is open on, or NULL on errors. */ +# if !@HAVE_PTSNAME@ +_GL_FUNCDECL_SYS (ptsname, char *, (int fd)); +# endif +_GL_CXXALIAS_SYS (ptsname, char *, (int fd)); +_GL_CXXALIASWARN (ptsname); +#elif defined GNULIB_POSIXCHECK +# undef ptsname +# if HAVE_RAW_DECL_PTSNAME +_GL_WARN_ON_USE (ptsname, "ptsname is not portable - " + "use gnulib module ptsname for portability"); +# endif +#endif + #if @GNULIB_PUTENV@ # if @REPLACE_PUTENV@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) @@ -444,7 +514,7 @@ _GL_WARN_ON_USE (setstate_r, "setstate_r is unportable - " #if @GNULIB_REALLOC_POSIX@ -# if !@HAVE_REALLOC_POSIX@ +# if @REPLACE_REALLOC@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # undef realloc # define realloc rpl_realloc @@ -608,6 +678,22 @@ _GL_WARN_ON_USE (strtoull, "strtoull is unportable - " # endif #endif +#if @GNULIB_UNLOCKPT@ +/* Unlock the slave side of the pseudo-terminal whose master side is specified + by FD, so that it can be opened. */ +# if !@HAVE_UNLOCKPT@ +_GL_FUNCDECL_SYS (unlockpt, int, (int fd)); +# endif +_GL_CXXALIAS_SYS (unlockpt, int, (int fd)); +_GL_CXXALIASWARN (unlockpt); +#elif defined GNULIB_POSIXCHECK +# undef unlockpt +# if HAVE_RAW_DECL_UNLOCKPT +_GL_WARN_ON_USE (unlockpt, "unlockpt is not portable - " + "use gnulib module unlockpt for portability"); +# endif +#endif + #if @GNULIB_UNSETENV@ /* Remove the variable NAME from the environment. */ # if @REPLACE_UNSETENV@ diff --git a/gnu/strerror.c b/gnu/strerror.c index 26ef483..ad29c71 100644 --- a/gnu/strerror.c +++ b/gnu/strerror.c @@ -34,6 +34,9 @@ # include "intprops.h" +/* Use the system functions, not the gnulib overrides in this file. */ +# undef sprintf + # undef strerror # if ! HAVE_DECL_STRERROR # define strerror(n) NULL @@ -321,6 +324,12 @@ rpl_strerror (int n) break; # endif +# if GNULIB_defined_EDQUOT + case EDQUOT: + msg = "Disk quota exceeded"; + break; +# endif + # if GNULIB_defined_ECANCELED case ECANCELED: msg = "Operation canceled"; diff --git a/gnu/string.in.h b/gnu/string.in.h index 8b414ad..22de096 100644 --- a/gnu/string.in.h +++ b/gnu/string.in.h @@ -23,6 +23,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* The include_next requires a split double-inclusion guard. */ #@INCLUDE_NEXT@ @NEXT_STRING_H@ @@ -43,12 +44,20 @@ # if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) # define __attribute__(Spec) /* empty */ # endif +#endif /* The attribute __pure__ was added in gcc 2.96. */ -# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 96) -# define __pure__ /* empty */ -# endif +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) +# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) +#else +# define _GL_ATTRIBUTE_PURE /* empty */ #endif +/* NetBSD 5.0 declares strsignal in , not in . */ +/* But in any case avoid namespace pollution on glibc systems. */ +#if (@GNULIB_STRSIGNAL@ || defined GNULIB_POSIXCHECK) && defined __NetBSD__ \ + && ! defined __GLIBC__ +# include +#endif /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ @@ -64,25 +73,30 @@ # define memchr rpl_memchr # endif _GL_FUNCDECL_RPL (memchr, void *, (void const *__s, int __c, size_t __n) - __attribute__ ((__pure__)) + _GL_ATTRIBUTE_PURE _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_RPL (memchr, void *, (void const *__s, int __c, size_t __n)); # else -# if defined __SUNPRO_CC - /* This compiler defines an overloaded function +# if ! @HAVE_MEMCHR@ +_GL_FUNCDECL_SYS (memchr, void *, (void const *__s, int __c, size_t __n) + _GL_ATTRIBUTE_PURE + _GL_ARG_NONNULL ((1))); +# endif + /* On some systems, this function is defined as an overloaded function: extern "C" { const void * std::memchr (const void *, int, size_t); } - extern "C++" { inline void * std::memchr (void *, int, size_t); } - and diagnoses an error - "Error: Could not find a match for std::memchr(const void*, int, unsigned)" - */ + extern "C++" { void * std::memchr (void *, int, size_t); } */ _GL_CXXALIAS_SYS_CAST2 (memchr, void *, (void const *__s, int __c, size_t __n), void const *, (void const *__s, int __c, size_t __n)); -# else -_GL_CXXALIAS_SYS (memchr, void *, (void const *__s, int __c, size_t __n)); -# endif # endif +# if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 10 \ + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) +_GL_CXXALIASWARN1 (memchr, void *, (void *__s, int __c, size_t __n)); +_GL_CXXALIASWARN1 (memchr, void const *, + (void const *__s, int __c, size_t __n)); +# else _GL_CXXALIASWARN (memchr); +# endif #elif defined GNULIB_POSIXCHECK # undef memchr /* Assume memchr is always declared. */ @@ -99,7 +113,8 @@ _GL_WARN_ON_USE (memchr, "memchr has platform-specific bugs - " _GL_FUNCDECL_RPL (memmem, void *, (void const *__haystack, size_t __haystack_len, void const *__needle, size_t __needle_len) - __attribute__ ((__pure__)) _GL_ARG_NONNULL ((1, 3))); + _GL_ATTRIBUTE_PURE + _GL_ARG_NONNULL ((1, 3))); _GL_CXXALIAS_RPL (memmem, void *, (void const *__haystack, size_t __haystack_len, void const *__needle, size_t __needle_len)); @@ -108,7 +123,8 @@ _GL_CXXALIAS_RPL (memmem, void *, _GL_FUNCDECL_SYS (memmem, void *, (void const *__haystack, size_t __haystack_len, void const *__needle, size_t __needle_len) - __attribute__ ((__pure__)) _GL_ARG_NONNULL ((1, 3))); + _GL_ATTRIBUTE_PURE + _GL_ARG_NONNULL ((1, 3))); # endif _GL_CXXALIAS_SYS (memmem, void *, (void const *__haystack, size_t __haystack_len, @@ -149,11 +165,22 @@ _GL_WARN_ON_USE (mempcpy, "mempcpy is unportable - " #if @GNULIB_MEMRCHR@ # if ! @HAVE_DECL_MEMRCHR@ _GL_FUNCDECL_SYS (memrchr, void *, (void const *, int, size_t) - __attribute__ ((__pure__)) + _GL_ATTRIBUTE_PURE _GL_ARG_NONNULL ((1))); # endif -_GL_CXXALIAS_SYS (memrchr, void *, (void const *, int, size_t)); + /* On some systems, this function is defined as an overloaded function: + extern "C++" { const void * std::memrchr (const void *, int, size_t); } + extern "C++" { void * std::memrchr (void *, int, size_t); } */ +_GL_CXXALIAS_SYS_CAST2 (memrchr, + void *, (void const *, int, size_t), + void const *, (void const *, int, size_t)); +# if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 10 \ + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) +_GL_CXXALIASWARN1 (memrchr, void *, (void *, int, size_t)); +_GL_CXXALIASWARN1 (memrchr, void const *, (void const *, int, size_t)); +# else _GL_CXXALIASWARN (memrchr); +# endif #elif defined GNULIB_POSIXCHECK # undef memrchr # if HAVE_RAW_DECL_MEMRCHR @@ -168,11 +195,22 @@ _GL_WARN_ON_USE (memrchr, "memrchr is unportable - " #if @GNULIB_RAWMEMCHR@ # if ! @HAVE_RAWMEMCHR@ _GL_FUNCDECL_SYS (rawmemchr, void *, (void const *__s, int __c_in) - __attribute__ ((__pure__)) + _GL_ATTRIBUTE_PURE _GL_ARG_NONNULL ((1))); # endif -_GL_CXXALIAS_SYS (rawmemchr, void *, (void const *__s, int __c_in)); + /* On some systems, this function is defined as an overloaded function: + extern "C++" { const void * std::rawmemchr (const void *, int); } + extern "C++" { void * std::rawmemchr (void *, int); } */ +_GL_CXXALIAS_SYS_CAST2 (rawmemchr, + void *, (void const *__s, int __c_in), + void const *, (void const *__s, int __c_in)); +# if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 10 \ + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) +_GL_CXXALIASWARN1 (rawmemchr, void *, (void *__s, int __c_in)); +_GL_CXXALIASWARN1 (rawmemchr, void const *, (void const *__s, int __c_in)); +# else _GL_CXXALIASWARN (rawmemchr); +# endif #elif defined GNULIB_POSIXCHECK # undef rawmemchr # if HAVE_RAW_DECL_RAWMEMCHR @@ -202,8 +240,9 @@ _GL_WARN_ON_USE (stpcpy, "stpcpy is unportable - " /* Copy no more than N bytes of SRC to DST, returning a pointer past the last non-NUL byte written into DST. */ #if @GNULIB_STPNCPY@ -# if ! @HAVE_STPNCPY@ +# if @REPLACE_STPNCPY@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef stpncpy # define stpncpy rpl_stpncpy # endif _GL_FUNCDECL_RPL (stpncpy, char *, @@ -214,6 +253,12 @@ _GL_CXXALIAS_RPL (stpncpy, char *, (char *restrict __dst, char const *restrict __src, size_t __n)); # else +# if ! @HAVE_STPNCPY@ +_GL_FUNCDECL_SYS (stpncpy, char *, + (char *restrict __dst, char const *restrict __src, + size_t __n) + _GL_ARG_NONNULL ((1, 2))); +# endif _GL_CXXALIAS_SYS (stpncpy, char *, (char *restrict __dst, char const *restrict __src, size_t __n)); @@ -241,11 +286,22 @@ _GL_WARN_ON_USE (strchr, "strchr cannot work correctly on character strings " #if @GNULIB_STRCHRNUL@ # if ! @HAVE_STRCHRNUL@ _GL_FUNCDECL_SYS (strchrnul, char *, (char const *__s, int __c_in) - __attribute__ ((__pure__)) + _GL_ATTRIBUTE_PURE _GL_ARG_NONNULL ((1))); # endif -_GL_CXXALIAS_SYS (strchrnul, char *, (char const *__s, int __c_in)); + /* On some systems, this function is defined as an overloaded function: + extern "C++" { const char * std::strchrnul (const char *, int); } + extern "C++" { char * std::strchrnul (char *, int); } */ +_GL_CXXALIAS_SYS_CAST2 (strchrnul, + char *, (char const *__s, int __c_in), + char const *, (char const *__s, int __c_in)); +# if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 10 \ + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) +_GL_CXXALIASWARN1 (strchrnul, char *, (char *__s, int __c_in)); +_GL_CXXALIASWARN1 (strchrnul, char const *, (char const *__s, int __c_in)); +# else _GL_CXXALIASWARN (strchrnul); +# endif #elif defined GNULIB_POSIXCHECK # undef strchrnul # if HAVE_RAW_DECL_STRCHRNUL @@ -264,6 +320,10 @@ _GL_WARN_ON_USE (strchrnul, "strchrnul is unportable - " _GL_FUNCDECL_RPL (strdup, char *, (char const *__s) _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_RPL (strdup, char *, (char const *__s)); # else +# if defined __cplusplus && defined GNULIB_NAMESPACE && defined strdup + /* strdup exists as a function and as a macro. Get rid of the macro. */ +# undef strdup +# endif # if !(@HAVE_DECL_STRDUP@ || defined strdup) _GL_FUNCDECL_SYS (strdup, char *, (char const *__s) _GL_ARG_NONNULL ((1))); # endif @@ -278,6 +338,28 @@ _GL_WARN_ON_USE (strdup, "strdup is unportable - " # endif #endif +/* Append no more than N characters from SRC onto DEST. */ +#if @GNULIB_STRNCAT@ +# if @REPLACE_STRNCAT@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef strncat +# define strncat rpl_strncat +# endif +_GL_FUNCDECL_RPL (strncat, char *, (char *dest, const char *src, size_t n) + _GL_ARG_NONNULL ((1, 2))); +_GL_CXXALIAS_RPL (strncat, char *, (char *dest, const char *src, size_t n)); +# else +_GL_CXXALIAS_SYS (strncat, char *, (char *dest, const char *src, size_t n)); +# endif +_GL_CXXALIASWARN (strncat); +#elif defined GNULIB_POSIXCHECK +# undef strncat +# if HAVE_RAW_DECL_STRNCAT +_GL_WARN_ON_USE (strncat, "strncat is unportable - " + "use gnulib module strncat for portability"); +# endif +#endif + /* Return a newly allocated copy of at most N bytes of STRING. */ #if @GNULIB_STRNDUP@ # if @REPLACE_STRNDUP@ @@ -308,12 +390,23 @@ _GL_WARN_ON_USE (strndup, "strndup is unportable - " MAXLEN bytes. If no '\0' terminator is found in that many bytes, return MAXLEN. */ #if @GNULIB_STRNLEN@ -# if ! @HAVE_DECL_STRNLEN@ +# if @REPLACE_STRNLEN@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef strnlen +# define strnlen rpl_strnlen +# endif +_GL_FUNCDECL_RPL (strnlen, size_t, (char const *__string, size_t __maxlen) + _GL_ATTRIBUTE_PURE + _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (strnlen, size_t, (char const *__string, size_t __maxlen)); +# else +# if ! @HAVE_DECL_STRNLEN@ _GL_FUNCDECL_SYS (strnlen, size_t, (char const *__string, size_t __maxlen) - __attribute__ ((__pure__)) + _GL_ATTRIBUTE_PURE _GL_ARG_NONNULL ((1))); -# endif +# endif _GL_CXXALIAS_SYS (strnlen, size_t, (char const *__string, size_t __maxlen)); +# endif _GL_CXXALIASWARN (strnlen); #elif defined GNULIB_POSIXCHECK # undef strnlen @@ -339,23 +432,23 @@ _GL_WARN_ON_USE (strcspn, "strcspn cannot work correctly on character strings " #if @GNULIB_STRPBRK@ # if ! @HAVE_STRPBRK@ _GL_FUNCDECL_SYS (strpbrk, char *, (char const *__s, char const *__accept) - __attribute__ ((__pure__)) + _GL_ATTRIBUTE_PURE _GL_ARG_NONNULL ((1, 2))); # endif -# if defined __SUNPRO_CC - /* This compiler defines an overloaded function + /* On some systems, this function is defined as an overloaded function: extern "C" { const char * strpbrk (const char *, const char *); } - extern "C++" { inline char * strpbrk (char *, const char *); } - and diagnoses an error - "Error: Could not find a match for std::strpbrk(const char*, const char*)" - */ + extern "C++" { char * strpbrk (char *, const char *); } */ _GL_CXXALIAS_SYS_CAST2 (strpbrk, char *, (char const *__s, char const *__accept), const char *, (char const *__s, char const *__accept)); +# if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 10 \ + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) +_GL_CXXALIASWARN1 (strpbrk, char *, (char *__s, char const *__accept)); +_GL_CXXALIASWARN1 (strpbrk, char const *, + (char const *__s, char const *__accept)); # else -_GL_CXXALIAS_SYS (strpbrk, char *, (char const *__s, char const *__accept)); -# endif _GL_CXXALIASWARN (strpbrk); +# endif # if defined GNULIB_POSIXCHECK /* strpbrk() assumes the second argument is a list of single-byte characters. Even in this simple case, it does not work with multibyte strings if the @@ -439,13 +532,25 @@ _GL_WARN_ON_USE (strsep, "strsep is unportable - " # define strstr rpl_strstr # endif _GL_FUNCDECL_RPL (strstr, char *, (const char *haystack, const char *needle) - __attribute__ ((__pure__)) + _GL_ATTRIBUTE_PURE _GL_ARG_NONNULL ((1, 2))); _GL_CXXALIAS_RPL (strstr, char *, (const char *haystack, const char *needle)); # else -_GL_CXXALIAS_SYS (strstr, char *, (const char *haystack, const char *needle)); -# endif + /* On some systems, this function is defined as an overloaded function: + extern "C++" { const char * strstr (const char *, const char *); } + extern "C++" { char * strstr (char *, const char *); } */ +_GL_CXXALIAS_SYS_CAST2 (strstr, + char *, (const char *haystack, const char *needle), + const char *, (const char *haystack, const char *needle)); +# endif +# if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 10 \ + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) +_GL_CXXALIASWARN1 (strstr, char *, (char *haystack, const char *needle)); +_GL_CXXALIASWARN1 (strstr, const char *, + (const char *haystack, const char *needle)); +# else _GL_CXXALIASWARN (strstr); +# endif #elif defined GNULIB_POSIXCHECK /* strstr() does not work with multibyte strings if the locale encoding is different from UTF-8: @@ -469,19 +574,32 @@ _GL_WARN_ON_USE (strstr, "strstr is quadratic on many systems, and cannot " # endif _GL_FUNCDECL_RPL (strcasestr, char *, (const char *haystack, const char *needle) - __attribute__ ((__pure__)) _GL_ARG_NONNULL ((1, 2))); + _GL_ATTRIBUTE_PURE + _GL_ARG_NONNULL ((1, 2))); _GL_CXXALIAS_RPL (strcasestr, char *, (const char *haystack, const char *needle)); # else # if ! @HAVE_STRCASESTR@ _GL_FUNCDECL_SYS (strcasestr, char *, (const char *haystack, const char *needle) - __attribute__ ((__pure__)) _GL_ARG_NONNULL ((1, 2))); + _GL_ATTRIBUTE_PURE + _GL_ARG_NONNULL ((1, 2))); # endif -_GL_CXXALIAS_SYS (strcasestr, char *, - (const char *haystack, const char *needle)); -# endif + /* On some systems, this function is defined as an overloaded function: + extern "C++" { const char * strcasestr (const char *, const char *); } + extern "C++" { char * strcasestr (char *, const char *); } */ +_GL_CXXALIAS_SYS_CAST2 (strcasestr, + char *, (const char *haystack, const char *needle), + const char *, (const char *haystack, const char *needle)); +# endif +# if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 10 \ + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) +_GL_CXXALIASWARN1 (strcasestr, char *, (char *haystack, const char *needle)); +_GL_CXXALIASWARN1 (strcasestr, const char *, + (const char *haystack, const char *needle)); +# else _GL_CXXALIASWARN (strcasestr); +# endif #elif defined GNULIB_POSIXCHECK /* strcasestr() does not work with multibyte strings: It is a glibc extension, and glibc implements it only for unibyte @@ -666,11 +784,10 @@ _GL_EXTERN_C int mbsncasecmp (const char *s1, const char *s2, size_t n) #if @GNULIB_MBSPCASECMP@ /* Compare the initial segment of the character string STRING consisting of at most mbslen (PREFIX) characters with the character string PREFIX, - ignoring case, returning less than, equal to or greater than zero if this - initial segment is lexicographically less than, equal to or greater than - PREFIX. - Note: This function may, in multibyte locales, return 0 if STRING is of - smaller length than PREFIX! + ignoring case. If the two match, return a pointer to the first byte + after this prefix in STRING. Otherwise, return NULL. + Note: This function may, in multibyte locales, return non-NULL if STRING + is of smaller length than PREFIX! Unlike strncasecmp(), this function works correctly in multibyte locales. */ _GL_EXTERN_C char * mbspcasecmp (const char *string, const char *prefix) diff --git a/gnu/strings.in.h b/gnu/strings.in.h index e1d7725..3511072 100644 --- a/gnu/strings.in.h +++ b/gnu/strings.in.h @@ -23,6 +23,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* The include_next requires a split double-inclusion guard. */ #@INCLUDE_NEXT@ @NEXT_STRINGS_H@ diff --git a/gnu/strtol.c b/gnu/strtol.c index 7e3519d..aee2ece 100644 --- a/gnu/strtol.c +++ b/gnu/strtol.c @@ -116,9 +116,9 @@ operating on `long long int's. */ #ifdef QUAD # define LONG long long -# define STRTOL_LONG_MIN LONG_LONG_MIN -# define STRTOL_LONG_MAX LONG_LONG_MAX -# define STRTOL_ULONG_MAX ULONG_LONG_MAX +# define STRTOL_LONG_MIN LLONG_MIN +# define STRTOL_LONG_MAX LLONG_MAX +# define STRTOL_ULONG_MAX ULLONG_MAX /* The extra casts in the following macros work around compiler bugs, e.g., in Cray C 5.0.3.0. */ @@ -149,19 +149,19 @@ ? (t) -1 \ : ~ (~ (t) 0 << (sizeof (t) * CHAR_BIT - 1)))) -# ifndef ULONG_LONG_MAX -# define ULONG_LONG_MAX TYPE_MAXIMUM (unsigned long long) +# ifndef ULLONG_MAX +# define ULLONG_MAX TYPE_MAXIMUM (unsigned long long) # endif -# ifndef LONG_LONG_MAX -# define LONG_LONG_MAX TYPE_MAXIMUM (long long int) +# ifndef LLONG_MAX +# define LLONG_MAX TYPE_MAXIMUM (long long int) # endif -# ifndef LONG_LONG_MIN -# define LONG_LONG_MIN TYPE_MINIMUM (long long int) +# ifndef LLONG_MIN +# define LLONG_MIN TYPE_MINIMUM (long long int) # endif # if __GNUC__ == 2 && __GNUC_MINOR__ < 7 /* Work around gcc bug with using this constant. */ - static const unsigned long long int maxquad = ULONG_LONG_MAX; + static const unsigned long long int maxquad = ULLONG_MAX; # undef STRTOL_ULONG_MAX # define STRTOL_ULONG_MAX maxquad # endif diff --git a/gnu/hash-pjw.c b/gnu/symlink.c similarity index 52% rename from gnu/hash-pjw.c rename to gnu/symlink.c index eac00c6..ecf646f 100644 --- a/gnu/hash-pjw.c +++ b/gnu/symlink.c @@ -1,8 +1,7 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -/* hash-pjw.c -- compute a hash value from a NUL-terminated string. - - Copyright (C) 2001, 2003, 2006, 2009-2010 Free Software Foundation, Inc. +/* Stub for symlink(). + Copyright (C) 2009, 2010 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -19,24 +18,42 @@ #include -#include "hash-pjw.h" +/* Specification. */ +#include + +#include +#include +#include -#include -#define SIZE_BITS (sizeof (size_t) * CHAR_BIT) +#if HAVE_SYMLINK -/* A hash function for NUL-terminated char* strings using - the method described by Bruno Haible. - See http://www.haible.de/bruno/hashfunc.html. */ +# undef symlink -size_t -hash_pjw (const void *x, size_t tablesize) +/* Create a symlink, but reject trailing slash. */ +int +rpl_symlink (char const *contents, char const *name) { - const char *s; - size_t h = 0; + size_t len = strlen (name); + if (len && name[len - 1] == '/') + { + struct stat st; + if (lstat (name, &st) == 0) + errno = EEXIST; + return -1; + } + return symlink (contents, name); +} - for (s = x; *s; s++) - h = *s + ((h << 9) | (h >> (SIZE_BITS - 9))); +#else /* !HAVE_SYMLINK */ - return h % tablesize; +/* The system does not support symlinks. */ +int +symlink (char const *contents _GL_UNUSED, + char const *name _GL_UNUSED) +{ + errno = ENOSYS; + return -1; } + +#endif /* !HAVE_SYMLINK */ diff --git a/gnu/symlinkat.c b/gnu/symlinkat.c new file mode 100644 index 0000000..fd57e53 --- /dev/null +++ b/gnu/symlinkat.c @@ -0,0 +1,78 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Create a symlink relative to an open directory. + Copyright (C) 2009-2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +#if !HAVE_SYMLINK +/* Mingw lacks symlink, and it is more efficient to provide a trivial + wrapper than to go through at-func.c to call rpl_symlink. */ + +# include + +int +symlinkat (char const *path1 _GL_UNUSED, int fd _GL_UNUSED, + char const *path2 _GL_UNUSED) +{ + errno = ENOSYS; + return -1; +} + +#else /* HAVE_SYMLINK */ + +/* Our openat helper functions expect the directory parameter first, + not second. These shims make life easier. */ + +/* Like symlink, but with arguments reversed. */ +static int +symlink_reversed (char const *file, char const *contents) +{ + return symlink (contents, file); +} + +/* Like symlinkat, but with arguments reversed. */ + +static int +symlinkat_reversed (int fd, char const *file, char const *contents); + +# define AT_FUNC_NAME symlinkat_reversed +# define AT_FUNC_F1 symlink_reversed +# define AT_FUNC_POST_FILE_PARAM_DECLS , char const *contents +# define AT_FUNC_POST_FILE_ARGS , contents +# include "at-func.c" +# undef AT_FUNC_NAME +# undef AT_FUNC_F1 +# undef AT_FUNC_POST_FILE_PARAM_DECLS +# undef AT_FUNC_POST_FILE_ARGS + +/* Create a symlink FILE, in the directory open on descriptor FD, + holding CONTENTS. If possible, do it without changing the + working directory. Otherwise, resort to using save_cwd/fchdir, + then symlink/restore_cwd. If either the save_cwd or the restore_cwd + fails, then give a diagnostic and exit nonzero. */ + +int +symlinkat (char const *contents, int fd, char const *file) +{ + return symlinkat_reversed (fd, file, contents); +} + +#endif /* HAVE_SYMLINK */ diff --git a/gnu/sys_stat.in.h b/gnu/sys_stat.in.h index 75e38ed..f2ac370 100644 --- a/gnu/sys_stat.in.h +++ b/gnu/sys_stat.in.h @@ -26,6 +26,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ #if defined __need_system_sys_stat_h /* Special invocation convention. */ @@ -58,7 +59,8 @@ /* Before doing "#define mkdir rpl_mkdir" below, we need to include all headers that may declare mkdir(). */ #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -# include +# include /* mingw32, mingw64 */ +# include /* mingw64 */ #endif #ifndef S_IFMT @@ -392,7 +394,10 @@ _GL_WARN_ON_USE (futimens, "futimens is not portable - " # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # define lchmod chmod # endif -_GL_CXXALIAS_RPL_1 (lchmod, chmod, int, (const char *filename, mode_t mode)); +/* Need to cast, because on mingw, the second parameter of chmod is + int mode. */ +_GL_CXXALIAS_RPL_CAST_1 (lchmod, chmod, int, + (const char *filename, mode_t mode)); # else # if 0 /* assume already declared */ _GL_FUNCDECL_SYS (lchmod, int, (const char *filename, mode_t mode) @@ -400,7 +405,9 @@ _GL_FUNCDECL_SYS (lchmod, int, (const char *filename, mode_t mode) # endif _GL_CXXALIAS_SYS (lchmod, int, (const char *filename, mode_t mode)); # endif +# if @HAVE_LCHMOD@ _GL_CXXALIASWARN (lchmod); +# endif #elif defined GNULIB_POSIXCHECK # undef lchmod # if HAVE_RAW_DECL_LCHMOD @@ -429,7 +436,9 @@ _GL_CXXALIAS_RPL (lstat, int, (const char *name, struct stat *buf)); # else _GL_CXXALIAS_SYS (lstat, int, (const char *name, struct stat *buf)); # endif +# if @HAVE_LSTAT@ _GL_CXXALIASWARN (lstat); +# endif #elif defined GNULIB_POSIXCHECK # undef lstat # if HAVE_RAW_DECL_LSTAT @@ -450,7 +459,8 @@ _GL_CXXALIAS_RPL (mkdir, int, (char const *name, mode_t mode)); #else /* mingw's _mkdir() function has 1 argument, but we pass 2 arguments. Additionally, it declares _mkdir (and depending on compile flags, an - alias mkdir), only in the nonstandard , which is included above. */ + alias mkdir), only in the nonstandard includes and , + which are included above. */ # if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ static inline int @@ -587,7 +597,8 @@ _GL_WARN_ON_USE (mknodat, "mknodat is not portable - " # else /* !_LARGE_FILES */ # define stat(name, st) rpl_stat (name, st) # endif /* !_LARGE_FILES */ -_GL_EXTERN_C int stat (const char *name, struct stat *buf) _GL_ARG_NONNULL ((1, 2)); +_GL_EXTERN_C int stat (const char *name, struct stat *buf) + _GL_ARG_NONNULL ((1, 2)); # endif #elif defined GNULIB_POSIXCHECK # undef stat diff --git a/gnu/sys_time.in.h b/gnu/sys_time.in.h index ea9bb26..49ea64f 100644 --- a/gnu/sys_time.in.h +++ b/gnu/sys_time.in.h @@ -23,6 +23,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ #if defined _GL_SYS_TIME_H @@ -90,7 +91,7 @@ _GL_CXXALIASWARN (gettimeofday); # undef gettimeofday # if HAVE_RAW_DECL_GETTIMEOFDAY _GL_WARN_ON_USE (gettimeofday, "gettimeofday is unportable - " - "use gnulib module gettimeofday for portability"); + "use gnulib module gettimeofday for portability"); # endif # endif diff --git a/gnu/sysexits.in.h b/gnu/sysexits.in.h index da13faa..c8b1e75 100644 --- a/gnu/sysexits.in.h +++ b/gnu/sysexits.in.h @@ -20,11 +20,12 @@ #ifndef _GL_SYSEXITS_H -#if @HAVE_SYSEXITS_H@ - -# if __GNUC__ >= 3 +#if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ -# endif +#endif +@PRAGMA_COLUMNS@ + +#if @HAVE_SYSEXITS_H@ /* IRIX 6.5 has an that defines a macro EX_OK with a nonzero value. Override it. See diff --git a/gnu/time.in.h b/gnu/time.in.h index 816f732..75f572a 100644 --- a/gnu/time.in.h +++ b/gnu/time.in.h @@ -21,6 +21,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* Don't get in the way of glibc when it includes time.h merely to declare a few standard symbols, rather than to declare all the @@ -40,7 +41,7 @@ # @INCLUDE_NEXT@ @NEXT_TIME_H@ /* NetBSD 5.0 mis-defines NULL. */ -#include +# include /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ @@ -48,17 +49,28 @@ /* The definition of _GL_WARN_ON_USE is copied here. */ -# ifdef __cplusplus -extern "C" { -# endif - /* Some systems don't define struct timespec (e.g., AIX 4.1, Ultrix 4.3). Or they define it with the wrong member names or define it in - (e.g., FreeBSD circa 1997). */ + (e.g., FreeBSD circa 1997). Stock Mingw does not define it, but the + pthreads-win32 library defines it in . */ # if ! @TIME_H_DEFINES_STRUCT_TIMESPEC@ # if @SYS_TIME_H_DEFINES_STRUCT_TIMESPEC@ # include +# elif @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ +# include +/* The pthreads-win32 also defines a couple of broken macros. */ +# undef asctime_r +# undef ctime_r +# undef gmtime_r +# undef localtime_r +# undef rand_r +# undef strtok_r # else + +# ifdef __cplusplus +extern "C" { +# endif + # undef timespec # define timespec rpl_timespec struct timespec @@ -66,13 +78,23 @@ struct timespec time_t tv_sec; long int tv_nsec; }; -# endif -# endif -# ifdef __cplusplus +# ifdef __cplusplus } +# endif + +# endif # endif +/* Per http://austingroupbugs.net/view.php?id=327, POSIX requires + time_t to be an integer type, even though C99 permits floating + point. We don't know of any implementation that uses floating + point, and it is much easier to write code that doesn't have to + worry about that corner case, so we force the issue. */ +struct __time_t_must_be_integral { + unsigned int __floating_time_t_unsupported : (time_t) 1; +}; + /* Sleep for at least RQTP seconds unless interrupted, If interrupted, return -1 and store the remaining time into RMTP. See . */ @@ -87,6 +109,11 @@ _GL_FUNCDECL_RPL (nanosleep, int, _GL_CXXALIAS_RPL (nanosleep, int, (struct timespec const *__rqtp, struct timespec *__rmtp)); # else +# if ! @HAVE_NANOSLEEP@ +_GL_FUNCDECL_SYS (nanosleep, int, + (struct timespec const *__rqtp, struct timespec *__rmtp) + _GL_ARG_NONNULL ((1))); +# endif _GL_CXXALIAS_SYS (nanosleep, int, (struct timespec const *__rqtp, struct timespec *__rmtp)); # endif @@ -110,58 +137,62 @@ _GL_CXXALIASWARN (mktime); /* Convert TIMER to RESULT, assuming local time and UTC respectively. See and . */ -# if @REPLACE_LOCALTIME_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef localtime_r -# define localtime_r rpl_localtime_r -# endif +# if @GNULIB_TIME_R@ +# if @REPLACE_LOCALTIME_R@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef localtime_r +# define localtime_r rpl_localtime_r +# endif _GL_FUNCDECL_RPL (localtime_r, struct tm *, (time_t const *restrict __timer, struct tm *restrict __result) _GL_ARG_NONNULL ((1, 2))); _GL_CXXALIAS_RPL (localtime_r, struct tm *, (time_t const *restrict __timer, struct tm *restrict __result)); -# else +# else +# if ! @HAVE_LOCALTIME_R@ +_GL_FUNCDECL_SYS (localtime_r, struct tm *, (time_t const *restrict __timer, + struct tm *restrict __result) + _GL_ARG_NONNULL ((1, 2))); +# endif _GL_CXXALIAS_SYS (localtime_r, struct tm *, (time_t const *restrict __timer, struct tm *restrict __result)); -# endif -_GL_CXXALIASWARN (localtime_r); -# if @REPLACE_LOCALTIME_R@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef gmtime_r -# define gmtime_r rpl_gmtime_r # endif +_GL_CXXALIASWARN (localtime_r); +# if @REPLACE_LOCALTIME_R@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef gmtime_r +# define gmtime_r rpl_gmtime_r +# endif _GL_FUNCDECL_RPL (gmtime_r, struct tm *, (time_t const *restrict __timer, struct tm *restrict __result) _GL_ARG_NONNULL ((1, 2))); _GL_CXXALIAS_RPL (gmtime_r, struct tm *, (time_t const *restrict __timer, struct tm *restrict __result)); -# else +# else +# if ! @HAVE_LOCALTIME_R@ +_GL_FUNCDECL_SYS (gmtime_r, struct tm *, (time_t const *restrict __timer, + struct tm *restrict __result) + _GL_ARG_NONNULL ((1, 2))); +# endif _GL_CXXALIAS_SYS (gmtime_r, struct tm *, (time_t const *restrict __timer, struct tm *restrict __result)); -# endif +# endif _GL_CXXALIASWARN (gmtime_r); +# endif /* Parse BUF as a time stamp, assuming FORMAT specifies its layout, and store the resulting broken-down time into TM. See . */ # if @GNULIB_STRPTIME@ -# if @REPLACE_STRPTIME@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef strptime -# define strptime rpl_strptime -# endif -_GL_FUNCDECL_RPL (strptime, char *, (char const *restrict __buf, +# if ! @HAVE_STRPTIME@ +_GL_FUNCDECL_SYS (strptime, char *, (char const *restrict __buf, char const *restrict __format, struct tm *restrict __tm) _GL_ARG_NONNULL ((1, 2, 3))); -_GL_CXXALIAS_RPL (strptime, char *, (char const *restrict __buf, - char const *restrict __format, - struct tm *restrict __tm)); -# else +# endif _GL_CXXALIAS_SYS (strptime, char *, (char const *restrict __buf, char const *restrict __format, struct tm *restrict __tm)); -# endif _GL_CXXALIASWARN (strptime); # endif @@ -175,6 +206,9 @@ _GL_CXXALIASWARN (strptime); _GL_FUNCDECL_RPL (timegm, time_t, (struct tm *__tm) _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_RPL (timegm, time_t, (struct tm *__tm)); # else +# if ! @HAVE_TIMEGM@ +_GL_FUNCDECL_SYS (timegm, time_t, (struct tm *__tm) _GL_ARG_NONNULL ((1))); +# endif _GL_CXXALIAS_SYS (timegm, time_t, (struct tm *__tm)); # endif _GL_CXXALIASWARN (timegm); @@ -183,15 +217,25 @@ _GL_CXXALIASWARN (timegm); /* Encourage applications to avoid unsafe functions that can overrun buffers when given outlandish struct tm values. Portable applications should use strftime (or even sprintf) instead. */ -# if GNULIB_PORTCHECK +# if defined GNULIB_POSIXCHECK # undef asctime -# define asctime eschew_asctime +_GL_WARN_ON_USE (asctime, "asctime can overrun buffers in some cases - " + "better use strftime (or even sprintf) instead"); +# endif +# if defined GNULIB_POSIXCHECK # undef asctime_r -# define asctime_r eschew_asctime_r +_GL_WARN_ON_USE (asctime, "asctime_r can overrun buffers in some cases - " + "better use strftime (or even sprintf) instead"); +# endif +# if defined GNULIB_POSIXCHECK # undef ctime -# define ctime eschew_ctime +_GL_WARN_ON_USE (asctime, "ctime can overrun buffers in some cases - " + "better use strftime (or even sprintf) instead"); +# endif +# if defined GNULIB_POSIXCHECK # undef ctime_r -# define ctime_r eschew_ctime_r +_GL_WARN_ON_USE (asctime, "ctime_r can overrun buffers in some cases - " + "better use strftime (or even sprintf) instead"); # endif #endif diff --git a/gnu/time_r.c b/gnu/time_r.c index 0c3477a..ff0a527 100644 --- a/gnu/time_r.c +++ b/gnu/time_r.c @@ -2,7 +2,7 @@ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ /* Reentrant time functions like localtime_r. - Copyright (C) 2003, 2006, 2007, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2003, 2006-2007, 2010 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -24,8 +24,6 @@ #include -#include - static struct tm * copy_tm_result (struct tm *dest, struct tm const *src) { diff --git a/gnu/timespec.h b/gnu/timespec.h index ce94b71..4605a09 100644 --- a/gnu/timespec.h +++ b/gnu/timespec.h @@ -24,15 +24,39 @@ # include /* Return negative, zero, positive if A < B, A == B, A > B, respectively. - Assume the nanosecond components are in range, or close to it. */ + + For each time stamp T, this code assumes that either: + + * T.tv_nsec is in the range 0..999999999; or + * T.tv_sec corresponds to a valid leap second on a host that supports + leap seconds, and T.tv_nsec is in the range 1000000000..1999999999; or + * T.tv_sec is the minimum time_t value and T.tv_nsec is -1; or + T.tv_sec is the maximum time_t value and T.tv_nsec is 2000000000. + This allows for special struct timespec values that are less or + greater than all possible valid time stamps. + + In all these cases, it is safe to subtract two tv_nsec values and + convert the result to integer without worrying about overflow on + any platform of interest to the GNU project, since all such + platforms have 32-bit int or wider. + + Replacing "(int) (a.tv_nsec - b.tv_nsec)" with something like + "a.tv_nsec < b.tv_nsec ? -1 : a.tv_nsec > b.tv_nsec" would cause + this function to work in some cases where the above assumption is + violated, but not in all cases (e.g., a.tv_sec==1, a.tv_nsec==-2, + b.tv_sec==0, b.tv_nsec==999999999) and is arguably not worth the + extra instructions. Using a subtraction has the advantage of + detecting some invalid cases on platforms that detect integer + overflow. + + The (int) cast avoids a gcc -Wconversion warning. */ + static inline int timespec_cmp (struct timespec a, struct timespec b) { return (a.tv_sec < b.tv_sec ? -1 : a.tv_sec > b.tv_sec ? 1 - : a.tv_nsec < b.tv_nsec ? -1 - : a.tv_nsec > b.tv_nsec ? 1 - : 0); + : (int) (a.tv_nsec - b.tv_nsec)); } void gettime (struct timespec *); diff --git a/gnu/uinttostr.c b/gnu/uinttostr.c index 7ccafeb..052e6b9 100644 --- a/gnu/uinttostr.c +++ b/gnu/uinttostr.c @@ -1,6 +1,6 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -#define inttostr uinttostr +#define anytostr uinttostr #define inttype unsigned int #define inttype_is_signed 0 -#include "inttostr.c" +#include "anytostr.c" diff --git a/gnu/umaxtostr.c b/gnu/umaxtostr.c index 94a9cc5..ffcc71a 100644 --- a/gnu/umaxtostr.c +++ b/gnu/umaxtostr.c @@ -1,6 +1,6 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ -#define inttostr umaxtostr +#define anytostr umaxtostr #define inttype uintmax_t #define inttype_is_signed 0 -#include "inttostr.c" +#include "anytostr.c" diff --git a/gnu/unistd.in.h b/gnu/unistd.in.h index 316c51e..493d677 100644 --- a/gnu/unistd.in.h +++ b/gnu/unistd.in.h @@ -17,18 +17,43 @@ along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ -#ifndef _GL_UNISTD_H - #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ + +/* Special invocation convention: + - On mingw, several headers, including , include , + but we need to ensure that both the system and + are completely included before we replace gethostname. */ +#if @GNULIB_GETHOSTNAME@ && @UNISTD_H_HAVE_WINSOCK2_H@ \ + && !defined _GL_WINSOCK2_H_WITNESS && defined _WINSOCK2_H +/* is being indirectly included for the first time from + ; avoid declaring any overrides. */ +# if @HAVE_UNISTD_H@ +# @INCLUDE_NEXT@ @NEXT_UNISTD_H@ +# else +# error unexpected; report this to bug-gnulib@gnu.org +# endif +# define _GL_WINSOCK2_H_WITNESS + +/* Normal invocation. */ +#elif !defined _GL_UNISTD_H /* The include_next requires a split double-inclusion guard. */ #if @HAVE_UNISTD_H@ # @INCLUDE_NEXT@ @NEXT_UNISTD_H@ #endif -#ifndef _GL_UNISTD_H +/* Get all possible declarations of gethostname(). */ +#if @GNULIB_GETHOSTNAME@ && @UNISTD_H_HAVE_WINSOCK2_H@ \ + && !defined _GL_INCLUDING_WINSOCK2_H +# define _GL_INCLUDING_WINSOCK2_H +# include +# undef _GL_INCLUDING_WINSOCK2_H +#endif + +#if !defined _GL_UNISTD_H && !defined _GL_INCLUDING_WINSOCK2_H #define _GL_UNISTD_H /* NetBSD 5.0 mis-defines NULL. Also get size_t. */ @@ -64,7 +89,7 @@ #endif #if (@GNULIB_WRITE@ || @GNULIB_READLINK@ || @GNULIB_READLINKAT@ \ - || @GNULIB_PREAD@ || defined GNULIB_POSIXCHECK) + || @GNULIB_PREAD@ || @GNULIB_PWRITE@ || defined GNULIB_POSIXCHECK) /* Get ssize_t. */ # include #endif @@ -75,53 +100,89 @@ # include #endif +/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ + +/* The definition of _GL_ARG_NONNULL is copied here. */ + +/* The definition of _GL_WARN_ON_USE is copied here. */ + + #if @GNULIB_GETHOSTNAME@ /* Get all possible declarations of gethostname(). */ # if @UNISTD_H_HAVE_WINSOCK2_H@ -# include # if !defined _GL_SYS_SOCKET_H -# undef socket -# define socket socket_used_without_including_sys_socket_h -# undef connect -# define connect connect_used_without_including_sys_socket_h -# undef accept -# define accept accept_used_without_including_sys_socket_h -# undef bind -# define bind bind_used_without_including_sys_socket_h -# undef getpeername -# define getpeername getpeername_used_without_including_sys_socket_h -# undef getsockname -# define getsockname getsockname_used_without_including_sys_socket_h -# undef getsockopt -# define getsockopt getsockopt_used_without_including_sys_socket_h -# undef listen -# define listen listen_used_without_including_sys_socket_h -# undef recv -# define recv recv_used_without_including_sys_socket_h -# undef send -# define send send_used_without_including_sys_socket_h -# undef recvfrom -# define recvfrom recvfrom_used_without_including_sys_socket_h -# undef sendto -# define sendto sendto_used_without_including_sys_socket_h -# undef setsockopt -# define setsockopt setsockopt_used_without_including_sys_socket_h -# undef shutdown -# define shutdown shutdown_used_without_including_sys_socket_h +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef socket +# define socket socket_used_without_including_sys_socket_h +# undef connect +# define connect connect_used_without_including_sys_socket_h +# undef accept +# define accept accept_used_without_including_sys_socket_h +# undef bind +# define bind bind_used_without_including_sys_socket_h +# undef getpeername +# define getpeername getpeername_used_without_including_sys_socket_h +# undef getsockname +# define getsockname getsockname_used_without_including_sys_socket_h +# undef getsockopt +# define getsockopt getsockopt_used_without_including_sys_socket_h +# undef listen +# define listen listen_used_without_including_sys_socket_h +# undef recv +# define recv recv_used_without_including_sys_socket_h +# undef send +# define send send_used_without_including_sys_socket_h +# undef recvfrom +# define recvfrom recvfrom_used_without_including_sys_socket_h +# undef sendto +# define sendto sendto_used_without_including_sys_socket_h +# undef setsockopt +# define setsockopt setsockopt_used_without_including_sys_socket_h +# undef shutdown +# define shutdown shutdown_used_without_including_sys_socket_h +# else + _GL_WARN_ON_USE (socket, + "socket() used without including "); + _GL_WARN_ON_USE (connect, + "connect() used without including "); + _GL_WARN_ON_USE (accept, + "accept() used without including "); + _GL_WARN_ON_USE (bind, + "bind() used without including "); + _GL_WARN_ON_USE (getpeername, + "getpeername() used without including "); + _GL_WARN_ON_USE (getsockname, + "getsockname() used without including "); + _GL_WARN_ON_USE (getsockopt, + "getsockopt() used without including "); + _GL_WARN_ON_USE (listen, + "listen() used without including "); + _GL_WARN_ON_USE (recv, + "recv() used without including "); + _GL_WARN_ON_USE (send, + "send() used without including "); + _GL_WARN_ON_USE (recvfrom, + "recvfrom() used without including "); + _GL_WARN_ON_USE (sendto, + "sendto() used without including "); + _GL_WARN_ON_USE (setsockopt, + "setsockopt() used without including "); + _GL_WARN_ON_USE (shutdown, + "shutdown() used without including "); +# endif # endif # if !defined _GL_SYS_SELECT_H -# undef select -# define select select_used_without_including_sys_select_h +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef select +# define select select_used_without_including_sys_select_h +# else + _GL_WARN_ON_USE (select, + "select() used without including "); +# endif # endif # endif #endif -/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ - -/* The definition of _GL_ARG_NONNULL is copied here. */ - -/* The definition of _GL_WARN_ON_USE is copied here. */ - /* OS/2 EMX lacks these macros. */ #ifndef STDIN_FILENO @@ -357,9 +418,8 @@ _GL_WARN_ON_USE (faccessat, "faccessat is not portable - " Return 0 if successful, otherwise -1 and errno set. See the POSIX:2001 specification . */ -# if @REPLACE_FCHDIR@ -_GL_FUNCDECL_RPL (fchdir, int, (int /*fd*/)); -_GL_CXXALIAS_RPL (fchdir, int, (int /*fd*/)); +# if ! @HAVE_FCHDIR@ +_GL_FUNCDECL_SYS (fchdir, int, (int /*fd*/)); /* Gnulib internal hooks needed to maintain the fchdir metadata. */ _GL_EXTERN_C int _gl_register_fd (int fd, const char *filename) @@ -368,9 +428,8 @@ _GL_EXTERN_C void _gl_unregister_fd (int fd); _GL_EXTERN_C int _gl_register_dup (int oldfd, int newfd); _GL_EXTERN_C const char *_gl_directory_name (int fd); -# else -_GL_CXXALIAS_SYS (fchdir, int, (int /*fd*/)); # endif +_GL_CXXALIAS_SYS (fchdir, int, (int /*fd*/)); _GL_CXXALIASWARN (fchdir); #elif defined GNULIB_POSIXCHECK # undef fchdir @@ -467,7 +526,9 @@ _GL_WARN_ON_USE (ftruncate, "ftruncate is unportable - " _GL_FUNCDECL_RPL (getcwd, char *, (char *buf, size_t size)); _GL_CXXALIAS_RPL (getcwd, char *, (char *buf, size_t size)); # else -_GL_CXXALIAS_SYS (getcwd, char *, (char *buf, size_t size)); +/* Need to cast, because on mingw, the second parameter is + int size. */ +_GL_CXXALIAS_SYS_CAST (getcwd, char *, (char *buf, size_t size)); # endif _GL_CXXALIASWARN (getcwd); #elif defined GNULIB_POSIXCHECK @@ -715,7 +776,9 @@ getpagesize () /* Need to cast, because on Cygwin 1.5.x systems, the return type is size_t. */ _GL_CXXALIAS_SYS_CAST (getpagesize, int, (void)); # endif +# if @HAVE_DECL_GETPAGESIZE@ _GL_CXXALIASWARN (getpagesize); +# endif #elif defined GNULIB_POSIXCHECK # undef getpagesize # if HAVE_RAW_DECL_GETPAGESIZE @@ -728,7 +791,7 @@ _GL_WARN_ON_USE (getpagesize, "getpagesize is unportable - " #if @GNULIB_GETUSERSHELL@ /* Return the next valid login shell on the system, or NULL when the end of the list has been reached. */ -# if !@HAVE_GETUSERSHELL@ +# if !@HAVE_DECL_GETUSERSHELL@ _GL_FUNCDECL_SYS (getusershell, char *, (void)); # endif _GL_CXXALIAS_SYS (getusershell, char *, (void)); @@ -743,7 +806,7 @@ _GL_WARN_ON_USE (getusershell, "getusershell is unportable - " #if @GNULIB_GETUSERSHELL@ /* Rewind to pointer that is advanced at each getusershell() call. */ -# if !@HAVE_GETUSERSHELL@ +# if !@HAVE_DECL_GETUSERSHELL@ _GL_FUNCDECL_SYS (setusershell, void, (void)); # endif _GL_CXXALIAS_SYS (setusershell, void, (void)); @@ -759,7 +822,7 @@ _GL_WARN_ON_USE (setusershell, "setusershell is unportable - " #if @GNULIB_GETUSERSHELL@ /* Free the pointer that is advanced at each getusershell() call and associated resources. */ -# if !@HAVE_GETUSERSHELL@ +# if !@HAVE_DECL_GETUSERSHELL@ _GL_FUNCDECL_SYS (endusershell, void, (void)); # endif _GL_CXXALIAS_SYS (endusershell, void, (void)); @@ -956,6 +1019,40 @@ _GL_WARN_ON_USE (pread, "pread is unportable - " #endif +#if @GNULIB_PWRITE@ +/* Write at most BUFSIZE bytes from BUF into FD, starting at OFFSET. + Return the number of bytes written if successful, otherwise + set errno and return -1. 0 indicates nothing written. See the + POSIX:2001 specification + . */ +# if @REPLACE_PWRITE@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# define pwrite rpl_pwrite +# endif +_GL_FUNCDECL_RPL (pwrite, ssize_t, + (int fd, const void *buf, size_t bufsize, off_t offset) + _GL_ARG_NONNULL ((2))); +_GL_CXXALIAS_RPL (pwrite, ssize_t, + (int fd, const void *buf, size_t bufsize, off_t offset)); +# else +# if !@HAVE_PWRITE@ +_GL_FUNCDECL_SYS (pwrite, ssize_t, + (int fd, const void *buf, size_t bufsize, off_t offset) + _GL_ARG_NONNULL ((2))); +# endif +_GL_CXXALIAS_SYS (pwrite, ssize_t, + (int fd, const void *buf, size_t bufsize, off_t offset)); +# endif +_GL_CXXALIASWARN (pwrite); +#elif defined GNULIB_POSIXCHECK +# undef pwrite +# if HAVE_RAW_DECL_PWRITE +_GL_WARN_ON_USE (pwrite, "pwrite is unportable - " + "use gnulib module pwrite for portability"); +# endif +#endif + + #if @GNULIB_READLINK@ /* Read the contents of the symbolic link FILE and place the first BUFSIZE bytes of it into BUF. Return the number of bytes placed into BUF if @@ -1003,7 +1100,7 @@ _GL_CXXALIASWARN (readlinkat); # undef readlinkat # if HAVE_RAW_DECL_READLINKAT _GL_WARN_ON_USE (readlinkat, "readlinkat is not portable - " - "use gnulib module symlinkat for portability"); + "use gnulib module readlinkat for portability"); # endif #endif @@ -1101,6 +1198,36 @@ _GL_WARN_ON_USE (symlinkat, "symlinkat is not portable - " #endif +#if @GNULIB_TTYNAME_R@ +/* Store at most BUFLEN characters of the pathname of the terminal FD is + open on in BUF. Return 0 on success, otherwise an error number. */ +# if @REPLACE_TTYNAME_R@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef ttyname_r +# define ttyname_r rpl_ttyname_r +# endif +_GL_FUNCDECL_RPL (ttyname_r, int, + (int fd, char *buf, size_t buflen) _GL_ARG_NONNULL ((2))); +_GL_CXXALIAS_RPL (ttyname_r, int, + (int fd, char *buf, size_t buflen)); +# else +# if !@HAVE_TTYNAME_R@ +_GL_FUNCDECL_SYS (ttyname_r, int, + (int fd, char *buf, size_t buflen) _GL_ARG_NONNULL ((2))); +# endif +_GL_CXXALIAS_SYS (ttyname_r, int, + (int fd, char *buf, size_t buflen)); +# endif +_GL_CXXALIASWARN (ttyname_r); +#elif defined GNULIB_POSIXCHECK +# undef ttyname_r +# if HAVE_RAW_DECL_TTYNAME_R +_GL_WARN_ON_USE (ttyname_r, "ttyname_r is not portable - " + "use gnulib module ttyname_r for portability"); +# endif +#endif + + #if @GNULIB_UNLINK@ # if @REPLACE_UNLINK@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) @@ -1189,7 +1316,10 @@ _GL_FUNCDECL_RPL (write, ssize_t, (int fd, const void *buf, size_t count) _GL_ARG_NONNULL ((2))); _GL_CXXALIAS_RPL (write, ssize_t, (int fd, const void *buf, size_t count)); # else -_GL_CXXALIAS_SYS (write, ssize_t, (int fd, const void *buf, size_t count)); +/* Need to cast, because on mingw, the third parameter is + unsigned int count + and the return type is 'int'. */ +_GL_CXXALIAS_SYS_CAST (write, ssize_t, (int fd, const void *buf, size_t count)); # endif _GL_CXXALIASWARN (write); #endif diff --git a/gnu/unitypes.h b/gnu/unitypes.in.h similarity index 100% rename from gnu/unitypes.h rename to gnu/unitypes.in.h diff --git a/gnu/uniwidth.h b/gnu/uniwidth.in.h similarity index 100% rename from gnu/uniwidth.h rename to gnu/uniwidth.in.h diff --git a/gnu/uniwidth/width.c b/gnu/uniwidth/width.c index 2dba811..a2fa2f7 100644 --- a/gnu/uniwidth/width.c +++ b/gnu/uniwidth/width.c @@ -334,8 +334,8 @@ uc_width (ucs4_t uc, const char *encoding) } } /* Test for double-width character. - * Generated from "grep '^....;[WF]' EastAsianWidth.txt" - * and "grep '^....;[^WF]' EastAsianWidth.txt" + * Generated from "grep '^[^;]\{4,5\};[WF]' EastAsianWidth.txt" + * and "grep '^[^;]\{4,5\};[^WF]' EastAsianWidth.txt" */ if (uc >= 0x1100 && ((uc < 0x1160) /* Hangul Jamo */ diff --git a/gnu/unlink.c b/gnu/unlink.c index 568d2cd..827ea87 100644 --- a/gnu/unlink.c +++ b/gnu/unlink.c @@ -82,6 +82,16 @@ rpl_unlink (char const *name) } } if (!result) - result = unlink (name); + { +#if UNLINK_PARENT_BUG + if (len >= 2 && name[len - 1] == '.' && name[len - 2] == '.' + && (len == 2 || ISSLASH (name[len - 3]))) + { + errno = EISDIR; /* could also use EPERM */ + return -1; + } +#endif + result = unlink (name); + } return result; } diff --git a/gnu/utimens.c b/gnu/utimens.c index 8ce10d1..0cf2671 100644 --- a/gnu/utimens.c +++ b/gnu/utimens.c @@ -166,7 +166,7 @@ update_timespec (struct stat const *statbuf, struct timespec *ts[2]) Return 0 on success, -1 (setting errno) on failure. */ int -fdutimens (char const *file, int fd, struct timespec const timespec[2]) +fdutimens (int fd, char const *file, struct timespec const timespec[2]) { struct timespec adjusted_timespec[2]; struct timespec *ts = timespec ? adjusted_timespec : NULL; @@ -302,7 +302,7 @@ fdutimens (char const *file, int fd, struct timespec const timespec[2]) { #if HAVE_FUTIMESAT || HAVE_WORKING_UTIMES struct timeval timeval[2]; - struct timeval const *t; + struct timeval *t; if (ts) { timeval[0].tv_sec = ts[0].tv_sec; @@ -372,28 +372,12 @@ fdutimens (char const *file, int fd, struct timespec const timespec[2]) } } -/* Set the access and modification time stamps of FD (a.k.a. FILE) to be - TIMESPEC[0] and TIMESPEC[1], respectively. - FD must be either negative -- in which case it is ignored -- - or a file descriptor that is open on FILE. - If FD is nonnegative, then FILE can be NULL, which means - use just futimes (or equivalent) instead of utimes (or equivalent), - and fail if on an old system without futimes (or equivalent). - If TIMESPEC is null, set the time stamps to the current time. - Return 0 on success, -1 (setting errno) on failure. */ - -int -gl_futimens (int fd, char const *file, struct timespec const timespec[2]) -{ - return fdutimens (file, fd, timespec); -} - /* Set the access and modification time stamps of FILE to be TIMESPEC[0] and TIMESPEC[1], respectively. */ int utimens (char const *file, struct timespec const timespec[2]) { - return fdutimens (file, -1, timespec); + return fdutimens (-1, file, timespec); } /* Set the access and modification time stamps of FILE to be @@ -419,7 +403,7 @@ lutimens (char const *file, struct timespec const timespec[2]) /* The Linux kernel did not support symlink timestamps until utimensat, in version 2.6.22, so we don't need to mimic - gl_futimens' worry about buggy NFS clients. But we do have to + fdutimens' worry about buggy NFS clients. But we do have to worry about bogus return values. */ #if HAVE_UTIMENSAT @@ -486,7 +470,7 @@ lutimens (char const *file, struct timespec const timespec[2]) #if HAVE_LUTIMES && !HAVE_UTIMENSAT { struct timeval timeval[2]; - struct timeval const *t; + struct timeval *t; int result; if (ts) { @@ -509,7 +493,7 @@ lutimens (char const *file, struct timespec const timespec[2]) if (!(adjustment_needed || REPLACE_FUNC_STAT_FILE) && lstat (file, &st)) return -1; if (!S_ISLNK (st.st_mode)) - return fdutimens (file, -1, ts); + return fdutimens (-1, file, ts); errno = ENOSYS; return -1; } diff --git a/gnu/utimens.h b/gnu/utimens.h index 37f92b7..7690e74 100644 --- a/gnu/utimens.h +++ b/gnu/utimens.h @@ -1,8 +1,7 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ #include -int fdutimens (char const *, int, struct timespec const [2]); -int gl_futimens (int, char const *, struct timespec const [2]); +int fdutimens (int, char const *, struct timespec const [2]); int utimens (char const *, struct timespec const [2]); int lutimens (char const *, struct timespec const [2]); @@ -10,12 +9,13 @@ int lutimens (char const *, struct timespec const [2]); # include # include -int fdutimensat (int dir, char const *name, int fd, struct timespec const [2]); +int fdutimensat (int fd, int dir, char const *name, struct timespec const [2], + int atflag); /* Using this function makes application code slightly more readable. */ static inline int -lutimensat (int fd, char const *file, struct timespec const times[2]) +lutimensat (int dir, char const *file, struct timespec const times[2]) { - return utimensat (fd, file, times, AT_SYMLINK_NOFOLLOW); + return utimensat (dir, file, times, AT_SYMLINK_NOFOLLOW); } #endif diff --git a/gnu/utimensat.c b/gnu/utimensat.c new file mode 100644 index 0000000..005214c --- /dev/null +++ b/gnu/utimensat.c @@ -0,0 +1,138 @@ +/* -*- buffer-read-only: t -*- vi: set ro: */ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Set the access and modification time of a file relative to directory fd. + Copyright (C) 2009, 2010 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* written by Eric Blake */ + +#include + +#include + +#include +#include + +#include "stat-time.h" +#include "timespec.h" +#include "utimens.h" + +#if HAVE_UTIMENSAT + +# undef utimensat + +/* If we have a native utimensat, but are compiling this file, then + utimensat was defined to rpl_utimensat by our replacement + sys/stat.h. We assume the native version might fail with ENOSYS, + or succeed without properly affecting ctime (as is the case when + using newer glibc but older Linux kernel). In this scenario, + rpl_utimensat checks whether the native version is usable, and + local_utimensat provides the fallback manipulation. */ + +static int local_utimensat (int, char const *, struct timespec const[2], int); +# define AT_FUNC_NAME local_utimensat + +/* Like utimensat, but work around native bugs. */ + +int +rpl_utimensat (int fd, char const *file, struct timespec const times[2], + int flag) +{ + /* See comments in utimens.c for details. */ + static int utimensat_works_really; /* 0 = unknown, 1 = yes, -1 = no. */ + if (0 <= utimensat_works_really) + { + int result; +# ifdef __linux__ + struct stat st; + struct timespec ts[2]; + /* As recently as Linux kernel 2.6.32 (Dec 2009), several file + systems (xfs, ntfs-3g) have bugs with a single UTIME_OMIT, + but work if both times are either explicitly specified or + UTIME_NOW. Work around it with a preparatory [l]stat prior + to calling utimensat; fortunately, there is not much timing + impact due to the extra syscall even on file systems where + UTIME_OMIT would have worked. FIXME: Simplify this in 2012, + when file system bugs are no longer common. */ + if (times && (times[0].tv_nsec == UTIME_OMIT + || times[1].tv_nsec == UTIME_OMIT)) + { + if (fstatat (fd, file, &st, flag)) + return -1; + if (times[0].tv_nsec == UTIME_OMIT && times[1].tv_nsec == UTIME_OMIT) + return 0; + if (times[0].tv_nsec == UTIME_OMIT) + ts[0] = get_stat_atime (&st); + else + ts[0] = times[0]; + if (times[1].tv_nsec == UTIME_OMIT) + ts[1] = get_stat_mtime (&st); + else + ts[1] = times[1]; + times = ts; + } +# endif /* __linux__ */ + result = utimensat (fd, file, times, flag); + /* Linux kernel 2.6.25 has a bug where it returns EINVAL for + UTIME_NOW or UTIME_OMIT with non-zero tv_sec, which + local_utimensat works around. Meanwhile, EINVAL for a bad + flag is indeterminate whether the native utimensat works, but + local_utimensat will also reject it. */ + if (result == -1 && errno == EINVAL && (flag & ~AT_SYMLINK_NOFOLLOW)) + return result; + if (result == 0 || (errno != ENOSYS && errno != EINVAL)) + { + utimensat_works_really = 1; + return result; + } + } + /* No point in trying openat/futimens, since on Linux, futimens is + implemented with the same syscall as utimensat. Only avoid the + native utimensat due to an ENOSYS failure; an EINVAL error was + data-dependent, and the next caller may pass valid data. */ + if (0 <= utimensat_works_really && errno == ENOSYS) + utimensat_works_really = -1; + return local_utimensat (fd, file, times, flag); +} + +#else /* !HAVE_UTIMENSAT */ + +# define AT_FUNC_NAME utimensat + +#endif /* !HAVE_UTIMENSAT */ + +/* Set the access and modification time stamps of FILE to be + TIMESPEC[0] and TIMESPEC[1], respectively; relative to directory + FD. If flag is AT_SYMLINK_NOFOLLOW, change the times of a symlink, + or fail with ENOSYS if not possible. If TIMESPEC is null, set the + time stamps to the current time. If possible, do it without + changing the working directory. Otherwise, resort to using + save_cwd/fchdir, then utimens/restore_cwd. If either the save_cwd + or the restore_cwd fails, then give a diagnostic and exit nonzero. + Return 0 on success, -1 (setting errno) on failure. */ + +/* AT_FUNC_NAME is now utimensat or local_utimensat. */ +#define AT_FUNC_F1 lutimens +#define AT_FUNC_F2 utimens +#define AT_FUNC_USE_F1_COND AT_SYMLINK_NOFOLLOW +#define AT_FUNC_POST_FILE_PARAM_DECLS , struct timespec const ts[2], int flag +#define AT_FUNC_POST_FILE_ARGS , ts +#include "at-func.c" +#undef AT_FUNC_NAME +#undef AT_FUNC_F1 +#undef AT_FUNC_F2 +#undef AT_FUNC_USE_F1_COND +#undef AT_FUNC_POST_FILE_PARAM_DECLS +#undef AT_FUNC_POST_FILE_ARGS diff --git a/gnu/vasnprintf.c b/gnu/vasnprintf.c index 3fbba53..e9bbd43 100644 --- a/gnu/vasnprintf.c +++ b/gnu/vasnprintf.c @@ -90,6 +90,8 @@ /* Checked size_t computations. */ #include "xsize.h" +#include "verify.h" + #if (NEED_PRINTF_DOUBLE || NEED_PRINTF_LONG_DOUBLE) && !defined IN_LIBINTL # include # include "float+.h" @@ -150,8 +152,14 @@ # define USE_SNPRINTF 1 # if HAVE_DECL__SNWPRINTF /* On Windows, the function swprintf() has a different signature than - on Unix; we use the _snwprintf() function instead. */ -# define SNPRINTF _snwprintf + on Unix; we use the function _snwprintf() or - on mingw - snwprintf() + instead. The mingw function snwprintf() has fewer bugs than the + MSVCRT function _snwprintf(), so prefer that. */ +# if defined __MINGW32__ +# define SNPRINTF snwprintf +# else +# define SNPRINTF _snwprintf +# endif # else /* Unix. */ # define SNPRINTF swprintf @@ -169,8 +177,15 @@ # define USE_SNPRINTF 0 # endif # if HAVE_DECL__SNPRINTF - /* Windows. */ -# define SNPRINTF _snprintf + /* Windows. The mingw function snprintf() has fewer bugs than the MSVCRT + function _snprintf(), so prefer that. */ +# if defined __MINGW32__ +# define SNPRINTF snprintf + /* Here we need to call the native snprintf, not rpl_snprintf. */ +# undef snprintf +# else +# define SNPRINTF _snprintf +# endif # else /* Unix. */ # define SNPRINTF snprintf @@ -196,7 +211,7 @@ #undef remainder #define remainder rem -#if !USE_SNPRINTF && !WIDE_CHAR_VERSION +#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99) && !WIDE_CHAR_VERSION # if (HAVE_STRNLEN && !defined _AIX) # define local_strnlen strnlen # else @@ -212,7 +227,7 @@ local_strnlen (const char *string, size_t maxlen) # endif #endif -#if (!USE_SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL)) && HAVE_WCHAR_T && (WIDE_CHAR_VERSION || DCHAR_IS_TCHAR) +#if (((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99) && WIDE_CHAR_VERSION) || ((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL)) && !WIDE_CHAR_VERSION && DCHAR_IS_TCHAR)) && HAVE_WCHAR_T # if HAVE_WCSLEN # define local_wcslen wcslen # else @@ -235,7 +250,7 @@ local_wcslen (const wchar_t *s) # endif #endif -#if !USE_SNPRINTF && HAVE_WCHAR_T && WIDE_CHAR_VERSION +#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99) && HAVE_WCHAR_T && WIDE_CHAR_VERSION # if HAVE_WCSNLEN # define local_wcsnlen wcsnlen # else @@ -311,11 +326,11 @@ is_infinite_or_zerol (long double x) typedef unsigned int mp_limb_t; # define GMP_LIMB_BITS 32 -typedef int mp_limb_verify[2 * (sizeof (mp_limb_t) * CHAR_BIT == GMP_LIMB_BITS) - 1]; +verify (sizeof (mp_limb_t) * CHAR_BIT == GMP_LIMB_BITS); typedef unsigned long long mp_twolimb_t; # define GMP_TWOLIMB_BITS 64 -typedef int mp_twolimb_verify[2 * (sizeof (mp_twolimb_t) * CHAR_BIT == GMP_TWOLIMB_BITS) - 1]; +verify (sizeof (mp_twolimb_t) * CHAR_BIT == GMP_TWOLIMB_BITS); /* Representation of a bignum >= 0. */ typedef struct @@ -1476,6 +1491,258 @@ is_borderline (const char *digits, size_t precision) #endif +#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 + +/* Use a different function name, to make it possible that the 'wchar_t' + parametrization and the 'char' parametrization get compiled in the same + translation unit. */ +# if WIDE_CHAR_VERSION +# define MAX_ROOM_NEEDED wmax_room_needed +# else +# define MAX_ROOM_NEEDED max_room_needed +# endif + +/* Returns the number of TCHAR_T units needed as temporary space for the result + of sprintf or SNPRINTF of a single conversion directive. */ +static inline size_t +MAX_ROOM_NEEDED (const arguments *ap, size_t arg_index, FCHAR_T conversion, + arg_type type, int flags, size_t width, int has_precision, + size_t precision, int pad_ourselves) +{ + size_t tmp_length; + + switch (conversion) + { + case 'd': case 'i': case 'u': +# if HAVE_LONG_LONG_INT + if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) + tmp_length = + (unsigned int) (sizeof (unsigned long long) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + else +# endif + if (type == TYPE_LONGINT || type == TYPE_ULONGINT) + tmp_length = + (unsigned int) (sizeof (unsigned long) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + else + tmp_length = + (unsigned int) (sizeof (unsigned int) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + if (tmp_length < precision) + tmp_length = precision; + /* Multiply by 2, as an estimate for FLAG_GROUP. */ + tmp_length = xsum (tmp_length, tmp_length); + /* Add 1, to account for a leading sign. */ + tmp_length = xsum (tmp_length, 1); + break; + + case 'o': +# if HAVE_LONG_LONG_INT + if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) + tmp_length = + (unsigned int) (sizeof (unsigned long long) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + else +# endif + if (type == TYPE_LONGINT || type == TYPE_ULONGINT) + tmp_length = + (unsigned int) (sizeof (unsigned long) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + else + tmp_length = + (unsigned int) (sizeof (unsigned int) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + if (tmp_length < precision) + tmp_length = precision; + /* Add 1, to account for a leading sign. */ + tmp_length = xsum (tmp_length, 1); + break; + + case 'x': case 'X': +# if HAVE_LONG_LONG_INT + if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) + tmp_length = + (unsigned int) (sizeof (unsigned long long) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + else +# endif + if (type == TYPE_LONGINT || type == TYPE_ULONGINT) + tmp_length = + (unsigned int) (sizeof (unsigned long) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + else + tmp_length = + (unsigned int) (sizeof (unsigned int) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + if (tmp_length < precision) + tmp_length = precision; + /* Add 2, to account for a leading sign or alternate form. */ + tmp_length = xsum (tmp_length, 2); + break; + + case 'f': case 'F': + if (type == TYPE_LONGDOUBLE) + tmp_length = + (unsigned int) (LDBL_MAX_EXP + * 0.30103 /* binary -> decimal */ + * 2 /* estimate for FLAG_GROUP */ + ) + + 1 /* turn floor into ceil */ + + 10; /* sign, decimal point etc. */ + else + tmp_length = + (unsigned int) (DBL_MAX_EXP + * 0.30103 /* binary -> decimal */ + * 2 /* estimate for FLAG_GROUP */ + ) + + 1 /* turn floor into ceil */ + + 10; /* sign, decimal point etc. */ + tmp_length = xsum (tmp_length, precision); + break; + + case 'e': case 'E': case 'g': case 'G': + tmp_length = + 12; /* sign, decimal point, exponent etc. */ + tmp_length = xsum (tmp_length, precision); + break; + + case 'a': case 'A': + if (type == TYPE_LONGDOUBLE) + tmp_length = + (unsigned int) (LDBL_DIG + * 0.831 /* decimal -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + else + tmp_length = + (unsigned int) (DBL_DIG + * 0.831 /* decimal -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + if (tmp_length < precision) + tmp_length = precision; + /* Account for sign, decimal point etc. */ + tmp_length = xsum (tmp_length, 12); + break; + + case 'c': +# if HAVE_WINT_T && !WIDE_CHAR_VERSION + if (type == TYPE_WIDE_CHAR) + tmp_length = MB_CUR_MAX; + else +# endif + tmp_length = 1; + break; + + case 's': +# if HAVE_WCHAR_T + if (type == TYPE_WIDE_STRING) + { +# if WIDE_CHAR_VERSION + /* ISO C says about %ls in fwprintf: + "If the precision is not specified or is greater than the size + of the array, the array shall contain a null wide character." + So if there is a precision, we must not use wcslen. */ + const wchar_t *arg = ap->arg[arg_index].a.a_wide_string; + + if (has_precision) + tmp_length = local_wcsnlen (arg, precision); + else + tmp_length = local_wcslen (arg); +# else + /* ISO C says about %ls in fprintf: + "If a precision is specified, no more than that many bytes are + written (including shift sequences, if any), and the array + shall contain a null wide character if, to equal the multibyte + character sequence length given by the precision, the function + would need to access a wide character one past the end of the + array." + So if there is a precision, we must not use wcslen. */ + /* This case has already been handled separately in VASNPRINTF. */ + abort (); +# endif + } + else +# endif + { +# if WIDE_CHAR_VERSION + /* ISO C says about %s in fwprintf: + "If the precision is not specified or is greater than the size + of the converted array, the converted array shall contain a + null wide character." + So if there is a precision, we must not use strlen. */ + /* This case has already been handled separately in VASNPRINTF. */ + abort (); +# else + /* ISO C says about %s in fprintf: + "If the precision is not specified or greater than the size of + the array, the array shall contain a null character." + So if there is a precision, we must not use strlen. */ + const char *arg = ap->arg[arg_index].a.a_string; + + if (has_precision) + tmp_length = local_strnlen (arg, precision); + else + tmp_length = strlen (arg); +# endif + } + break; + + case 'p': + tmp_length = + (unsigned int) (sizeof (void *) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1 /* turn floor into ceil */ + + 2; /* account for leading 0x */ + break; + + default: + abort (); + } + + if (!pad_ourselves) + { +# if ENABLE_UNISTDIO + /* Padding considers the number of characters, therefore the number of + elements after padding may be + > max (tmp_length, width) + but is certainly + <= tmp_length + width. */ + tmp_length = xsum (tmp_length, width); +# else + /* Padding considers the number of elements, says POSIX. */ + if (tmp_length < width) + tmp_length = width; +# endif + } + + tmp_length = xsum (tmp_length, 1); /* account for trailing NUL */ + + return tmp_length; +} + +#endif + DCHAR_T * VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, const FCHAR_T *format, va_list args) @@ -2105,7 +2372,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } } #endif -#if (!USE_SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL)) && HAVE_WCHAR_T +#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL)) && HAVE_WCHAR_T else if (dp->conversion == 's' # if WIDE_CHAR_VERSION && a.arg[dp->arg_index].type != TYPE_WIDE_STRING @@ -2358,7 +2625,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, size_t characters; # if !DCHAR_IS_TCHAR /* This code assumes that TCHAR_T is 'char'. */ - typedef int TCHAR_T_verify[2 * (sizeof (TCHAR_T) == 1) - 1]; + verify (sizeof (TCHAR_T) == 1); TCHAR_T *tmpsrc; DCHAR_T *tmpdst; size_t tmpdst_len; @@ -2594,8 +2861,16 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, count = wctomb (cbuf, *arg); # endif if (count <= 0) - /* Inconsistency. */ - abort (); + { + /* Cannot convert. */ + if (!(result == resultbuf || result == NULL)) + free (result); + if (buf_malloced != NULL) + free (buf_malloced); + CLEANUP (); + errno = EILSEQ; + return NULL; + } ENSURE_ALLOCATION (xsum (length, count)); memcpy (result + length, cbuf, count); length += count; @@ -2618,8 +2893,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, length += n; } } - } # endif + } #endif #if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE) && !defined IN_LIBINTL else if ((dp->conversion == 'a' || dp->conversion == 'A') @@ -4303,11 +4578,11 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, { arg_type type = a.arg[dp->arg_index].type; int flags = dp->flags; -#if !USE_SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION +#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION int has_width; size_t width; #endif -#if !USE_SNPRINTF || NEED_PRINTF_UNBOUNDED_PRECISION +#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || NEED_PRINTF_UNBOUNDED_PRECISION int has_precision; size_t precision; #endif @@ -4326,13 +4601,14 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, TCHAR_T *fbp; unsigned int prefix_count; int prefixes[2] IF_LINT (= { 0 }); + int orig_errno; #if !USE_SNPRINTF size_t tmp_length; TCHAR_T tmpbuf[700]; TCHAR_T *tmp; #endif -#if !USE_SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION +#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION has_width = 0; width = 0; if (dp->width_start != dp->width_end) @@ -4366,7 +4642,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } #endif -#if !USE_SNPRINTF || NEED_PRINTF_UNBOUNDED_PRECISION +#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || NEED_PRINTF_UNBOUNDED_PRECISION has_precision = 0; precision = 6; if (dp->precision_start != dp->precision_end) @@ -4439,246 +4715,10 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, #if !USE_SNPRINTF /* Allocate a temporary buffer of sufficient size for calling sprintf. */ - { - switch (dp->conversion) - { - - case 'd': case 'i': case 'u': -# if HAVE_LONG_LONG_INT - if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long long) * CHAR_BIT - * 0.30103 /* binary -> decimal */ - ) - + 1; /* turn floor into ceil */ - else -# endif - if (type == TYPE_LONGINT || type == TYPE_ULONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long) * CHAR_BIT - * 0.30103 /* binary -> decimal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (sizeof (unsigned int) * CHAR_BIT - * 0.30103 /* binary -> decimal */ - ) - + 1; /* turn floor into ceil */ - if (tmp_length < precision) - tmp_length = precision; - /* Multiply by 2, as an estimate for FLAG_GROUP. */ - tmp_length = xsum (tmp_length, tmp_length); - /* Add 1, to account for a leading sign. */ - tmp_length = xsum (tmp_length, 1); - break; - - case 'o': -# if HAVE_LONG_LONG_INT - if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long long) * CHAR_BIT - * 0.333334 /* binary -> octal */ - ) - + 1; /* turn floor into ceil */ - else -# endif - if (type == TYPE_LONGINT || type == TYPE_ULONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long) * CHAR_BIT - * 0.333334 /* binary -> octal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (sizeof (unsigned int) * CHAR_BIT - * 0.333334 /* binary -> octal */ - ) - + 1; /* turn floor into ceil */ - if (tmp_length < precision) - tmp_length = precision; - /* Add 1, to account for a leading sign. */ - tmp_length = xsum (tmp_length, 1); - break; - - case 'x': case 'X': -# if HAVE_LONG_LONG_INT - if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long long) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - else -# endif - if (type == TYPE_LONGINT || type == TYPE_ULONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (sizeof (unsigned int) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - if (tmp_length < precision) - tmp_length = precision; - /* Add 2, to account for a leading sign or alternate form. */ - tmp_length = xsum (tmp_length, 2); - break; - - case 'f': case 'F': - if (type == TYPE_LONGDOUBLE) - tmp_length = - (unsigned int) (LDBL_MAX_EXP - * 0.30103 /* binary -> decimal */ - * 2 /* estimate for FLAG_GROUP */ - ) - + 1 /* turn floor into ceil */ - + 10; /* sign, decimal point etc. */ - else - tmp_length = - (unsigned int) (DBL_MAX_EXP - * 0.30103 /* binary -> decimal */ - * 2 /* estimate for FLAG_GROUP */ - ) - + 1 /* turn floor into ceil */ - + 10; /* sign, decimal point etc. */ - tmp_length = xsum (tmp_length, precision); - break; - - case 'e': case 'E': case 'g': case 'G': - tmp_length = - 12; /* sign, decimal point, exponent etc. */ - tmp_length = xsum (tmp_length, precision); - break; - - case 'a': case 'A': - if (type == TYPE_LONGDOUBLE) - tmp_length = - (unsigned int) (LDBL_DIG - * 0.831 /* decimal -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (DBL_DIG - * 0.831 /* decimal -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - if (tmp_length < precision) - tmp_length = precision; - /* Account for sign, decimal point etc. */ - tmp_length = xsum (tmp_length, 12); - break; - - case 'c': -# if HAVE_WINT_T && !WIDE_CHAR_VERSION - if (type == TYPE_WIDE_CHAR) - tmp_length = MB_CUR_MAX; - else -# endif - tmp_length = 1; - break; - - case 's': -# if HAVE_WCHAR_T - if (type == TYPE_WIDE_STRING) - { -# if WIDE_CHAR_VERSION - /* ISO C says about %ls in fwprintf: - "If the precision is not specified or is greater - than the size of the array, the array shall - contain a null wide character." - So if there is a precision, we must not use - wcslen. */ - const wchar_t *arg = - a.arg[dp->arg_index].a.a_wide_string; - - if (has_precision) - tmp_length = local_wcsnlen (arg, precision); - else - tmp_length = local_wcslen (arg); -# else - /* ISO C says about %ls in fprintf: - "If a precision is specified, no more than that - many bytes are written (including shift - sequences, if any), and the array shall contain - a null wide character if, to equal the - multibyte character sequence length given by - the precision, the function would need to - access a wide character one past the end of the - array." - So if there is a precision, we must not use - wcslen. */ - /* This case has already been handled above. */ - abort (); -# endif - } - else -# endif - { -# if WIDE_CHAR_VERSION - /* ISO C says about %s in fwprintf: - "If the precision is not specified or is greater - than the size of the converted array, the - converted array shall contain a null wide - character." - So if there is a precision, we must not use - strlen. */ - /* This case has already been handled above. */ - abort (); -# else - /* ISO C says about %s in fprintf: - "If the precision is not specified or greater - than the size of the array, the array shall - contain a null character." - So if there is a precision, we must not use - strlen. */ - const char *arg = a.arg[dp->arg_index].a.a_string; - - if (has_precision) - tmp_length = local_strnlen (arg, precision); - else - tmp_length = strlen (arg); -# endif - } - break; - - case 'p': - tmp_length = - (unsigned int) (sizeof (void *) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1 /* turn floor into ceil */ - + 2; /* account for leading 0x */ - break; - - default: - abort (); - } - - if (!pad_ourselves) - { -# if ENABLE_UNISTDIO - /* Padding considers the number of characters, therefore - the number of elements after padding may be - > max (tmp_length, width) - but is certainly - <= tmp_length + width. */ - tmp_length = xsum (tmp_length, width); -# else - /* Padding considers the number of elements, - says POSIX. */ - if (tmp_length < width) - tmp_length = width; -# endif - } - - tmp_length = xsum (tmp_length, 1); /* account for trailing NUL */ - } + tmp_length = + MAX_ROOM_NEEDED (&a, dp->arg_index, dp->conversion, type, + flags, width, has_precision, precision, + pad_ourselves); if (tmp_length <= sizeof (tmpbuf) / sizeof (TCHAR_T)) tmp = tmpbuf; @@ -4865,6 +4905,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, *(TCHAR_T *) (result + length) = '\0'; #endif + orig_errno = errno; + for (;;) { int count = -1; @@ -4918,6 +4960,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } #endif + errno = 0; switch (type) { case TYPE_SCHAR: @@ -5064,15 +5107,44 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, /* Look at the snprintf() return value. */ if (retcount < 0) { +# if !HAVE_SNPRINTF_RETVAL_C99 /* HP-UX 10.20 snprintf() is doubly deficient: It doesn't understand the '%n' directive, *and* it returns -1 (rather than the length that would have been required) when the - buffer is too small. */ - size_t bigger_need = - xsum (xtimes (allocated, 2), 12); - ENSURE_ALLOCATION (bigger_need); - continue; + buffer is too small. + But a failure at this point can also come + from other reasons than a too small buffer, + such as an invalid wide string argument to + the %ls directive, or possibly an invalid + floating-point argument. */ + size_t tmp_length = + MAX_ROOM_NEEDED (&a, dp->arg_index, + dp->conversion, type, flags, + width, has_precision, + precision, pad_ourselves); + + if (maxlen < tmp_length) + { + /* Make more room. But try to do through + this reallocation only once. */ + size_t bigger_need = + xsum (length, + xsum (tmp_length, + TCHARS_PER_DCHAR - 1) + / TCHARS_PER_DCHAR); + /* And always grow proportionally. + (There may be several arguments, each + needing a little more room than the + previous one.) */ + size_t bigger_need2 = + xsum (xtimes (allocated, 2), 12); + if (bigger_need < bigger_need2) + bigger_need = bigger_need2; + ENSURE_ALLOCATION (bigger_need); + continue; + } +# endif } else count = retcount; @@ -5083,12 +5155,21 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, /* Attempt to handle failure. */ if (count < 0) { + /* SNPRINTF or sprintf failed. Save and use the errno + that it has set, if any. */ + int saved_errno = errno; + if (!(result == resultbuf || result == NULL)) free (result); if (buf_malloced != NULL) free (buf_malloced); CLEANUP (); - errno = EINVAL; + errno = + (saved_errno != 0 + ? saved_errno + : (dp->conversion == 'c' || dp->conversion == 's' + ? EILSEQ + : EINVAL)); return NULL; } @@ -5210,8 +5291,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, DCHAR_T *tmpdst; size_t tmpdst_len; /* This code assumes that TCHAR_T is 'char'. */ - typedef int TCHAR_T_verify - [2 * (sizeof (TCHAR_T) == 1) - 1]; + verify (sizeof (TCHAR_T) == 1); # if USE_SNPRINTF tmpsrc = (TCHAR_T *) (result + length); # else @@ -5424,6 +5504,9 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, length += count; break; } + errno = orig_errno; +#undef pad_ourselves +#undef prec_ourselves } } } @@ -5475,6 +5558,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } } +#undef MAX_ROOM_NEEDED #undef TCHARS_PER_DCHAR #undef SNPRINTF #undef USE_SNPRINTF diff --git a/gnu/verify.h b/gnu/verify.h index adda5d9..1acad20 100644 --- a/gnu/verify.h +++ b/gnu/verify.h @@ -71,13 +71,14 @@ if the entity names are not disambiguated. A workaround is to attach the current line number to the entity name: - #define GL_CONCAT0(x, y) x##y - #define GL_CONCAT(x, y) GL_CONCAT0 (x, y) - extern struct {...} * GL_CONCAT(dummy,__LINE__); + #define _GL_CONCAT0(x, y) x##y + #define _GL_CONCAT(x, y) _GL_CONCAT0 (x, y) + extern struct {...} * _GL_CONCAT (dummy, __LINE__); But this has the problem that two invocations of verify from within the same macro would collide, since the __LINE__ value - would be the same for both invocations. + would be the same for both invocations. (The GCC __COUNTER__ + macro solves this problem, but is not portable.) A solution is to use the sizeof operator. It yields a number, getting rid of the identity of the type. Declarations like @@ -105,20 +106,41 @@ extern int (*dummy (void)) [sizeof (struct {...})]; + * GCC warns about duplicate declarations of the dummy function if + -Wredundant_decls is used. GCC 4.3 and later have a builtin + __COUNTER__ macro that can let us generate unique identifiers for + each dummy function, to suppress this warning. + * This implementation exploits the fact that GCC does not warn about the last declaration mentioned above. If a future version of GCC introduces a warning for this, the problem could be worked around - by using code specialized to GCC, e.g.,: + by using code specialized to GCC, just as __COUNTER__ is already + being used if available. #if 4 <= __GNUC__ - # define verify(R) \ - extern int (* verify_function__ (void)) \ - [__builtin_constant_p (R) && (R) ? 1 : -1] + # define verify(R) [another version to keep GCC happy] #endif * In C++, any struct definition inside sizeof is invalid. Use a template type to work around the problem. */ +/* Concatenate two preprocessor tokens. */ +# define _GL_CONCAT(x, y) _GL_CONCAT0 (x, y) +# define _GL_CONCAT0(x, y) x##y + +/* _GL_COUNTER is an integer, preferably one that changes each time we + use it. Use __COUNTER__ if it works, falling back on __LINE__ + otherwise. __LINE__ isn't perfect, but it's better than a + constant. */ +# if defined __COUNTER__ && __COUNTER__ != __COUNTER__ +# define _GL_COUNTER __COUNTER__ +# else +# define _GL_COUNTER __LINE__ +# endif + +/* Generate a symbol with the given prefix, making it unique if + possible. */ +# define _GL_GENSYM(prefix) _GL_CONCAT (prefix, _GL_COUNTER) /* Verify requirement R at compile-time, as an integer constant expression. Return 1. */ @@ -137,6 +159,7 @@ template /* Verify requirement R at compile-time, as a declaration without a trailing ';'. */ -# define verify(R) extern int (* verify_function__ (void)) [verify_true (R)] +# define verify(R) \ + extern int (* _GL_GENSYM (verify_function) (void)) [verify_true (R)] #endif diff --git a/gnu/wchar.in.h b/gnu/wchar.in.h index cc464ae..0600e3b 100644 --- a/gnu/wchar.in.h +++ b/gnu/wchar.in.h @@ -31,6 +31,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ #if defined __need_mbstate_t || defined __need_wint_t || (defined __hpux && ((defined _INTTYPES_INCLUDED && !defined strtoimax) || defined _GL_JUST_INCLUDE_SYSTEM_WCHAR_H)) || defined _GL_ALREADY_INCLUDING_WCHAR_H /* Special invocation convention: @@ -84,12 +85,16 @@ /* The definition of _GL_WARN_ON_USE is copied here. */ -/* Define wint_t. (Also done in wctype.in.h.) */ +/* Define wint_t and WEOF. (Also done in wctype.in.h.) */ #if !@HAVE_WINT_T@ && !defined wint_t # define wint_t int # ifndef WEOF # define WEOF -1 # endif +#else +# ifndef WEOF +# define WEOF ((wint_t) -1) +# endif #endif @@ -405,7 +410,7 @@ _GL_WARN_ON_USE (wcsnrtombs, "wcsnrtombs is unportable - " _GL_FUNCDECL_RPL (wcwidth, int, (wchar_t)); _GL_CXXALIAS_RPL (wcwidth, int, (wchar_t)); # else -# if !defined wcwidth && !@HAVE_DECL_WCWIDTH@ +# if !@HAVE_DECL_WCWIDTH@ /* wcwidth exists but is not declared. */ _GL_FUNCDECL_SYS (wcwidth, int, (wchar_t)); # endif diff --git a/gnu/wctype.in.h b/gnu/wctype.in.h index 099351b..6ed34a6 100644 --- a/gnu/wctype.in.h +++ b/gnu/wctype.in.h @@ -33,6 +33,7 @@ #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ #if @HAVE_WINT_T@ /* Solaris 2.5 has a bug: must be included before . @@ -60,18 +61,23 @@ /* The definition of _GL_WARN_ON_USE is copied here. */ -/* Define wint_t. (Also done in wchar.in.h.) */ +/* Define wint_t and WEOF. (Also done in wchar.in.h.) */ #if !@HAVE_WINT_T@ && !defined wint_t # define wint_t int # ifndef WEOF # define WEOF -1 # endif +#else +# ifndef WEOF +# define WEOF ((wint_t) -1) +# endif #endif /* FreeBSD 4.4 to 4.11 has but lacks the functions. Linux libc5 has and the functions but they are broken. - Assume all 12 functions are implemented the same way, or not at all. */ + Assume all 11 functions (all isw* except iswblank) are implemented the + same way, or not at all. */ #if ! @HAVE_ISWCNTRL@ || @REPLACE_ISWCNTRL@ /* IRIX 5.3 has macros but no functions, its isw* macros refer to an @@ -273,7 +279,27 @@ towupper return (wc >= 'a' && wc <= 'z' ? wc - 'a' + 'A' : wc); } -#endif /* ! HAVE_ISWCNTRL || REPLACE_ISWCNTRL */ +#elif ! @HAVE_ISWBLANK@ || @REPLACE_ISWBLANK@ +/* Only the iswblank function is missing. */ + +# if @REPLACE_ISWBLANK@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# define iswblank rpl_iswblank +# endif +# endif + +static inline int +# if @REPLACE_ISWBLANK@ +rpl_iswblank +# else +iswblank +# endif + (wint_t wc) +{ + return wc == ' ' || wc == '\t'; +} + +#endif #if defined __MINGW32__ @@ -326,7 +352,11 @@ _GL_CXXALIAS_RPL (iswxdigit, int, (wint_t wc)); #else _GL_CXXALIAS_SYS (iswalnum, int, (wint_t wc)); _GL_CXXALIAS_SYS (iswalpha, int, (wint_t wc)); +# if @REPLACE_ISWBLANK@ +_GL_CXXALIAS_RPL (iswblank, int, (wint_t wc)); +# else _GL_CXXALIAS_SYS (iswblank, int, (wint_t wc)); +# endif _GL_CXXALIAS_SYS (iswcntrl, int, (wint_t wc)); _GL_CXXALIAS_SYS (iswdigit, int, (wint_t wc)); _GL_CXXALIAS_SYS (iswgraph, int, (wint_t wc)); diff --git a/gnu/wcwidth.c b/gnu/wcwidth.c index a102744..1cfe8f2 100644 --- a/gnu/wcwidth.c +++ b/gnu/wcwidth.c @@ -1,7 +1,7 @@ /* -*- buffer-read-only: t -*- vi: set ro: */ /* DO NOT EDIT! GENERATED AUTOMATICALLY! */ /* Determine the number of screen columns needed for a character. - Copyright (C) 2006, 2007, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2006-2007, 2010 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -28,10 +28,9 @@ #include "streq.h" #include "uniwidth.h" -#undef wcwidth - int -rpl_wcwidth (wchar_t wc) +wcwidth (wchar_t wc) +#undef wcwidth { /* In UTF-8 locales, use a Unicode aware width function. */ const char *encoding = locale_charset (); diff --git a/gnu/xalloc.h b/gnu/xalloc.h index 37500ed..400019c 100644 --- a/gnu/xalloc.h +++ b/gnu/xalloc.h @@ -48,6 +48,14 @@ extern "C" { # endif # endif +# ifndef ATTRIBUTE_ALLOC_SIZE +# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3) +# define ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args)) +# else +# define ATTRIBUTE_ALLOC_SIZE(args) +# endif +# endif + /* This function is always triggered when memory is exhausted. It must be defined by the application, either explicitly or by using gnulib's xalloc-die module. This is the @@ -55,13 +63,19 @@ extern "C" { memory allocation failure. */ extern void xalloc_die (void) ATTRIBUTE_NORETURN; -void *xmalloc (size_t s) ATTRIBUTE_MALLOC; -void *xzalloc (size_t s) ATTRIBUTE_MALLOC; -void *xcalloc (size_t n, size_t s) ATTRIBUTE_MALLOC; -void *xrealloc (void *p, size_t s); +void *xmalloc (size_t s) + ATTRIBUTE_MALLOC ATTRIBUTE_ALLOC_SIZE ((1)); +void *xzalloc (size_t s) + ATTRIBUTE_MALLOC ATTRIBUTE_ALLOC_SIZE ((1)); +void *xcalloc (size_t n, size_t s) + ATTRIBUTE_MALLOC ATTRIBUTE_ALLOC_SIZE ((1, 2)); +void *xrealloc (void *p, size_t s) + ATTRIBUTE_ALLOC_SIZE ((2)); void *x2realloc (void *p, size_t *pn); -void *xmemdup (void const *p, size_t s) ATTRIBUTE_MALLOC; -char *xstrdup (char const *str) ATTRIBUTE_MALLOC; +void *xmemdup (void const *p, size_t s) + ATTRIBUTE_MALLOC ATTRIBUTE_ALLOC_SIZE ((2)); +char *xstrdup (char const *str) + ATTRIBUTE_MALLOC; /* Return 1 if an array of N objects, each of size S, cannot exist due to size arithmetic overflow. S must be positive and N must be @@ -108,10 +122,13 @@ char *xstrdup (char const *str) ATTRIBUTE_MALLOC; # if HAVE_INLINE # define static_inline static inline # else -void *xnmalloc (size_t n, size_t s) ATTRIBUTE_MALLOC; -void *xnrealloc (void *p, size_t n, size_t s); +void *xnmalloc (size_t n, size_t s) + ATTRIBUTE_MALLOC ATTRIBUTE_ALLOC_SIZE ((1, 2)); +void *xnrealloc (void *p, size_t n, size_t s) + ATTRIBUTE_ALLOC_SIZE ((2, 3)); void *x2nrealloc (void *p, size_t *pn, size_t s); -char *xcharalloc (size_t n) ATTRIBUTE_MALLOC; +char *xcharalloc (size_t n) + ATTRIBUTE_MALLOC ATTRIBUTE_ALLOC_SIZE ((1)); # endif # ifdef static_inline @@ -119,7 +136,8 @@ char *xcharalloc (size_t n) ATTRIBUTE_MALLOC; /* Allocate an array of N objects, each with S bytes of memory, dynamically, with error checking. S must be nonzero. */ -static_inline void *xnmalloc (size_t n, size_t s) ATTRIBUTE_MALLOC; +static_inline void *xnmalloc (size_t n, size_t s) + ATTRIBUTE_MALLOC ATTRIBUTE_ALLOC_SIZE ((1, 2)); static_inline void * xnmalloc (size_t n, size_t s) { @@ -131,6 +149,8 @@ xnmalloc (size_t n, size_t s) /* Change the size of an allocated block of memory P to an array of N objects each of S bytes, with error checking. S must be nonzero. */ +static_inline void *xnrealloc (void *p, size_t n, size_t s) + ATTRIBUTE_ALLOC_SIZE ((2, 3)); static_inline void * xnrealloc (void *p, size_t n, size_t s) { @@ -231,7 +251,8 @@ x2nrealloc (void *p, size_t *pn, size_t s) /* Return a pointer to a new buffer of N bytes. This is like xmalloc, except it returns char *. */ -static_inline char *xcharalloc (size_t n) ATTRIBUTE_MALLOC; +static_inline char *xcharalloc (size_t n) + ATTRIBUTE_MALLOC ATTRIBUTE_ALLOC_SIZE ((1)); static_inline char * xcharalloc (size_t n) { diff --git a/gnu/xmalloc.c b/gnu/xmalloc.c index 99d5bf4..1ec5f88 100644 --- a/gnu/xmalloc.c +++ b/gnu/xmalloc.c @@ -32,8 +32,8 @@ /* 1 if calloc is known to be compatible with GNU calloc. This matters if we are not also using the calloc module, which defines - HAVE_CALLOC and supports the GNU API even on non-GNU platforms. */ -#if defined HAVE_CALLOC || defined __GLIBC__ + HAVE_CALLOC_GNU and supports the GNU API even on non-GNU platforms. */ +#if defined HAVE_CALLOC_GNU || defined __GLIBC__ enum { HAVE_GNU_CALLOC = 1 }; #else enum { HAVE_GNU_CALLOC = 0 }; diff --git a/lib/Makefile.am b/lib/Makefile.am index 4bfee8b..5380128 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -26,7 +26,7 @@ rmt-command.h : Makefile $(AM_V_at)mv $@-t $@ BUILT_SOURCES = rmt-command.h CLEANFILES = rmt-command.h rmt-command.h-t -INCLUDES = -I$(top_srcdir)/gnu -I../ -I../gnu +INCLUDES = -I$(top_srcdir)/gnu -I../ -I../gnu noinst_HEADERS = system.h system-ioctl.h rmt.h paxlib.h stdopen.h libtar_a_SOURCES = \ @@ -36,4 +36,3 @@ libtar_a_SOURCES = \ rmt.h \ stdopen.c stdopen.h \ system.h system-ioctl.h - diff --git a/lib/Makefile.in b/lib/Makefile.in index 4ac8db7..5304c0c 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -60,11 +60,11 @@ DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/argmatch.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/backupfile.m4 \ - $(top_srcdir)/m4/bison.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/canonicalize.m4 \ + $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/backupfile.m4 $(top_srcdir)/m4/bison.m4 \ + $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/canonicalize.m4 \ $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/chown.m4 \ - $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/cloexec.m4 \ $(top_srcdir)/m4/close-stream.m4 $(top_srcdir)/m4/close.m4 \ $(top_srcdir)/m4/closeout.m4 $(top_srcdir)/m4/codeset.m4 \ $(top_srcdir)/m4/d-ino.m4 $(top_srcdir)/m4/dirent-safer.m4 \ @@ -77,17 +77,17 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/fchdir.m4 $(top_srcdir)/m4/fclose.m4 \ $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopendir.m4 \ - $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpending.m4 \ - $(top_srcdir)/m4/fseeko.m4 $(top_srcdir)/m4/ftruncate.m4 \ + $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \ + $(top_srcdir)/m4/fpending.m4 $(top_srcdir)/m4/fseeko.m4 \ + $(top_srcdir)/m4/futimens.m4 \ $(top_srcdir)/m4/getcwd-abort-bug.m4 \ $(top_srcdir)/m4/getcwd-path-max.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdate.m4 $(top_srcdir)/m4/getdelim.m4 \ - $(top_srcdir)/m4/getdtablesize.m4 $(top_srcdir)/m4/getline.m4 \ - $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \ - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gettime.m4 \ - $(top_srcdir)/m4/gettimeofday.m4 $(top_srcdir)/m4/glibc21.m4 \ - $(top_srcdir)/m4/gnulib-common.m4 \ + $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ + $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ + $(top_srcdir)/m4/getpagesize.m4 $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \ + $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ $(top_srcdir)/m4/gnulib-comp.m4 $(top_srcdir)/m4/hash.m4 \ $(top_srcdir)/m4/human.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \ @@ -97,54 +97,61 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/lchown.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \ - $(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-zh.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \ - $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/malloc.m4 \ - $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/mbchar.m4 \ - $(top_srcdir)/m4/mbiter.m4 $(top_srcdir)/m4/mbrtowc.m4 \ - $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbsrtowcs.m4 \ - $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/memchr.m4 \ - $(top_srcdir)/m4/mempcpy.m4 $(top_srcdir)/m4/memrchr.m4 \ - $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkdtemp.m4 \ + $(top_srcdir)/m4/libunistring-base.m4 \ + $(top_srcdir)/m4/link-follow.m4 $(top_srcdir)/m4/link.m4 \ + $(top_srcdir)/m4/linkat.m4 $(top_srcdir)/m4/localcharset.m4 \ + $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ + $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \ + $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ + $(top_srcdir)/m4/mbchar.m4 $(top_srcdir)/m4/mbiter.m4 \ + $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ + $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ + $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ + $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mkdir.m4 \ + $(top_srcdir)/m4/mkdtemp.m4 $(top_srcdir)/m4/mkfifo.m4 \ + $(top_srcdir)/m4/mkfifoat.m4 $(top_srcdir)/m4/mknod.m4 \ $(top_srcdir)/m4/mktime.m4 $(top_srcdir)/m4/mmap-anon.m4 \ $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/modechange.m4 \ $(top_srcdir)/m4/multiarch.m4 $(top_srcdir)/m4/nl_langinfo.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/paxutils.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/priv-set.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/quote.m4 \ - $(top_srcdir)/m4/quotearg.m4 $(top_srcdir)/m4/rawmemchr.m4 \ - $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rmdir.m4 \ + $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/parse-datetime.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/paxutils.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/priv-set.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \ + $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/readlink.m4 \ + $(top_srcdir)/m4/readlinkat.m4 $(top_srcdir)/m4/realloc.m4 \ + $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rename.m4 \ + $(top_srcdir)/m4/renameat.m4 $(top_srcdir)/m4/rmdir.m4 \ $(top_srcdir)/m4/rmt.m4 $(top_srcdir)/m4/rpmatch.m4 \ $(top_srcdir)/m4/rtapelib.m4 $(top_srcdir)/m4/safe-read.m4 \ - $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/same.m4 \ - $(top_srcdir)/m4/save-cwd.m4 $(top_srcdir)/m4/savedir.m4 \ - $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/sleep.m4 $(top_srcdir)/m4/snprintf.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/stpcpy.m4 $(top_srcdir)/m4/strcase.m4 \ - $(top_srcdir)/m4/strchrnul.m4 $(top_srcdir)/m4/strdup.m4 \ - $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/string_h.m4 \ - $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strndup.m4 \ - $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoimax.m4 \ - $(top_srcdir)/m4/strtol.m4 $(top_srcdir)/m4/strtoll.m4 \ - $(top_srcdir)/m4/strtoul.m4 $(top_srcdir)/m4/strtoull.m4 \ - $(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/sys_stat_h.m4 \ - $(top_srcdir)/m4/sys_time_h.m4 $(top_srcdir)/m4/sysexits.m4 \ - $(top_srcdir)/m4/system.m4 $(top_srcdir)/m4/tempname.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/unistd-safer.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlink.m4 $(top_srcdir)/m4/unlinkdir.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/utimbuf.m4 \ - $(top_srcdir)/m4/utimens.m4 $(top_srcdir)/m4/utimes.m4 \ + $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/save-cwd.m4 \ + $(top_srcdir)/m4/savedir.m4 $(top_srcdir)/m4/setenv.m4 \ + $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ + $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \ + $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ + $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ + $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ + $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ + $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ + $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ + $(top_srcdir)/m4/strtoimax.m4 $(top_srcdir)/m4/strtol.m4 \ + $(top_srcdir)/m4/strtoll.m4 $(top_srcdir)/m4/strtoul.m4 \ + $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/strtoumax.m4 \ + $(top_srcdir)/m4/symlink.m4 $(top_srcdir)/m4/symlinkat.m4 \ + $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \ + $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/system.m4 \ + $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd-safer.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \ + $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/utimbuf.m4 $(top_srcdir)/m4/utimens.m4 \ + $(top_srcdir)/m4/utimensat.m4 $(top_srcdir)/m4/utimes.m4 \ $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/vasprintf.m4 \ $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/vsnprintf.m4 \ $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/wchar_h.m4 \ @@ -205,6 +212,7 @@ ALLOCA_H = @ALLOCA_H@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ +ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOM4TE = @AUTOM4TE@ @@ -302,6 +310,7 @@ GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ +GNULIB_GRANTPT = @GNULIB_GRANTPT@ GNULIB_IMAXABS = @GNULIB_IMAXABS@ GNULIB_IMAXDIV = @GNULIB_IMAXDIV@ GNULIB_LCHMOD = @GNULIB_LCHMOD@ @@ -357,10 +366,12 @@ GNULIB_POPEN = @GNULIB_POPEN@ GNULIB_PREAD = @GNULIB_PREAD@ GNULIB_PRINTF = @GNULIB_PRINTF@ GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ +GNULIB_PTSNAME = @GNULIB_PTSNAME@ GNULIB_PUTC = @GNULIB_PUTC@ GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ GNULIB_PUTENV = @GNULIB_PUTENV@ GNULIB_PUTS = @GNULIB_PUTS@ +GNULIB_PWRITE = @GNULIB_PWRITE@ GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ GNULIB_READLINK = @GNULIB_READLINK@ @@ -385,6 +396,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ GNULIB_STRDUP = @GNULIB_STRDUP@ GNULIB_STRERROR = @GNULIB_STRERROR@ +GNULIB_STRNCAT = @GNULIB_STRNCAT@ GNULIB_STRNDUP = @GNULIB_STRNDUP@ GNULIB_STRNLEN = @GNULIB_STRNLEN@ GNULIB_STRPBRK = @GNULIB_STRPBRK@ @@ -401,11 +413,16 @@ GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@ GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ GNULIB_SYMLINK = @GNULIB_SYMLINK@ GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ +GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ GNULIB_TIMEGM = @GNULIB_TIMEGM@ +GNULIB_TIME_R = @GNULIB_TIME_R@ +GNULIB_TMPFILE = @GNULIB_TMPFILE@ +GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@ GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ GNULIB_UNLINK = @GNULIB_UNLINK@ GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ +GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ GNULIB_UNSETENV = @GNULIB_UNSETENV@ GNULIB_USLEEP = @GNULIB_USLEEP@ GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ @@ -423,20 +440,23 @@ GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ GNULIB_WCTOB = @GNULIB_WCTOB@ GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ GNULIB_WRITE = @GNULIB_WRITE@ +GNULIB__EXIT = @GNULIB__EXIT@ GREP = @GREP@ HAVE_ALPHASORT = @HAVE_ALPHASORT@ HAVE_ATOLL = @HAVE_ATOLL@ HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_CALLOC_POSIX = @HAVE_CALLOC_POSIX@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ HAVE_CHOWN = @HAVE_CHOWN@ HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ +HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ +HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ +HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ @@ -444,7 +464,6 @@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR = @HAVE_DECL_STRERROR@ HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ @@ -460,12 +479,15 @@ HAVE_DUP2 = @HAVE_DUP2@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_FACCESSAT = @HAVE_FACCESSAT@ +HAVE_FCHDIR = @HAVE_FCHDIR@ HAVE_FCHMODAT = @HAVE_FCHMODAT@ HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ HAVE_FCNTL = @HAVE_FCNTL@ HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ +HAVE_FSEEKO = @HAVE_FSEEKO@ HAVE_FSTATAT = @HAVE_FSTATAT@ HAVE_FSYNC = @HAVE_FSYNC@ +HAVE_FTELLO = @HAVE_FTELLO@ HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ HAVE_FUTIMENS = @HAVE_FUTIMENS@ HAVE_GETDOMAINNAME = @HAVE_GETDOMAINNAME@ @@ -477,25 +499,29 @@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ -HAVE_GETUSERSHELL = @HAVE_GETUSERSHELL@ +HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ +HAVE_ISWBLANK = @HAVE_ISWBLANK@ HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ +HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ +HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ HAVE_LCHMOD = @HAVE_LCHMOD@ HAVE_LCHOWN = @HAVE_LCHOWN@ HAVE_LINK = @HAVE_LINK@ HAVE_LINKAT = @HAVE_LINKAT@ +HAVE_LOCALTIME_R = @HAVE_LOCALTIME_R@ HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MALLOC_POSIX = @HAVE_MALLOC_POSIX@ HAVE_MBRLEN = @HAVE_MBRLEN@ HAVE_MBRTOWC = @HAVE_MBRTOWC@ HAVE_MBSINIT = @HAVE_MBSINIT@ HAVE_MBSLEN = @HAVE_MBSLEN@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ +HAVE_MEMCHR = @HAVE_MEMCHR@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ @@ -505,18 +531,21 @@ HAVE_MKNOD = @HAVE_MKNOD@ HAVE_MKNODAT = @HAVE_MKNODAT@ HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ +HAVE_MKSTEMP = @HAVE_MKSTEMP@ HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ +HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ HAVE_OPENAT = @HAVE_OPENAT@ HAVE_OS_H = @HAVE_OS_H@ HAVE_PIPE2 = @HAVE_PIPE2@ HAVE_PREAD = @HAVE_PREAD@ +HAVE_PTSNAME = @HAVE_PTSNAME@ +HAVE_PWRITE = @HAVE_PWRITE@ HAVE_RANDOM_H = @HAVE_RANDOM_H@ HAVE_RANDOM_R = @HAVE_RANDOM_R@ HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ HAVE_READLINK = @HAVE_READLINK@ HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOC_POSIX = @HAVE_REALLOC_POSIX@ HAVE_REALPATH = @HAVE_REALPATH@ HAVE_RENAMEAT = @HAVE_RENAMEAT@ HAVE_RPMATCH = @HAVE_RPMATCH@ @@ -533,6 +562,7 @@ HAVE_STRCASECMP = @HAVE_STRCASECMP@ HAVE_STRCASESTR = @HAVE_STRCASESTR@ HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ HAVE_STRPBRK = @HAVE_STRPBRK@ +HAVE_STRPTIME = @HAVE_STRPTIME@ HAVE_STRSEP = @HAVE_STRSEP@ HAVE_STRTOD = @HAVE_STRTOD@ HAVE_STRTOLL = @HAVE_STRTOLL@ @@ -549,8 +579,11 @@ HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ +HAVE_TIMEGM = @HAVE_TIMEGM@ +HAVE_TTYNAME_R = @HAVE_TTYNAME_R@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ +HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_UNSETENV = @HAVE_UNSETENV@ HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -565,6 +598,7 @@ HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ HAVE_WINT_T = @HAVE_WINT_T@ HAVE__BOOL = @HAVE__BOOL@ +HAVE__EXIT = @HAVE__EXIT@ INCLUDE_NEXT = @INCLUDE_NEXT@ INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ INSTALL = @INSTALL@ @@ -583,6 +617,8 @@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ +LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ LIB_SETSOCKOPT = @LIB_SETSOCKOPT@ LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ @@ -649,21 +685,24 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ POSUB = @POSUB@ +PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@ +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ PU_RMT_PROG = @PU_RMT_PROG@ RANLIB = @RANLIB@ REPLACE_BTOWC = @REPLACE_BTOWC@ +REPLACE_CALLOC = @REPLACE_CALLOC@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ +REPLACE_DIRFD = @REPLACE_DIRFD@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_FCHDIR = @REPLACE_FCHDIR@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ @@ -686,6 +725,7 @@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ +REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ REPLACE_LCHOWN = @REPLACE_LCHOWN@ REPLACE_LINK = @REPLACE_LINK@ @@ -693,6 +733,7 @@ REPLACE_LINKAT = @REPLACE_LINKAT@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ +REPLACE_MALLOC = @REPLACE_MALLOC@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ @@ -718,7 +759,9 @@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PUTENV = @REPLACE_PUTENV@ +REPLACE_PWRITE = @REPLACE_PWRITE@ REPLACE_READLINK = @REPLACE_READLINK@ +REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -730,17 +773,21 @@ REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRDUP = @REPLACE_STRDUP@ REPLACE_STRERROR = @REPLACE_STRERROR@ +REPLACE_STRNCAT = @REPLACE_STRNCAT@ REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRPTIME = @REPLACE_STRPTIME@ +REPLACE_STRNLEN = @REPLACE_STRNLEN@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ REPLACE_STRSTR = @REPLACE_STRSTR@ REPLACE_STRTOD = @REPLACE_STRTOD@ REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TMPFILE = @REPLACE_TMPFILE@ +REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ REPLACE_UNLINK = @REPLACE_UNLINK@ REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ REPLACE_UNSETENV = @REPLACE_UNSETENV@ @@ -810,6 +857,7 @@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ +gltests_WITNESS = @gltests_WITNESS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -841,7 +889,7 @@ top_srcdir = @top_srcdir@ noinst_LIBRARIES = libtar.a BUILT_SOURCES = rmt-command.h CLEANFILES = rmt-command.h rmt-command.h-t -INCLUDES = -I$(top_srcdir)/gnu -I../ -I../gnu +INCLUDES = -I$(top_srcdir)/gnu -I../ -I../gnu noinst_HEADERS = system.h system-ioctl.h rmt.h paxlib.h stdopen.h libtar_a_SOURCES = \ paxerror.c paxexit.c paxlib.h paxnames.c \ diff --git a/lib/paxerror.c b/lib/paxerror.c index b4edb68..56903a3 100644 --- a/lib/paxerror.c +++ b/lib/paxerror.c @@ -352,12 +352,6 @@ write_error_details (char const *name, size_t status, size_t size) name, (unsigned long int) status, (unsigned long int) size)); } -void -write_fatal (char const *name) -{ - call_arg_fatal ("write", name); -} - void chdir_fatal (char const *name) { diff --git a/lib/paxlib.h b/lib/paxlib.h index 2fa396a..eeb445e 100644 --- a/lib/paxlib.h +++ b/lib/paxlib.h @@ -88,7 +88,7 @@ void seek_error (char const *); void seek_error_details (char const *, off_t); void seek_warn (char const *); void seek_warn_details (char const *, off_t); -void stat_fatal (char const *); +void stat_fatal (char const *) __attribute__ ((noreturn)); void stat_error (char const *); void stat_warn (char const *); void symlink_error (char const *, char const *); @@ -98,8 +98,9 @@ void unlink_error (char const *); void utime_error (char const *); void waitpid_error (char const *); void write_error (char const *); +void write_error_details (char const *, size_t, size_t); -void pax_exit (void); +void pax_exit (void) __attribute__ ((noreturn)); void fatal_exit (void) __attribute__ ((noreturn)); #define STRINGIFY_BIGINT(i, b) umaxtostr (i, b) diff --git a/lib/rtapelib.c b/lib/rtapelib.c index cb645db..3aee428 100644 --- a/lib/rtapelib.c +++ b/lib/rtapelib.c @@ -121,7 +121,7 @@ do_command (int handle, const char *buffer) /* Save the current pipe handler and try to make the request. */ size_t length = strlen (buffer); - RETSIGTYPE (*pipe_handler) () = signal (SIGPIPE, SIG_IGN); + RETSIGTYPE (*pipe_handler) (int) = signal (SIGPIPE, SIG_IGN); ssize_t written = full_write (WRITE_SIDE (handle), buffer, length); signal (SIGPIPE, pipe_handler); @@ -428,7 +428,7 @@ rmt_open__ (const char *file_name, int open_mode, int bias, if (gethostbyname (remote_host) == NULL) error (EXIT_ON_EXEC_ERROR, 0, _("Cannot connect to %s: resolve failed"), remote_host); - + if (remote_user && *remote_user == '\0') remote_user = 0; @@ -596,7 +596,7 @@ size_t rmt_write__ (int handle, char *buffer, size_t length) { char command_buffer[COMMAND_BUFFER_SIZE]; - RETSIGTYPE (*pipe_handler) (); + RETSIGTYPE (*pipe_handler) (int); size_t written; sprintf (command_buffer, "W%lu\n", (unsigned long) length); @@ -715,7 +715,7 @@ rmt_ioctl__ (int handle, int operation, char *argument) errno = EOVERFLOW; return -1; } - + for (; status > 0; status -= counter, argument += counter) { counter = safe_read (READ_SIDE (handle), argument, status); diff --git a/m4/argp.m4 b/m4/argp.m4 index 819425b..d3ca5ba 100644 --- a/m4/argp.m4 +++ b/m4/argp.m4 @@ -1,5 +1,5 @@ -# argp.m4 serial 10 -dnl Copyright (C) 2003-2007, 2009-2010 Free Software Foundation, Inc. +# argp.m4 serial 11 +dnl Copyright (C) 2003-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -32,20 +32,20 @@ AC_DEFUN([gl_ARGP], # be defined and other not, I prefer to stay on the safe side and to # test each one separately. AC_MSG_CHECKING([whether program_invocation_name is defined]) - AC_TRY_LINK([#include ], - [ program_invocation_name = "test"; ], - [ AC_DEFINE([HAVE_PROGRAM_INVOCATION_NAME], [1], - [Define if program_invocation_name is defined]) - AC_MSG_RESULT([yes])], - [ AC_MSG_RESULT([no])] ) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], + [[program_invocation_name = "test";]])], + [AC_DEFINE([HAVE_PROGRAM_INVOCATION_NAME], [1], + [Define if program_invocation_name is defined]) + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) AC_MSG_CHECKING([whether program_invocation_short_name is defined]) - AC_TRY_LINK([#include ], - [ program_invocation_short_name = "test"; ], - [ AC_DEFINE([HAVE_PROGRAM_INVOCATION_SHORT_NAME], [1], - [Define if program_invocation_short_name is defined]) - AC_MSG_RESULT([yes])], - [ AC_MSG_RESULT([no])] ) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], + [[program_invocation_short_name = "test";]])], + [AC_DEFINE([HAVE_PROGRAM_INVOCATION_SHORT_NAME], [1], + [Define if program_invocation_short_name is defined]) + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) AC_CHECK_DECLS_ONCE([clearerr_unlocked]) AC_CHECK_DECLS_ONCE([feof_unlocked]) diff --git a/m4/asm-underscore.m4 b/m4/asm-underscore.m4 new file mode 100644 index 0000000..1736cc4 --- /dev/null +++ b/m4/asm-underscore.m4 @@ -0,0 +1,48 @@ +# asm-underscore.m4 serial 1 +dnl Copyright (C) 2010 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl From Bruno Haible. Based on as-underscore.m4 in GNU clisp. + +# gl_ASM_SYMBOL_PREFIX +# Tests for the prefix of C symbols at the assembly language level and the +# linker level. This prefix is either an underscore or empty. Defines the +# C macro USER_LABEL_PREFIX to this prefix, and sets ASM_SYMBOL_PREFIX to +# a stringified variant of this prefix. + +AC_DEFUN([gl_ASM_SYMBOL_PREFIX], +[ + dnl We don't use GCC's __USER_LABEL_PREFIX__ here, because + dnl 1. It works only for GCC. + dnl 2. It is incorrectly defined on some platforms, in some GCC versions. + AC_CACHE_CHECK( + [whether C symbols are prefixed with underscore at the linker level], + [gl_cv_prog_as_underscore], + [cat > conftest.c </dev/null 2>&1 + if grep _foo conftest.s >/dev/null ; then + gl_cv_prog_as_underscore=yes + else + gl_cv_prog_as_underscore=no + fi + rm -f conftest* + ]) + if test $gl_cv_prog_as_underscore = yes; then + USER_LABEL_PREFIX=_ + else + USER_LABEL_PREFIX= + fi + AC_DEFINE_UNQUOTED([USER_LABEL_PREFIX], [$USER_LABEL_PREFIX], + [Define to the prefix of C symbols at the assembler and linker level, + either an underscore or empty.]) + ASM_SYMBOL_PREFIX='"'${USER_LABEL_PREFIX}'"' + AC_SUBST([ASM_SYMBOL_PREFIX]) +]) diff --git a/m4/bison.m4 b/m4/bison.m4 index 260cba6..f4a97c3 100644 --- a/m4/bison.m4 +++ b/m4/bison.m4 @@ -1,4 +1,4 @@ -# serial 5 +# serial 6 # Copyright (C) 2002, 2005, 2009, 2010 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation @@ -7,13 +7,13 @@ AC_DEFUN([gl_BISON], [ - # getdate.y works with bison only. + # parse-datetime.y works with bison only. : ${YACC='bison -y'} dnl dnl Declaring YACC & YFLAGS precious will not be necessary after GNULIB dnl requires an Autoconf greater than 2.59c, but it will probably still be dnl useful to override the description of YACC in the --help output, re -dnl getdate.y assuming `bison -y'. +dnl parse-datetime.y assuming `bison -y'. AC_ARG_VAR([YACC], [The `Yet Another C Compiler' implementation to use. Defaults to `bison -y'. Values other than `bison -y' will most likely break on most systems.])dnl diff --git a/m4/btowc.m4 b/m4/btowc.m4 index 2c75c8f..b16b1f0 100644 --- a/m4/btowc.m4 +++ b/m4/btowc.m4 @@ -1,4 +1,4 @@ -# btowc.m4 serial 5 +# btowc.m4 serial 7 dnl Copyright (C) 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -18,10 +18,40 @@ AC_DEFUN([gl_FUNC_BTOWC], HAVE_BTOWC=0 else - dnl IRIX 6.5 btowc(EOF) is 0xFF, not WEOF. AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([gt_LOCALE_FR]) AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + + dnl Cygwin 1.7.2 btowc('\0') is WEOF, not 0. + AC_CACHE_CHECK([whether btowc(0) is correct], + [gl_cv_func_btowc_nul], + [ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#include +#include +int main () +{ + if (btowc ('\0') != 0) + return 1; + return 0; +}]])], + [gl_cv_func_btowc_nul=yes], + [gl_cv_func_btowc_nul=no], + [ +changequote(,)dnl + case "$host_os" in + # Guess no on Cygwin. + cygwin*) gl_cv_func_btowc_nul="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_btowc_nul="guessing yes" ;; + esac +changequote([,])dnl + ]) + ]) + + dnl IRIX 6.5 btowc(EOF) is 0xFF, not WEOF. AC_CACHE_CHECK([whether btowc(EOF) is correct], [gl_cv_func_btowc_eof], [ @@ -36,7 +66,8 @@ changequote(,)dnl esac changequote([,])dnl if test $LOCALE_FR != none; then - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include #include @@ -49,12 +80,17 @@ int main () return 1; } return 0; -}], +}]])], [gl_cv_func_btowc_eof=yes], [gl_cv_func_btowc_eof=no], [:]) fi ]) + + case "$gl_cv_func_btowc_nul" in + *yes) ;; + *) REPLACE_BTOWC=1 ;; + esac case "$gl_cv_func_btowc_eof" in *yes) ;; *) REPLACE_BTOWC=1 ;; diff --git a/m4/chown.m4 b/m4/chown.m4 index 0c32fa3..ea3fe4c 100644 --- a/m4/chown.m4 +++ b/m4/chown.m4 @@ -1,4 +1,4 @@ -# serial 22 +# serial 23 # Determine whether we need the chown wrapper. dnl Copyright (C) 1997-2001, 2003-2005, 2007, 2009-2010 Free Software @@ -43,6 +43,7 @@ AC_DEFUN_ONCE([gl_FUNC_CHOWN], dnl Solaris 9 ignores trailing slash. dnl FreeBSD 7.2 mishandles trailing slash on symlinks. + dnl Likewise for AIX 7.1. AC_CACHE_CHECK([whether chown honors trailing slash], [gl_cv_func_chown_slash_works], [touch conftest.file && rm -f conftest.link diff --git a/m4/cloexec.m4 b/m4/cloexec.m4 new file mode 100644 index 0000000..c75595c --- /dev/null +++ b/m4/cloexec.m4 @@ -0,0 +1,10 @@ +#serial 6 +dnl Copyright (C) 2004-2006, 2009-2010 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_CLOEXEC], +[ + AC_LIBOBJ([cloexec]) +]) diff --git a/m4/codeset.m4 b/m4/codeset.m4 index a53c042..f722b2e 100644 --- a/m4/codeset.m4 +++ b/m4/codeset.m4 @@ -1,4 +1,4 @@ -# codeset.m4 serial 4 (gettext-0.18) +# codeset.m4 serial 5 (gettext-0.18.2) dnl Copyright (C) 2000-2002, 2006, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -9,10 +9,12 @@ dnl From Bruno Haible. AC_DEFUN([AM_LANGINFO_CODESET], [ AC_CACHE_CHECK([for nl_langinfo and CODESET], [am_cv_langinfo_codeset], - [AC_TRY_LINK([#include ], - [char* cs = nl_langinfo(CODESET); return !cs;], - [am_cv_langinfo_codeset=yes], - [am_cv_langinfo_codeset=no]) + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[char* cs = nl_langinfo(CODESET); return !cs;]])], + [am_cv_langinfo_codeset=yes], + [am_cv_langinfo_codeset=no]) ]) if test $am_cv_langinfo_codeset = yes; then AC_DEFINE([HAVE_LANGINFO_CODESET], [1], diff --git a/m4/dirent_h.m4 b/m4/dirent_h.m4 index c3292d9..8d9d565 100644 --- a/m4/dirent_h.m4 +++ b/m4/dirent_h.m4 @@ -1,4 +1,4 @@ -# dirent_h.m4 serial 10 +# dirent_h.m4 serial 13 dnl Copyright (C) 2008-2010 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,9 +32,9 @@ AC_DEFUN([gl_DIRENT_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_DIRENT_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_DIRENT_H_DEFAULTS], @@ -46,10 +46,12 @@ AC_DEFUN([gl_DIRENT_H_DEFAULTS], GNULIB_ALPHASORT=0; AC_SUBST([GNULIB_ALPHASORT]) dnl Assume proper GNU behavior unless another module says otherwise. HAVE_DECL_DIRFD=1; AC_SUBST([HAVE_DECL_DIRFD]) + HAVE_DECL_FDOPENDIR=1;AC_SUBST([HAVE_DECL_FDOPENDIR]) HAVE_FDOPENDIR=1; AC_SUBST([HAVE_FDOPENDIR]) HAVE_SCANDIR=1; AC_SUBST([HAVE_SCANDIR]) HAVE_ALPHASORT=1; AC_SUBST([HAVE_ALPHASORT]) REPLACE_CLOSEDIR=0; AC_SUBST([REPLACE_CLOSEDIR]) + REPLACE_DIRFD=0; AC_SUBST([REPLACE_DIRFD]) REPLACE_FDOPENDIR=0; AC_SUBST([REPLACE_FDOPENDIR]) REPLACE_OPENDIR=0; AC_SUBST([REPLACE_OPENDIR]) ]) diff --git a/m4/dirfd.m4 b/m4/dirfd.m4 index 7fefa2e..48b7bae 100644 --- a/m4/dirfd.m4 +++ b/m4/dirfd.m4 @@ -1,4 +1,4 @@ -# serial 17 -*- Autoconf -*- +# serial 18 -*- Autoconf -*- dnl Find out how to get the file descriptor associated with an open DIR*. @@ -40,11 +40,13 @@ AC_DEFUN([gl_FUNC_DIRFD], gl_cv_func_dirfd_macro=yes, gl_cv_func_dirfd_macro=no)]) - # Use the replacement only if we have no function, macro, - # or declaration with that name. - if test $ac_cv_func_dirfd,$ac_cv_have_decl_dirfd,$gl_cv_func_dirfd_macro \ - = no,no,no; then - AC_REPLACE_FUNCS([dirfd]) + # Use the replacement only if we have no function or macro with that name. + if test $ac_cv_func_dirfd,$gl_cv_func_dirfd_macro = no,no; then + if test $ac_cv_have_decl_dirfd = yes; then + # If the system declares dirfd already, let's declare rpl_dirfd instead. + REPLACE_DIRFD=1 + fi + AC_LIBOBJ([dirfd]) AC_CACHE_CHECK( [how to get the file descriptor associated with an open DIR*], gl_cv_sys_dir_fd_member_name, diff --git a/m4/environ.m4 b/m4/environ.m4 index 5f50d6e..b9dc2ef 100644 --- a/m4/environ.m4 +++ b/m4/environ.m4 @@ -1,4 +1,4 @@ -# environ.m4 serial 3 +# environ.m4 serial 5 dnl Copyright (C) 2001-2004, 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -22,14 +22,16 @@ AC_DEFUN([gt_CHECK_VAR_DECL], define([gt_cv_var], [gt_cv_var_]$2[_declaration]) AC_MSG_CHECKING([if $2 is properly declared]) AC_CACHE_VAL([gt_cv_var], [ - AC_TRY_COMPILE([$1 - extern struct { int foo; } $2;], - [$2.foo = 1;], - gt_cv_var=no, - gt_cv_var=yes)]) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[$1 + extern struct { int foo; } $2;]], + [[$2.foo = 1;]])], + [gt_cv_var=no], + [gt_cv_var=yes])]) AC_MSG_RESULT([$gt_cv_var]) if test $gt_cv_var = yes; then - AC_DEFINE([HAVE_]translit($2, [a-z], [A-Z])[_DECL], 1, + AC_DEFINE([HAVE_]m4_translit($2, [a-z], [A-Z])[_DECL], 1, [Define if you have the declaration of $2.]) fi undefine([gt_cv_var]) diff --git a/m4/errno_h.m4 b/m4/errno_h.m4 index d02a039..e4325ac 100644 --- a/m4/errno_h.m4 +++ b/m4/errno_h.m4 @@ -1,5 +1,5 @@ -# errno_h.m4 serial 6 -dnl Copyright (C) 2004, 2006, 2008, 2009, 2010 Free Software Foundation, Inc. +# errno_h.m4 serial 7 +dnl Copyright (C) 2004, 2006, 2008-2010 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. @@ -37,6 +37,9 @@ booboo #if !defined ESTALE booboo #endif +#if !defined EDQUOT +booboo +#endif #if !defined ECANCELED booboo #endif diff --git a/m4/error.m4 b/m4/error.m4 index 9f1307a..dd5a197 100644 --- a/m4/error.m4 +++ b/m4/error.m4 @@ -1,4 +1,4 @@ -#serial 12 +#serial 13 # Copyright (C) 1996-1998, 2001-2004, 2009-2010 Free Software Foundation, Inc. # @@ -13,6 +13,23 @@ AC_DEFUN([gl_ERROR], gl_PREREQ_ERROR ]) +# Redefine AC_FUNC_ERROR_AT_LINE, because it is no longer maintained in +# Autoconf. +AC_DEFUN([AC_FUNC_ERROR_AT_LINE], +[ + AC_LIBSOURCES([error.h, error.c])dnl + AC_CACHE_CHECK([for error_at_line], [ac_cv_lib_error_at_line], + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[error_at_line (0, 0, "", 0, "an error occurred");]])], + [ac_cv_lib_error_at_line=yes], + [ac_cv_lib_error_at_line=no])]) + if test $ac_cv_lib_error_at_line = no; then + AC_LIBOBJ([error]) + fi +]) + # Prerequisites of lib/error.c. AC_DEFUN([gl_PREREQ_ERROR], [ diff --git a/m4/fchdir.m4 b/m4/fchdir.m4 index c05e925..7bc691d 100644 --- a/m4/fchdir.m4 +++ b/m4/fchdir.m4 @@ -1,4 +1,4 @@ -# fchdir.m4 serial 13 +# fchdir.m4 serial 14 dnl Copyright (C) 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -11,7 +11,7 @@ AC_DEFUN([gl_FUNC_FCHDIR], AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) AC_CHECK_FUNCS_ONCE([fchdir]) if test $ac_cv_func_fchdir = no; then - REPLACE_FCHDIR=1 + HAVE_FCHDIR=0 AC_LIBOBJ([fchdir]) gl_PREREQ_FCHDIR AC_DEFINE([REPLACE_FCHDIR], [1], diff --git a/m4/fcntl-o.m4 b/m4/fcntl-o.m4 index 67167cb..1adacc8 100644 --- a/m4/fcntl-o.m4 +++ b/m4/fcntl-o.m4 @@ -1,5 +1,5 @@ -# fcntl-o.m4 serial 1 -dnl Copyright (C) 2006, 2009, 2010 Free Software Foundation, Inc. +# fcntl-o.m4 serial 2 +dnl Copyright (C) 2006, 2009-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -12,7 +12,11 @@ dnl Written by Paul Eggert. AC_DEFUN([gl_FCNTL_O_FLAGS], [ dnl Persuade glibc to define O_NOATIME and O_NOFOLLOW. - AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) + dnl AC_USE_SYSTEM_EXTENSIONS was introduced in autoconf 2.60 and obsoletes + dnl AC_GNU_SOURCE. + m4_ifdef([AC_USE_SYSTEM_EXTENSIONS], + [AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])], + [AC_REQUIRE([AC_GNU_SOURCE])]) AC_CACHE_CHECK([for working fcntl.h], [gl_cv_header_working_fcntl_h], [AC_RUN_IFELSE( [AC_LANG_PROGRAM( diff --git a/m4/fcntl_h.m4 b/m4/fcntl_h.m4 index 67122e5..e41915c 100644 --- a/m4/fcntl_h.m4 +++ b/m4/fcntl_h.m4 @@ -1,4 +1,4 @@ -# serial 11 +# serial 12 # Configure fcntl.h. dnl Copyright (C) 2006, 2007, 2009, 2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation @@ -24,9 +24,9 @@ AC_DEFUN([gl_FCNTL_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_FCNTL_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_FCNTL_H_DEFAULTS], diff --git a/m4/fdopendir.m4 b/m4/fdopendir.m4 index 7282d4b..0908e1f 100644 --- a/m4/fdopendir.m4 +++ b/m4/fdopendir.m4 @@ -1,4 +1,4 @@ -# serial 3 +# serial 4 # See if we need to provide fdopendir. dnl Copyright (C) 2009-2010 Free Software Foundation, Inc. @@ -11,6 +11,10 @@ dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_FUNC_FDOPENDIR], [ AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + dnl FreeBSD 7.3 has the function, but failed to declare it. + AC_CHECK_DECLS([fdopendir], [], [HAVE_DECL_FDOPENDIR=0], [[ +#include + ]]) AC_CHECK_FUNCS_ONCE([fdopendir]) if test $ac_cv_func_fdopendir = no; then AC_LIBOBJ([openat-proc]) @@ -23,6 +27,9 @@ AC_DEFUN([gl_FUNC_FDOPENDIR], [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ #include #include +#if !HAVE_DECL_FDOPENDIR +extern DIR *fdopendir (int); +#endif ]], [int fd = open ("conftest.c", O_RDONLY); if (fd < 0) return 2; return !!fdopendir (fd);])], diff --git a/m4/filenamecat.m4 b/m4/filenamecat.m4 new file mode 100644 index 0000000..236e5b0 --- /dev/null +++ b/m4/filenamecat.m4 @@ -0,0 +1,19 @@ +# filenamecat.m4 serial 10 +dnl Copyright (C) 2002-2006, 2009-2010 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_FILE_NAME_CONCAT], +[ + AC_REQUIRE([gl_FILE_NAME_CONCAT_LGPL]) + AC_LIBOBJ([filenamecat]) +]) + +AC_DEFUN([gl_FILE_NAME_CONCAT_LGPL], +[ + AC_LIBOBJ([filenamecat-lgpl]) + + dnl Prerequisites of lib/filenamecat-lgpl.c. + AC_CHECK_FUNCS_ONCE([mempcpy]) +]) diff --git a/m4/float_h.m4 b/m4/float_h.m4 index a74a0d9..f6099db 100644 --- a/m4/float_h.m4 +++ b/m4/float_h.m4 @@ -1,4 +1,4 @@ -# float_h.m4 serial 3 +# float_h.m4 serial 4 dnl Copyright (C) 2007, 2009, 2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -10,7 +10,7 @@ AC_DEFUN([gl_FLOAT_H], AC_REQUIRE([AC_CANONICAL_HOST]) FLOAT_H= case "$host_os" in - beos* | openbsd*) + beos* | openbsd* | mirbsd*) FLOAT_H=float.h gl_CHECK_NEXT_HEADERS([float.h]) ;; diff --git a/m4/fnmatch.m4 b/m4/fnmatch.m4 index 212ead5..84bcabd 100644 --- a/m4/fnmatch.m4 +++ b/m4/fnmatch.m4 @@ -20,7 +20,9 @@ AC_DEFUN([gl_FUNC_FNMATCH_POSIX], AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) FNMATCH_H= - gl_fnmatch_required_lowercase=`echo $gl_fnmatch_required | tr 'A-Z' 'a-z'` + gl_fnmatch_required_lowercase=` + echo $gl_fnmatch_required | tr '[[A-Z]]' '[[a-z]]' + ` gl_fnmatch_cache_var="gl_cv_func_fnmatch_${gl_fnmatch_required_lowercase}" AC_CACHE_CHECK([for working $gl_fnmatch_required fnmatch], [$gl_fnmatch_cache_var], diff --git a/m4/fseeko.m4 b/m4/fseeko.m4 index 5f7f977..b97df53 100644 --- a/m4/fseeko.m4 +++ b/m4/fseeko.m4 @@ -1,4 +1,4 @@ -# fseeko.m4 serial 7 +# fseeko.m4 serial 9 dnl Copyright (C) 2007-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -7,9 +7,25 @@ dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_FUNC_FSEEKO], [ AC_REQUIRE([gl_STDIO_H_DEFAULTS]) - AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([gl_HAVE_FSEEKO]) AC_REQUIRE([gl_STDIN_LARGE_OFFSET]) + if test $gl_cv_func_fseeko = no; then + HAVE_FSEEKO=0 + gl_REPLACE_FSEEKO + else + if test $gl_cv_var_stdin_large_offset = no; then + gl_REPLACE_FSEEKO + fi + fi +]) + +dnl Tests whether fseeko is available. +dnl Result is gl_cv_func_fseeko. +AC_DEFUN([gl_HAVE_FSEEKO], +[ + AC_REQUIRE([AC_PROG_CC]) + dnl Persuade glibc to declare fseeko(). AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) @@ -19,17 +35,16 @@ AC_DEFUN([gl_FUNC_FSEEKO], ]], [fseeko (stdin, 0, 0);])], [gl_cv_func_fseeko=yes], [gl_cv_func_fseeko=no]) ]) - if test $gl_cv_func_fseeko = no \ - || test $gl_cv_var_stdin_large_offset = no; then - gl_REPLACE_FSEEKO - fi ]) AC_DEFUN([gl_REPLACE_FSEEKO], [ - AC_LIBOBJ([fseeko]) AC_REQUIRE([gl_STDIO_H_DEFAULTS]) - REPLACE_FSEEKO=1 + AC_REQUIRE([gl_HAVE_FSEEKO]) + if test $gl_cv_func_fseeko = yes; then + REPLACE_FSEEKO=1 + fi + AC_LIBOBJ([fseeko]) dnl If we are also using the fseek module, then fseek needs replacing, too. m4_ifdef([gl_REPLACE_FSEEK], [gl_REPLACE_FSEEK]) ]) diff --git a/m4/ftruncate.m4 b/m4/ftruncate.m4 deleted file mode 100644 index 95e371b..0000000 --- a/m4/ftruncate.m4 +++ /dev/null @@ -1,46 +0,0 @@ -# serial 14 - -# See if we need to emulate a missing ftruncate function using fcntl or chsize. - -# Copyright (C) 2000-2001, 2003-2007, 2009-2010 Free Software Foundation, Inc. -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# FIXME: remove this macro, along with all uses of HAVE_FTRUNCATE in 2010, -# if the check below provokes no more reports. So far, the only report -# arose from a test build of this gnulib module, cross-compiling to mingw: -# - -AC_DEFUN([gl_FUNC_FTRUNCATE], -[ - AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) - AC_REQUIRE([AC_CANONICAL_HOST]) - AC_CHECK_FUNCS_ONCE([ftruncate]) - if test $ac_cv_func_ftruncate = no; then - HAVE_FTRUNCATE=0 - AC_LIBOBJ([ftruncate]) - gl_PREREQ_FTRUNCATE - case "$host_os" in - mingw*) - # Yes, we know mingw lacks ftruncate. - ;; - *) - # If someone lacks ftruncate, make configure fail, and request - # a bug report to inform us about it. - if test x"$SKIP_FTRUNCATE_CHECK" != xyes; then - AC_MSG_FAILURE([Your system lacks the ftruncate function. - Please report this, along with the output of "uname -a", to the - bug-coreutils@gnu.org mailing list. To continue past this point, - rerun configure with SKIP_FTRUNCATE_CHECK=yes. - E.g., ./configure SKIP_FTRUNCATE_CHECK=yes]) - fi - esac - fi -]) - -# Prerequisites of lib/ftruncate.c. -AC_DEFUN([gl_PREREQ_FTRUNCATE], -[ - AC_CHECK_FUNCS([chsize]) -]) diff --git a/m4/futimens.m4 b/m4/futimens.m4 new file mode 100644 index 0000000..1212fb9 --- /dev/null +++ b/m4/futimens.m4 @@ -0,0 +1,61 @@ +# serial 5 +# See if we need to provide futimens replacement. + +dnl Copyright (C) 2009, 2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_FUTIMENS], +[ + AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_CHECK_FUNCS_ONCE([futimens]) + if test $ac_cv_func_futimens = no; then + HAVE_FUTIMENS=0 + AC_LIBOBJ([futimens]) + else + AC_CACHE_CHECK([whether futimens works], + [gl_cv_func_futimens_works], + [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +#include +#include +#include +#include +]], [[struct timespec ts[2] = { { 1, UTIME_OMIT }, { 1, UTIME_NOW } }; + int fd = creat ("conftest.file", 0600); + struct stat st; + if (fd < 0) return 1; + errno = 0; + if (futimens (AT_FDCWD, NULL) == 0) return 2; + if (errno != EBADF) return 3; + if (futimens (fd, ts)) return 4; + sleep (1); + ts[0].tv_nsec = UTIME_NOW; + ts[1].tv_nsec = UTIME_OMIT; + if (futimens (fd, ts)) return 5; + if (fstat (fd, &st)) return 6; + if (st.st_ctime < st.st_atime) return 7; + ]])], +dnl FIXME: simplify this in 2012, when file system bugs are no longer common + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ +#ifdef __linux__ +/* The Linux kernel added futimens in 2.6.22, but has bugs with UTIME_OMIT + in several file systems as recently as 2.6.32. Always replace futimens + to support older kernels. */ +choke me +#endif + ]])], + [gl_cv_func_futimens_works=yes], + [gl_cv_func_futimens_works="needs runtime check"])], + [gl_cv_func_futimens_works=no], + [gl_cv_func_futimens_works="guessing no"]) + rm -f conftest.file]) + if test "$gl_cv_func_futimens_works" != yes; then + REPLACE_FUTIMENS=1 + AC_LIBOBJ([futimens]) + fi + fi +]) diff --git a/m4/getcwd-path-max.m4 b/m4/getcwd-path-max.m4 index ecf6192..04ff141 100644 --- a/m4/getcwd-path-max.m4 +++ b/m4/getcwd-path-max.m4 @@ -183,8 +183,6 @@ main () no,*) AC_DEFINE([HAVE_PARTLY_WORKING_GETCWD], [1], [Define to 1 if getcwd works, except it sometimes fails when it shouldn't, - setting errno to ERANGE, ENAMETOOLONG, or ENOENT. If __GETCWD_PREFIX - is not defined, it doesn't matter whether HAVE_PARTLY_WORKING_GETCWD - is defined.]);; + setting errno to ERANGE, ENAMETOOLONG, or ENOENT.]);; esac ]) diff --git a/m4/getopt.m4 b/m4/getopt.m4 index a19805e..d05e9d9 100644 --- a/m4/getopt.m4 +++ b/m4/getopt.m4 @@ -1,4 +1,4 @@ -# getopt.m4 serial 24 +# getopt.m4 serial 31 dnl Copyright (C) 2002-2006, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -50,6 +50,7 @@ AC_DEFUN([gl_GETOPT_IFELSE], AC_DEFUN([gl_GETOPT_CHECK_HEADERS], [ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_REQUIRE([AC_PROG_AWK]) dnl for awk that supports ENVIRON dnl Persuade Solaris to declare optarg, optind, opterr, optopt. AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) @@ -79,8 +80,13 @@ AC_DEFUN([gl_GETOPT_CHECK_HEADERS], dnl Existence of the variable, in and of itself, is not a reason to replace dnl getopt, but knowledge of the variable is needed to determine how to dnl reset and whether a reset reparses the environment. - if test -z "$gl_replace_getopt" && test $gl_getopt_required = GNU; then - AC_CHECK_DECLS([optreset], [], [], + dnl Solaris supports neither optreset nor optind=0, but keeps no state that + dnl needs a reset beyond setting optind=1; detect Solaris by getopt_clip. + if test -z "$gl_replace_getopt"; then + AC_CHECK_DECLS([optreset], [], + [AC_CHECK_DECLS([getopt_clip], [], [], + [[#include ]]) + ], [[#include ]]) fi @@ -89,17 +95,21 @@ AC_DEFUN([gl_GETOPT_CHECK_HEADERS], dnl is left over from earlier calls, and neither setting optind = 0 nor dnl setting optreset = 1 get rid of this internal state. dnl POSIX is silent on optind vs. optreset, so we allow either behavior. + dnl POSIX 2008 does not specify leading '+' behavior, but see + dnl http://austingroupbugs.net/view.php?id=191 for a recommendation on + dnl the next version of POSIX. For now, we only guarantee leading '+' + dnl behavior with getopt-gnu. if test -z "$gl_replace_getopt"; then AC_CACHE_CHECK([whether getopt is POSIX compatible], [gl_cv_func_getopt_posix], [ - dnl This test fails on mingw and succeeds on all other platforms. + dnl This test fails on mingw and succeeds on many other platforms. AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include #include #include -#if !HAVE_DECL_OPTRESET +#if !HAVE_DECL_OPTRESET && !HAVE_DECL_GETOPT_CLIP # define OPTIND_MIN 0 #else # define OPTIND_MIN 1 @@ -167,14 +177,29 @@ main () if (!(optind == 1)) return 12; } + /* Detect MacOS 10.5, AIX 7.1 bug. */ + { + char *argv[3] = { "program", "-ab", NULL }; + optind = OPTIND_MIN; + opterr = 0; + if (getopt (2, argv, "ab:") != 'a') + return 13; + if (getopt (2, argv, "ab:") != '?') + return 14; + if (optopt != 'b') + return 15; + if (optind != 2) + return 16; + } return 0; } ]])], [gl_cv_func_getopt_posix=yes], [gl_cv_func_getopt_posix=no], [case "$host_os" in - mingw*) gl_cv_func_getopt_posix="guessing no";; - *) gl_cv_func_getopt_posix="guessing yes";; + mingw*) gl_cv_func_getopt_posix="guessing no";; + darwin* | aix*) gl_cv_func_getopt_posix="guessing no";; + *) gl_cv_func_getopt_posix="guessing yes";; esac ]) ]) @@ -189,7 +214,16 @@ main () # optstring is necessary for programs like m4 that have POSIX-mandated # semantics for supporting options interspersed with files. # Also, since getopt_long is a GNU extension, we require optind=0. - gl_had_POSIXLY_CORRECT=${POSIXLY_CORRECT:+yes} + # Bash ties 'set -o posix' to a non-exported POSIXLY_CORRECT; + # so take care to revert to the correct (non-)export state. +dnl GNU Coding Standards currently allow awk but not env; besides, env +dnl is ambiguous with environment values that contain newlines. + gl_awk_probe='BEGIN { if ("POSIXLY_CORRECT" in ENVIRON) print "x" }' + case ${POSIXLY_CORRECT+x}`$AWK "$gl_awk_probe" , 1995-2000. -dnl Bruno Haible , 2000-2006. +dnl Bruno Haible , 2000-2006, 2008-2010. dnl Macro to add for using GNU gettext. @@ -60,6 +60,8 @@ AC_DEFUN([AM_GNU_GETTEXT], ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], , [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT ])])])])]) + ifelse(ifelse([$1], [], [old])[]ifelse([$1], [no-libtool], [old]), [old], + [AC_DIAGNOSE([obsolete], [Use of AM_GNU_GETTEXT without [external] argument is deprecated.])]) ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], , [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT ])])])]) @@ -155,12 +157,18 @@ changequote([,])dnl fi AC_CACHE_CHECK([for GNU gettext in libc], [$gt_func_gnugettext_libc], - [AC_TRY_LINK([#include + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include $gt_revision_test_code extern int _nl_msg_cat_cntr; -extern int *_nl_domain_bindings;], - [bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings], +extern int *_nl_domain_bindings; + ]], + [[ +bindtextdomain ("", ""); +return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings + ]])], [eval "$gt_func_gnugettext_libc=yes"], [eval "$gt_func_gnugettext_libc=no"])]) @@ -181,35 +189,47 @@ return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_b gt_save_LIBS="$LIBS" LIBS="$LIBS $LIBINTL" dnl Now see whether libintl exists and does not depend on libiconv. - AC_TRY_LINK([#include + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include $gt_revision_test_code extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif -const char *_nl_expand_alias (const char *);], - [bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")], +const char *_nl_expand_alias (const char *); + ]], + [[ +bindtextdomain ("", ""); +return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") + ]])], [eval "$gt_func_gnugettext_libintl=yes"], [eval "$gt_func_gnugettext_libintl=no"]) dnl Now see whether libintl exists and depends on libiconv. if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then LIBS="$LIBS $LIBICONV" - AC_TRY_LINK([#include + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include $gt_revision_test_code extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif -const char *_nl_expand_alias (const char *);], - [bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")], - [LIBINTL="$LIBINTL $LIBICONV" - LTLIBINTL="$LTLIBINTL $LTLIBICONV" - eval "$gt_func_gnugettext_libintl=yes" - ]) +const char *_nl_expand_alias (const char *); + ]], + [[ +bindtextdomain ("", ""); +return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") + ]])], + [LIBINTL="$LIBINTL $LIBICONV" + LTLIBINTL="$LTLIBINTL $LTLIBICONV" + eval "$gt_func_gnugettext_libintl=yes" + ]) fi CPPFLAGS="$gt_save_CPPFLAGS" LIBS="$gt_save_LIBS"]) @@ -379,4 +399,4 @@ AC_DEFUN([AM_GNU_GETTEXT_NEED], dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version]) AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) - AC_DEFUN([gl_LOCK_EARLY], []) + AC_DEFUN([gl_LOCK_EARLY], []) diff --git a/m4/gnulib-common.m4 b/m4/gnulib-common.m4 index 80ba263..4c7ac30 100644 --- a/m4/gnulib-common.m4 +++ b/m4/gnulib-common.m4 @@ -1,4 +1,4 @@ -# gnulib-common.m4 serial 13 +# gnulib-common.m4 serial 20 dnl Copyright (C) 2007-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -35,14 +35,71 @@ AC_DEFUN([gl_COMMON_BODY], [ is a misnomer outside of parameter lists. */ #define _UNUSED_PARAMETER_ _GL_UNUSED ]) + 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 + dnl arise e.g., in the macros gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N. + LIBC_FATAL_STDERR_=1 + export LIBC_FATAL_STDERR_ +]) + +# gl_MODULE_INDICATOR_CONDITION +# expands to a C preprocessor expression that evaluates to 1 or 0, depending +# whether a gnulib module that has been requested shall be considered present +# or not. +AC_DEFUN([gl_MODULE_INDICATOR_CONDITION], [1]) + +# gl_MODULE_INDICATOR_SET_VARIABLE([modulename]) +# sets the shell variable that indicates the presence of the given module to +# a C preprocessor expression that will evaluate to 1. +AC_DEFUN([gl_MODULE_INDICATOR_SET_VARIABLE], +[ + GNULIB_[]m4_translit([[$1]], + [abcdefghijklmnopqrstuvwxyz./-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=gl_MODULE_INDICATOR_CONDITION ]) # gl_MODULE_INDICATOR([modulename]) -# defines a C macro indicating the presence of the given module. +# defines a C macro indicating the presence of the given module +# in a location where it can be used. +# | Value | Value | +# | in lib/ | in tests/ | +# --------------------------------------------+---------+-----------+ +# Module present among main modules: | 1 | 1 | +# --------------------------------------------+---------+-----------+ +# Module present among tests-related modules: | 0 | 1 | +# --------------------------------------------+---------+-----------+ +# Module not present at all: | 0 | 0 | +# --------------------------------------------+---------+-----------+ AC_DEFUN([gl_MODULE_INDICATOR], [ - AC_DEFINE([GNULIB_]translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___]), [1], - [Define to 1 when using the gnulib module ]$1[.]) + AC_DEFINE_UNQUOTED([GNULIB_]m4_translit([[$1]], + [abcdefghijklmnopqrstuvwxyz./-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___]), + [gl_MODULE_INDICATOR_CONDITION], + [Define to a C preprocessor expression that evaluates to 1 or 0, + depending whether the gnulib module $1 shall be considered present.]) +]) + +# gl_MODULE_INDICATOR_FOR_TESTS([modulename]) +# defines a C macro indicating the presence of the given module +# in lib or tests. This is useful to determine whether the module +# should be tested. +# | Value | Value | +# | in lib/ | in tests/ | +# --------------------------------------------+---------+-----------+ +# Module present among main modules: | 1 | 1 | +# --------------------------------------------+---------+-----------+ +# Module present among tests-related modules: | 1 | 1 | +# --------------------------------------------+---------+-----------+ +# Module not present at all: | 0 | 0 | +# --------------------------------------------+---------+-----------+ +AC_DEFUN([gl_MODULE_INDICATOR_FOR_TESTS], +[ + AC_DEFINE([GNULIB_TEST_]m4_translit([[$1]], + [abcdefghijklmnopqrstuvwxyz./-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___]), [1], + [Define to 1 when the gnulib module $1 should be tested.]) ]) # m4_foreach_w @@ -81,6 +138,7 @@ m4_ifdef([AC_PROG_MKDIR_P], [ # so that mixed use of GNU C and GNU C++ and mixed use of Sun C and Sun C++ # works. # This definition can be removed once autoconf >= 2.62 can be assumed. +m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.62]),[-1],[ AC_DEFUN([AC_C_RESTRICT], [AC_CACHE_CHECK([for C/C++ restrict keyword], [ac_cv_c_restrict], [ac_cv_c_restrict=no @@ -118,6 +176,7 @@ AC_DEFUN([AC_C_RESTRICT], *) AC_DEFINE_UNQUOTED([restrict], [$ac_cv_c_restrict]) ;; esac ]) +]) # gl_BIGENDIAN # is like AC_C_BIGENDIAN, except that it can be AC_REQUIREd. diff --git a/m4/gnulib-comp.m4 b/m4/gnulib-comp.m4 index f9a584d..554fa54 100644 --- a/m4/gnulib-comp.m4 +++ b/m4/gnulib-comp.m4 @@ -14,7 +14,8 @@ # This file represents the compiled summary of the specification in # gnulib-cache.m4. It lists the computed macro invocations that need # to be invoked from configure.ac. -# In projects using CVS, this file can be treated like other built files. +# In projects that use version control, this file can be treated like +# other built files. # This macro should be invoked from ./configure.ac, in the section @@ -28,13 +29,210 @@ AC_DEFUN([gl_EARLY], m4_pattern_allow([^gl_LTLIBOBJS$])dnl a variable AC_REQUIRE([AC_PROG_RANLIB]) AC_REQUIRE([AM_PROG_CC_C_O]) + # Code from module alloca: + # Code from module alloca-opt: + # Code from module areadlink: + # Code from module areadlinkat: + # Code from module arg-nonnull: + # Code from module argmatch: + # Code from module argp: + # Code from module argp-version-etc: + # Code from module backupfile: + # Code from module bitrotate: + # Code from module btowc: + # Code from module c++defs: + # Code from module c-ctype: + # Code from module canonicalize-lgpl: + # Code from module chdir-long: + # Code from module chown: + # Code from module clock-time: + # Code from module cloexec: + # Code from module close: + # Code from module close-hook: + # Code from module close-stream: + # Code from module closeout: + # Code from module configmake: + # Code from module d-ino: + # Code from module dirent: + # Code from module dirent-safer: + # Code from module dirfd: + # Code from module dirname: + # Code from module dirname-lgpl: + # Code from module double-slash-root: + # Code from module dup2: + # Code from module environ: + # Code from module errno: + # Code from module error: + # Code from module exclude: + # Code from module exitfail: + # Code from module extensions: AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + # Code from module fchdir: + # Code from module fclose: + # Code from module fcntl: + # Code from module fcntl-h: + # Code from module fdopendir: + # Code from module fdutimensat: + # Code from module fileblocks: + # Code from module filenamecat-lgpl: + # Code from module float: + # Code from module fnmatch: + # Code from module fnmatch-gnu: + # Code from module fpending: + # Code from module fseeko: AC_REQUIRE([AC_FUNC_FSEEKO]) + # Code from module full-write: + # Code from module futimens: + # Code from module getcwd: + # Code from module getdelim: + # Code from module getdtablesize: + # Code from module getline: + # Code from module getopt-gnu: + # Code from module getopt-posix: + # Code from module getpagesize: + # Code from module gettext: + # Code from module gettext-h: + # Code from module gettime: + # Code from module gettimeofday: + # Code from module gitlog-to-changelog: + # Code from module hash: + # Code from module havelib: + # Code from module human: + # Code from module include_next: + # Code from module inline: + # Code from module intprops: + # Code from module inttostr: + # Code from module inttypes: + # Code from module langinfo: + # Code from module lchown: + # Code from module link: + # Code from module link-follow: + # Code from module linkat: + # Code from module localcharset: + # Code from module lseek: + # Code from module lstat: + # Code from module malloc-gnu: + # Code from module malloc-posix: + # Code from module malloca: + # Code from module mbchar: + # Code from module mbrtowc: + # Code from module mbscasecmp: + # Code from module mbsinit: + # Code from module mbsrtowcs: + # Code from module mbuiter: + # Code from module memchr: + # Code from module mempcpy: + # Code from module memrchr: + # Code from module mkdir: + # Code from module mkdtemp: + # Code from module mkfifo: + # Code from module mkfifoat: + # Code from module mknod: + # Code from module mktime: + # Code from module modechange: + # Code from module multiarch: + # Code from module nl_langinfo: + # Code from module obstack: + # Code from module open: + # Code from module openat: + # Code from module openat-die: + # Code from module parse-datetime: + # Code from module pathmax: + # Code from module priv-set: + # Code from module progname: + # Code from module quote: + # Code from module quotearg: + # Code from module quotearg-simple: + # Code from module rawmemchr: + # Code from module readlink: + # Code from module readlinkat: + # Code from module realloc-posix: + # Code from module regex: + # Code from module rename: + # Code from module renameat: + # Code from module rmdir: + # Code from module rpmatch: + # Code from module safe-read: + # Code from module safe-write: + # Code from module same-inode: + # Code from module save-cwd: + # Code from module savedir: + # Code from module setenv: + # Code from module size_max: + # Code from module sleep: + # Code from module snprintf: + # Code from module ssize_t: + # Code from module stat: + # Code from module stat-macros: + # Code from module stat-time: + # Code from module stdarg: dnl Some compilers (e.g., AIX 5.3 cc) need to be in c99 mode dnl for the builtin va_copy to work. With Autoconf 2.60 or later, dnl AC_PROG_CC_STDC arranges for this. With older Autoconf AC_PROG_CC_STDC dnl shouldn't hurt, though installers are on their own to set c99 mode. AC_REQUIRE([AC_PROG_CC_STDC]) + # Code from module stdbool: + # Code from module stddef: + # Code from module stdint: + # Code from module stdio: + # Code from module stdlib: + # Code from module stpcpy: + # Code from module strcase: + # Code from module strchrnul: + # Code from module strdup-posix: + # Code from module streq: + # Code from module strerror: + # Code from module string: + # Code from module strings: + # Code from module strndup: + # Code from module strnlen: + # Code from module strnlen1: + # Code from module strtoimax: + # Code from module strtol: + # Code from module strtoll: + # Code from module strtoul: + # Code from module strtoull: + # Code from module strtoumax: + # Code from module symlink: + # Code from module symlinkat: + # Code from module sys_stat: + # Code from module sys_time: + # Code from module sysexits: + # Code from module tempname: + # Code from module time: + # Code from module time_r: + # Code from module timespec: + # Code from module unistd: + # Code from module unistd-safer: + # Code from module unitypes: + # Code from module uniwidth/base: + # Code from module uniwidth/width: + # Code from module unlink: + # Code from module unlinkdir: + # Code from module unlocked-io: + # Code from module unsetenv: + # Code from module utimens: + # Code from module utimensat: + # Code from module vasnprintf: + # Code from module vasprintf: + # Code from module verify: + # Code from module version-etc: + # Code from module version-etc-fsf: + # Code from module vsnprintf: + # Code from module warn-on-use: + # Code from module wchar: + # Code from module wcrtomb: + # Code from module wctype: + # Code from module wcwidth: + # Code from module write: + # Code from module xalloc: + # Code from module xalloc-die: + # Code from module xgetcwd: + # Code from module xsize: + # Code from module xstrndup: + # Code from module xstrtol: + # Code from module xstrtoumax: + # Code from module xvasprintf: ]) # This macro should be invoked from ./configure.ac, in the section @@ -45,6 +243,7 @@ AC_DEFUN([gl_INIT], gl_cond_libtool=false gl_libdeps= gl_ltlibdeps= + gl_m4_base='m4' m4_pushdef([AC_LIBOBJ], m4_defn([gl_LIBOBJ])) m4_pushdef([AC_REPLACE_FUNCS], m4_defn([gl_REPLACE_FUNCS])) m4_pushdef([AC_LIBSOURCES], m4_defn([gl_LIBSOURCES])) @@ -52,245 +251,477 @@ AC_DEFUN([gl_INIT], m4_pushdef([gl_LIBSOURCES_DIR], []) gl_COMMON gl_source_base='gnu' + # Code from module alloca: + # Code from module alloca-opt: gl_FUNC_ALLOCA + # Code from module areadlink: + # Code from module areadlinkat: + gl_MODULE_INDICATOR([areadlinkat]) + # Code from module arg-nonnull: + # Code from module argmatch: gl_ARGMATCH + # Code from module argp: gl_ARGP m4_ifdef([AM_XGETTEXT_OPTION], [AM_][XGETTEXT_OPTION([--flag=argp_error:2:c-format]) AM_][XGETTEXT_OPTION([--flag=argp_failure:4:c-format])]) + # Code from module argp-version-etc: + # Code from module backupfile: gl_BACKUPFILE + # Code from module bitrotate: AC_REQUIRE([AC_C_INLINE]) + # Code from module btowc: gl_FUNC_BTOWC gl_WCHAR_MODULE_INDICATOR([btowc]) - gl_FUNC_CANONICALIZE_FILENAME_MODE - gl_MODULE_INDICATOR([canonicalize]) + # Code from module c++defs: + # Code from module c-ctype: + # Code from module canonicalize-lgpl: + gl_CANONICALIZE_LGPL + gl_MODULE_INDICATOR([canonicalize-lgpl]) gl_STDLIB_MODULE_INDICATOR([canonicalize_file_name]) + gl_STDLIB_MODULE_INDICATOR([realpath]) + # Code from module chdir-long: gl_FUNC_CHDIR_LONG + # Code from module chown: gl_FUNC_CHOWN gl_UNISTD_MODULE_INDICATOR([chown]) + # Code from module clock-time: gl_CLOCK_TIME + # Code from module cloexec: + gl_CLOEXEC + gl_MODULE_INDICATOR_FOR_TESTS([cloexec]) + # Code from module close: gl_FUNC_CLOSE gl_UNISTD_MODULE_INDICATOR([close]) + # Code from module close-hook: + # Code from module close-stream: gl_CLOSE_STREAM gl_MODULE_INDICATOR([close-stream]) + # Code from module closeout: gl_CLOSEOUT + # Code from module configmake: + # Code from module d-ino: gl_CHECK_TYPE_STRUCT_DIRENT_D_INO + # Code from module dirent: gl_DIRENT_H + # Code from module dirent-safer: gl_DIRENT_SAFER gl_MODULE_INDICATOR([dirent-safer]) + # Code from module dirfd: gl_FUNC_DIRFD gl_DIRENT_MODULE_INDICATOR([dirfd]) + # Code from module dirname: gl_DIRNAME gl_MODULE_INDICATOR([dirname]) + # Code from module dirname-lgpl: gl_DIRNAME_LGPL + # Code from module double-slash-root: gl_DOUBLE_SLASH_ROOT + # Code from module dup2: gl_FUNC_DUP2 gl_UNISTD_MODULE_INDICATOR([dup2]) + # Code from module environ: gl_ENVIRON gl_UNISTD_MODULE_INDICATOR([environ]) + # Code from module errno: gl_HEADER_ERRNO_H + # Code from module error: gl_ERROR m4_ifdef([AM_XGETTEXT_OPTION], [AM_][XGETTEXT_OPTION([--flag=error:3:c-format]) AM_][XGETTEXT_OPTION([--flag=error_at_line:5:c-format])]) + # Code from module exclude: gl_EXCLUDE + # Code from module exitfail: + # Code from module extensions: + # Code from module fchdir: gl_FUNC_FCHDIR gl_UNISTD_MODULE_INDICATOR([fchdir]) + # Code from module fclose: gl_FUNC_FCLOSE gl_STDIO_MODULE_INDICATOR([fclose]) + # Code from module fcntl: gl_FUNC_FCNTL gl_FCNTL_MODULE_INDICATOR([fcntl]) + # Code from module fcntl-h: gl_FCNTL_H + # Code from module fdopendir: gl_FUNC_FDOPENDIR gl_DIRENT_MODULE_INDICATOR([fdopendir]) + gl_MODULE_INDICATOR([fdopendir]) + # Code from module fdutimensat: + AC_REQUIRE([AC_C_INLINE]) dnl because 'inline' is used in lib/utimens.h + gl_MODULE_INDICATOR([fdutimensat]) + # Code from module fileblocks: gl_FILEBLOCKS + # Code from module filenamecat-lgpl: + gl_FILE_NAME_CONCAT_LGPL + # Code from module float: gl_FLOAT_H + # Code from module fnmatch: gl_FUNC_FNMATCH_POSIX + # Code from module fnmatch-gnu: gl_FUNC_FNMATCH_GNU + # Code from module fpending: gl_FUNC_FPENDING + # Code from module fseeko: gl_FUNC_FSEEKO gl_STDIO_MODULE_INDICATOR([fseeko]) - gl_FUNC_FTRUNCATE - gl_UNISTD_MODULE_INDICATOR([ftruncate]) + # Code from module full-write: + # Code from module futimens: + gl_FUNC_FUTIMENS + gl_SYS_STAT_MODULE_INDICATOR([futimens]) + # Code from module getcwd: gl_FUNC_GETCWD gl_UNISTD_MODULE_INDICATOR([getcwd]) - gl_GETDATE + # Code from module getdelim: gl_FUNC_GETDELIM gl_STDIO_MODULE_INDICATOR([getdelim]) + # Code from module getdtablesize: gl_FUNC_GETDTABLESIZE gl_UNISTD_MODULE_INDICATOR([getdtablesize]) + # Code from module getline: gl_FUNC_GETLINE gl_STDIO_MODULE_INDICATOR([getline]) + # Code from module getopt-gnu: gl_FUNC_GETOPT_GNU - gl_MODULE_INDICATOR([getopt-gnu]) + gl_MODULE_INDICATOR_FOR_TESTS([getopt-gnu]) + # Code from module getopt-posix: gl_FUNC_GETOPT_POSIX + # Code from module getpagesize: gl_FUNC_GETPAGESIZE gl_UNISTD_MODULE_INDICATOR([getpagesize]) + # Code from module gettext: dnl you must add AM_GNU_GETTEXT([external]) or similar to configure.ac. - AM_GNU_GETTEXT_VERSION([0.17]) + AM_GNU_GETTEXT_VERSION([0.18.1]) + # Code from module gettext-h: AC_SUBST([LIBINTL]) AC_SUBST([LTLIBINTL]) + # Code from module gettime: gl_GETTIME + # Code from module gettimeofday: gl_FUNC_GETTIMEOFDAY gl_SYS_TIME_MODULE_INDICATOR([gettimeofday]) + # Code from module gitlog-to-changelog: + # Code from module hash: gl_HASH + # Code from module havelib: + # Code from module human: gl_HUMAN + # Code from module include_next: + # Code from module inline: gl_INLINE + # Code from module intprops: + # Code from module inttostr: gl_INTTOSTR + # Code from module inttypes: gl_INTTYPES_H + # Code from module langinfo: gl_LANGINFO_H + # Code from module lchown: gl_FUNC_LCHOWN gl_UNISTD_MODULE_INDICATOR([lchown]) + # Code from module link: + gl_FUNC_LINK + gl_UNISTD_MODULE_INDICATOR([link]) + # Code from module link-follow: + gl_FUNC_LINK_FOLLOWS_SYMLINK + # Code from module linkat: + gl_FUNC_LINKAT + gl_UNISTD_MODULE_INDICATOR([linkat]) + # Code from module localcharset: gl_LOCALCHARSET LOCALCHARSET_TESTS_ENVIRONMENT="CHARSETALIASDIR=\"\$(top_builddir)/$gl_source_base\"" AC_SUBST([LOCALCHARSET_TESTS_ENVIRONMENT]) + # Code from module lseek: gl_FUNC_LSEEK gl_UNISTD_MODULE_INDICATOR([lseek]) + # Code from module lstat: gl_FUNC_LSTAT gl_SYS_STAT_MODULE_INDICATOR([lstat]) - AC_FUNC_MALLOC - AC_DEFINE([GNULIB_MALLOC_GNU], 1, [Define to indicate the 'malloc' module.]) + # Code from module malloc-gnu: + gl_FUNC_MALLOC_GNU + gl_MODULE_INDICATOR([malloc-gnu]) + # Code from module malloc-posix: gl_FUNC_MALLOC_POSIX gl_STDLIB_MODULE_INDICATOR([malloc-posix]) + # Code from module malloca: gl_MALLOCA + # Code from module mbchar: gl_MBCHAR + # Code from module mbrtowc: gl_FUNC_MBRTOWC gl_WCHAR_MODULE_INDICATOR([mbrtowc]) + # Code from module mbscasecmp: gl_STRING_MODULE_INDICATOR([mbscasecmp]) + # Code from module mbsinit: gl_FUNC_MBSINIT gl_WCHAR_MODULE_INDICATOR([mbsinit]) + # Code from module mbsrtowcs: gl_FUNC_MBSRTOWCS gl_WCHAR_MODULE_INDICATOR([mbsrtowcs]) + # Code from module mbuiter: gl_MBITER + # Code from module memchr: gl_FUNC_MEMCHR gl_STRING_MODULE_INDICATOR([memchr]) + # Code from module mempcpy: gl_FUNC_MEMPCPY gl_STRING_MODULE_INDICATOR([mempcpy]) + # Code from module memrchr: gl_FUNC_MEMRCHR gl_STRING_MODULE_INDICATOR([memrchr]) + # Code from module mkdir: gl_FUNC_MKDIR + # Code from module mkdtemp: gt_FUNC_MKDTEMP gl_STDLIB_MODULE_INDICATOR([mkdtemp]) + # Code from module mkfifo: + gl_FUNC_MKFIFO + gl_UNISTD_MODULE_INDICATOR([mkfifo]) + # Code from module mkfifoat: + gl_FUNC_MKFIFOAT + gl_UNISTD_MODULE_INDICATOR([mkfifoat]) + gl_UNISTD_MODULE_INDICATOR([mknodat]) + # Code from module mknod: + gl_FUNC_MKNOD + gl_UNISTD_MODULE_INDICATOR([mknod]) + # Code from module mktime: gl_FUNC_MKTIME gl_TIME_MODULE_INDICATOR([mktime]) + # Code from module modechange: gl_MODECHANGE + # Code from module multiarch: gl_MULTIARCH + # Code from module nl_langinfo: gl_FUNC_NL_LANGINFO gl_LANGINFO_MODULE_INDICATOR([nl_langinfo]) + # Code from module obstack: AC_FUNC_OBSTACK dnl Note: AC_FUNC_OBSTACK does AC_LIBSOURCES([obstack.h, obstack.c]). + # Code from module open: gl_FUNC_OPEN - gl_MODULE_INDICATOR([open]) gl_FCNTL_MODULE_INDICATOR([open]) + # Code from module openat: gl_FUNC_OPENAT + # Code from module openat-die: + # Code from module parse-datetime: + gl_PARSE_DATETIME + # Code from module pathmax: gl_PATHMAX + # Code from module priv-set: gl_PRIV_SET + # Code from module progname: AC_CHECK_DECLS([program_invocation_name], [], [], [#include ]) AC_CHECK_DECLS([program_invocation_short_name], [], [], [#include ]) + # Code from module quote: gl_QUOTE + # Code from module quotearg: gl_QUOTEARG + # Code from module quotearg-simple: + # Code from module rawmemchr: gl_FUNC_RAWMEMCHR gl_STRING_MODULE_INDICATOR([rawmemchr]) + # Code from module readlink: gl_FUNC_READLINK gl_UNISTD_MODULE_INDICATOR([readlink]) + # Code from module readlinkat: + gl_FUNC_READLINKAT + gl_UNISTD_MODULE_INDICATOR([readlinkat]) + # Code from module realloc-posix: gl_FUNC_REALLOC_POSIX gl_STDLIB_MODULE_INDICATOR([realloc-posix]) + # Code from module regex: gl_REGEX + # Code from module rename: + gl_FUNC_RENAME + gl_STDIO_MODULE_INDICATOR([rename]) + # Code from module renameat: + gl_FUNC_RENAMEAT + gl_STDIO_MODULE_INDICATOR([renameat]) + # Code from module rmdir: gl_FUNC_RMDIR gl_UNISTD_MODULE_INDICATOR([rmdir]) + # Code from module rpmatch: gl_FUNC_RPMATCH gl_STDLIB_MODULE_INDICATOR([rpmatch]) + # Code from module safe-read: gl_SAFE_READ + # Code from module safe-write: gl_SAFE_WRITE - gl_SAME + # Code from module same-inode: + # Code from module save-cwd: gl_SAVE_CWD + # Code from module savedir: gl_SAVEDIR + # Code from module setenv: gl_FUNC_SETENV gl_STDLIB_MODULE_INDICATOR([setenv]) + # Code from module size_max: gl_SIZE_MAX + # Code from module sleep: gl_FUNC_SLEEP gl_UNISTD_MODULE_INDICATOR([sleep]) + # Code from module snprintf: gl_FUNC_SNPRINTF gl_STDIO_MODULE_INDICATOR([snprintf]) + # Code from module ssize_t: gt_TYPE_SSIZE_T + # Code from module stat: gl_FUNC_STAT gl_SYS_STAT_MODULE_INDICATOR([stat]) + # Code from module stat-macros: + # Code from module stat-time: gl_STAT_TIME gl_STAT_BIRTHTIME + # Code from module stdarg: gl_STDARG_H + # Code from module stdbool: AM_STDBOOL_H + # Code from module stddef: gl_STDDEF_H + # Code from module stdint: gl_STDINT_H + # Code from module stdio: gl_STDIO_H + # Code from module stdlib: gl_STDLIB_H + # Code from module stpcpy: gl_FUNC_STPCPY gl_STRING_MODULE_INDICATOR([stpcpy]) + # Code from module strcase: gl_STRCASE + # Code from module strchrnul: gl_FUNC_STRCHRNUL gl_STRING_MODULE_INDICATOR([strchrnul]) + # Code from module strdup-posix: gl_FUNC_STRDUP_POSIX gl_STRING_MODULE_INDICATOR([strdup]) + # Code from module streq: + # Code from module strerror: gl_FUNC_STRERROR gl_STRING_MODULE_INDICATOR([strerror]) + # Code from module string: gl_HEADER_STRING_H + # Code from module strings: gl_HEADER_STRINGS_H + # Code from module strndup: gl_FUNC_STRNDUP gl_STRING_MODULE_INDICATOR([strndup]) + # Code from module strnlen: gl_FUNC_STRNLEN gl_STRING_MODULE_INDICATOR([strnlen]) + # Code from module strnlen1: + # Code from module strtoimax: gl_FUNC_STRTOIMAX gl_INTTYPES_MODULE_INDICATOR([strtoimax]) + # Code from module strtol: gl_FUNC_STRTOL + # Code from module strtoll: gl_FUNC_STRTOLL gl_STDLIB_MODULE_INDICATOR([strtoll]) + # Code from module strtoul: gl_FUNC_STRTOUL + # Code from module strtoull: gl_FUNC_STRTOULL gl_STDLIB_MODULE_INDICATOR([strtoull]) + # Code from module strtoumax: gl_FUNC_STRTOUMAX gl_INTTYPES_MODULE_INDICATOR([strtoumax]) + # Code from module symlink: + gl_FUNC_SYMLINK + gl_UNISTD_MODULE_INDICATOR([symlink]) + # Code from module symlinkat: + gl_FUNC_SYMLINKAT + gl_UNISTD_MODULE_INDICATOR([symlinkat]) + # Code from module sys_stat: gl_HEADER_SYS_STAT_H AC_PROG_MKDIR_P + # Code from module sys_time: gl_HEADER_SYS_TIME_H AC_PROG_MKDIR_P + # Code from module sysexits: gl_SYSEXITS + # Code from module tempname: gl_FUNC_GEN_TEMPNAME + # Code from module time: gl_HEADER_TIME_H + # Code from module time_r: gl_TIME_R + gl_TIME_MODULE_INDICATOR([time_r]) + # Code from module timespec: gl_TIMESPEC + # Code from module unistd: gl_UNISTD_H + # Code from module unistd-safer: gl_UNISTD_SAFER + # Code from module unitypes: + gl_LIBUNISTRING_LIBHEADER([0.9], [unitypes.h]) + # Code from module uniwidth/base: + gl_LIBUNISTRING_LIBHEADER([0.9], [uniwidth.h]) + # Code from module uniwidth/width: + gl_LIBUNISTRING_MODULE([0.9], [uniwidth/width]) + # Code from module unlink: gl_FUNC_UNLINK gl_UNISTD_MODULE_INDICATOR([unlink]) + # Code from module unlinkdir: gl_UNLINKDIR + # Code from module unlocked-io: gl_FUNC_GLIBC_UNLOCKED_IO + # Code from module unsetenv: gl_FUNC_UNSETENV gl_STDLIB_MODULE_INDICATOR([unsetenv]) + # Code from module utimens: gl_UTIMENS + # Code from module utimensat: + gl_FUNC_UTIMENSAT + gl_SYS_STAT_MODULE_INDICATOR([utimensat]) + # Code from module vasnprintf: gl_FUNC_VASNPRINTF + # Code from module vasprintf: gl_FUNC_VASPRINTF gl_STDIO_MODULE_INDICATOR([vasprintf]) m4_ifdef([AM_XGETTEXT_OPTION], [AM_][XGETTEXT_OPTION([--flag=asprintf:2:c-format]) AM_][XGETTEXT_OPTION([--flag=vasprintf:2:c-format])]) + # Code from module verify: + # Code from module version-etc: gl_VERSION_ETC + # Code from module version-etc-fsf: + # Code from module vsnprintf: gl_FUNC_VSNPRINTF gl_STDIO_MODULE_INDICATOR([vsnprintf]) + # Code from module warn-on-use: + # Code from module wchar: gl_WCHAR_H + # Code from module wcrtomb: gl_FUNC_WCRTOMB gl_WCHAR_MODULE_INDICATOR([wcrtomb]) + # Code from module wctype: gl_WCTYPE_H + # Code from module wcwidth: gl_FUNC_WCWIDTH gl_WCHAR_MODULE_INDICATOR([wcwidth]) + # Code from module write: gl_FUNC_WRITE gl_UNISTD_MODULE_INDICATOR([write]) + # Code from module xalloc: gl_XALLOC + # Code from module xalloc-die: + # Code from module xgetcwd: gl_XGETCWD + # Code from module xsize: gl_XSIZE + # Code from module xstrndup: gl_XSTRNDUP + # Code from module xstrtol: gl_XSTRTOL + # Code from module xstrtoumax: + # Code from module xvasprintf: gl_XVASPRINTF m4_ifdef([AM_XGETTEXT_OPTION], [AM_][XGETTEXT_OPTION([--flag=xasprintf:1:c-format])]) + # End of code from modules m4_ifval(gl_LIBSOURCES_LIST, [ m4_syscmd([test ! -d ]m4_defn([gl_LIBSOURCES_DIR])[ || for gl_file in ]gl_LIBSOURCES_LIST[ ; do @@ -330,6 +761,13 @@ AC_DEFUN([gl_INIT], m4_pushdef([gltests_LIBSOURCES_DIR], []) gl_COMMON gl_source_base='tests' +changequote(,)dnl + gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS +changequote([, ])dnl + AC_SUBST([gltests_WITNESS]) + gl_module_indicator_condition=$gltests_WITNESS + m4_pushdef([gl_MODULE_INDICATOR_CONDITION], [$gl_module_indicator_condition]) + m4_popdef([gl_MODULE_INDICATOR_CONDITION]) m4_ifval(gltests_LIBSOURCES_LIST, [ m4_syscmd([test ! -d ]m4_defn([gltests_LIBSOURCES_DIR])[ || for gl_file in ]gltests_LIBSOURCES_LIST[ ; do @@ -428,11 +866,13 @@ AC_DEFUN([gl_FILE_LIST], [ build-aux/config.rpath build-aux/gitlog-to-changelog build-aux/warn-on-use.h - doc/getdate.texi + doc/parse-datetime.texi lib/alloca.c lib/alloca.in.h - lib/areadlink-with-size.c + lib/anytostr.c + lib/areadlink.c lib/areadlink.h + lib/areadlinkat.c lib/argmatch.c lib/argmatch.h lib/argp-ba.c @@ -453,6 +893,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/asnprintf.c lib/asprintf.c lib/at-func.c + lib/at-func2.c lib/backupfile.c lib/backupfile.h lib/basename-lgpl.c @@ -461,11 +902,12 @@ AC_DEFUN([gl_FILE_LIST], [ lib/btowc.c lib/c-ctype.c lib/c-ctype.h - lib/canonicalize.c - lib/canonicalize.h + lib/canonicalize-lgpl.c lib/chdir-long.c lib/chdir-long.h lib/chown.c + lib/cloexec.c + lib/cloexec.h lib/close-hook.c lib/close-hook.h lib/close-stream.c @@ -499,9 +941,10 @@ AC_DEFUN([gl_FILE_LIST], [ lib/fcntl.in.h lib/fd-safer.c lib/fdopendir.c - lib/file-set.c - lib/file-set.h + lib/fdutimensat.c lib/fileblocks.c + lib/filenamecat-lgpl.c + lib/filenamecat.h lib/float+.h lib/float.in.h lib/fnmatch.c @@ -511,12 +954,10 @@ AC_DEFUN([gl_FILE_LIST], [ lib/fpending.h lib/fseeko.c lib/fstatat.c - lib/ftruncate.c lib/full-write.c lib/full-write.h + lib/futimens.c lib/getcwd.c - lib/getdate.h - lib/getdate.y lib/getdelim.c lib/getdtablesize.c lib/getline.c @@ -528,10 +969,6 @@ AC_DEFUN([gl_FILE_LIST], [ lib/gettext.h lib/gettime.c lib/gettimeofday.c - lib/hash-pjw.c - lib/hash-pjw.h - lib/hash-triple.c - lib/hash-triple.h lib/hash.c lib/hash.h lib/human.c @@ -543,6 +980,8 @@ AC_DEFUN([gl_FILE_LIST], [ lib/inttypes.in.h lib/langinfo.in.h lib/lchown.c + lib/link.c + lib/linkat.c lib/localcharset.c lib/localcharset.h lib/lseek.c @@ -566,6 +1005,10 @@ AC_DEFUN([gl_FILE_LIST], [ lib/mkdir.c lib/mkdirat.c lib/mkdtemp.c + lib/mkfifo.c + lib/mkfifoat.c + lib/mknod.c + lib/mknodat.c lib/mktime-internal.h lib/mktime.c lib/modechange.c @@ -581,6 +1024,8 @@ AC_DEFUN([gl_FILE_LIST], [ lib/openat.c lib/openat.h lib/opendir-safer.c + lib/parse-datetime.h + lib/parse-datetime.y lib/pathmax.h lib/pipe-safer.c lib/printf-args.c @@ -598,6 +1043,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/rawmemchr.c lib/rawmemchr.valgrind lib/readlink.c + lib/readlinkat.c lib/realloc.c lib/ref-add.sin lib/ref-del.sin @@ -607,6 +1053,8 @@ AC_DEFUN([gl_FILE_LIST], [ lib/regex_internal.c lib/regex_internal.h lib/regexec.c + lib/rename.c + lib/renameat.c lib/rmdir.c lib/rpmatch.c lib/safe-read.c @@ -614,8 +1062,6 @@ AC_DEFUN([gl_FILE_LIST], [ lib/safe-write.c lib/safe-write.h lib/same-inode.h - lib/same.c - lib/same.h lib/save-cwd.c lib/save-cwd.h lib/savedir.c @@ -656,6 +1102,8 @@ AC_DEFUN([gl_FILE_LIST], [ lib/strtoul.c lib/strtoull.c lib/strtoumax.c + lib/symlink.c + lib/symlinkat.c lib/sys_stat.in.h lib/sys_time.in.h lib/sysexits.in.h @@ -669,8 +1117,8 @@ AC_DEFUN([gl_FILE_LIST], [ lib/unistd--.h lib/unistd-safer.h lib/unistd.in.h - lib/unitypes.h - lib/uniwidth.h + lib/unitypes.in.h + lib/uniwidth.in.h lib/uniwidth/cjk.h lib/uniwidth/width.c lib/unlink.c @@ -681,6 +1129,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/unsetenv.c lib/utimens.c lib/utimens.h + lib/utimensat.c lib/vasnprintf.c lib/vasnprintf.h lib/vasprintf.c @@ -714,6 +1163,7 @@ AC_DEFUN([gl_FILE_LIST], [ m4/alloca.m4 m4/argmatch.m4 m4/argp.m4 + m4/asm-underscore.m4 m4/backupfile.m4 m4/bison.m4 m4/btowc.m4 @@ -721,6 +1171,7 @@ AC_DEFUN([gl_FILE_LIST], [ m4/chdir-long.m4 m4/chown.m4 m4/clock_time.m4 + m4/cloexec.m4 m4/close-stream.m4 m4/close.m4 m4/closeout.m4 @@ -746,15 +1197,15 @@ AC_DEFUN([gl_FILE_LIST], [ m4/fcntl_h.m4 m4/fdopendir.m4 m4/fileblocks.m4 + m4/filenamecat.m4 m4/float_h.m4 m4/fnmatch.m4 m4/fpending.m4 m4/fseeko.m4 - m4/ftruncate.m4 + m4/futimens.m4 m4/getcwd-abort-bug.m4 m4/getcwd-path-max.m4 m4/getcwd.m4 - m4/getdate.m4 m4/getdelim.m4 m4/getdtablesize.m4 m4/getline.m4 @@ -787,6 +1238,10 @@ AC_DEFUN([gl_FILE_LIST], [ m4/lib-ld.m4 m4/lib-link.m4 m4/lib-prefix.m4 + m4/libunistring-base.m4 + m4/link-follow.m4 + m4/link.m4 + m4/linkat.m4 m4/localcharset.m4 m4/locale-fr.m4 m4/locale-ja.m4 @@ -808,6 +1263,9 @@ AC_DEFUN([gl_FILE_LIST], [ m4/memrchr.m4 m4/mkdir.m4 m4/mkdtemp.m4 + m4/mkfifo.m4 + m4/mkfifoat.m4 + m4/mknod.m4 m4/mktime.m4 m4/mmap-anon.m4 m4/mode_t.m4 @@ -817,6 +1275,7 @@ AC_DEFUN([gl_FILE_LIST], [ m4/nls.m4 m4/open.m4 m4/openat.m4 + m4/parse-datetime.m4 m4/pathmax.m4 m4/po.m4 m4/printf-posix.m4 @@ -827,13 +1286,15 @@ AC_DEFUN([gl_FILE_LIST], [ m4/quotearg.m4 m4/rawmemchr.m4 m4/readlink.m4 + m4/readlinkat.m4 m4/realloc.m4 m4/regex.m4 + m4/rename.m4 + m4/renameat.m4 m4/rmdir.m4 m4/rpmatch.m4 m4/safe-read.m4 m4/safe-write.m4 - m4/same.m4 m4/save-cwd.m4 m4/savedir.m4 m4/setenv.m4 @@ -865,6 +1326,8 @@ AC_DEFUN([gl_FILE_LIST], [ m4/strtoul.m4 m4/strtoull.m4 m4/strtoumax.m4 + m4/symlink.m4 + m4/symlinkat.m4 m4/sys_stat_h.m4 m4/sys_time_h.m4 m4/sysexits.m4 @@ -882,6 +1345,7 @@ AC_DEFUN([gl_FILE_LIST], [ m4/unlocked-io.m4 m4/utimbuf.m4 m4/utimens.m4 + m4/utimensat.m4 m4/utimes.m4 m4/vasnprintf.m4 m4/vasprintf.m4 diff --git a/m4/iconv.m4 b/m4/iconv.m4 index f46ff14..425145c 100644 --- a/m4/iconv.m4 +++ b/m4/iconv.m4 @@ -1,4 +1,4 @@ -# iconv.m4 serial 9 (gettext-0.18) +# iconv.m4 serial 15 (gettext-0.18.2) dnl Copyright (C) 2000-2002, 2007-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -30,27 +30,35 @@ AC_DEFUN([AM_ICONV_LINK], dnl Add $INCICONV to CPPFLAGS before performing the following checks, dnl because if the user has installed libiconv and not disabled its use dnl via --without-libiconv-prefix, he wants to use it. The first - dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed. + dnl AC_LINK_IFELSE will then fail, the second AC_LINK_IFELSE will succeed. am_save_CPPFLAGS="$CPPFLAGS" AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) AC_CACHE_CHECK([for iconv], [am_cv_func_iconv], [ am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no - AC_TRY_LINK([#include -#include ], - [iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);], + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include +#include + ]], + [[iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd);]])], [am_cv_func_iconv=yes]) if test "$am_cv_func_iconv" != yes; then am_save_LIBS="$LIBS" LIBS="$LIBS $LIBICONV" - AC_TRY_LINK([#include -#include ], - [iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);], + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include +#include + ]], + [[iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd);]])], [am_cv_lib_iconv=yes] [am_cv_func_iconv=yes]) LIBS="$am_save_LIBS" @@ -58,12 +66,14 @@ AC_DEFUN([AM_ICONV_LINK], ]) if test "$am_cv_func_iconv" = yes; then AC_CACHE_CHECK([for working iconv], [am_cv_func_iconv_works], [ - dnl This tests against bugs in AIX 5.1, HP-UX 11.11, Solaris 10. + dnl This tests against bugs in AIX 5.1, AIX 6.1..7.1, HP-UX 11.11, + dnl Solaris 10. am_save_LIBS="$LIBS" if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" fi - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include int main () @@ -106,6 +116,24 @@ int main () return 1; } } + /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ + { + iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); + if (cd_88591_to_utf8 != (iconv_t)(-1)) + { + static const char input[] = "\304"; + static char buf[2] = { (char)0xDE, (char)0xAD }; + const char *inptr = input; + size_t inbytesleft = 1; + char *outptr = buf; + size_t outbytesleft = 1; + size_t res = iconv (cd_88591_to_utf8, + (char **) &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) + return 1; + } + } #if 0 /* This bug could be worked around by the caller. */ /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ { @@ -138,11 +166,17 @@ int main () && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) return 1; return 0; -}], [am_cv_func_iconv_works=yes], [am_cv_func_iconv_works=no], - [case "$host_os" in +}]])], + [am_cv_func_iconv_works=yes], + [am_cv_func_iconv_works=no], + [ +changequote(,)dnl + case "$host_os" in aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; *) am_cv_func_iconv_works="guessing yes" ;; - esac]) + esac +changequote([,])dnl + ]) LIBS="$am_save_LIBS" ]) case "$am_cv_func_iconv_works" in @@ -170,13 +204,33 @@ int main () AC_SUBST([LTLIBICONV]) ]) -AC_DEFUN([AM_ICONV], +dnl Define AM_ICONV using AC_DEFUN_ONCE for Autoconf >= 2.64, in order to +dnl avoid warnings like +dnl "warning: AC_REQUIRE: `AM_ICONV' was expanded before it was required". +dnl This is tricky because of the way 'aclocal' is implemented: +dnl - It requires defining an auxiliary macro whose name ends in AC_DEFUN. +dnl Otherwise aclocal's initial scan pass would miss the macro definition. +dnl - It requires a line break inside the AC_DEFUN_ONCE and AC_DEFUN expansions. +dnl Otherwise aclocal would emit many "Use of uninitialized value $1" +dnl warnings. +m4_define([gl_iconv_AC_DEFUN], + m4_version_prereq([2.64], + [[AC_DEFUN_ONCE( + [$1], [$2])]], + [m4_ifdef([gl_00GNULIB], + [[AC_DEFUN_ONCE( + [$1], [$2])]], + [[AC_DEFUN( + [$1], [$2])]])])) +gl_iconv_AC_DEFUN([AM_ICONV], [ AM_ICONV_LINK if test "$am_cv_func_iconv" = yes; then AC_MSG_CHECKING([for iconv declaration]) AC_CACHE_VAL([am_cv_proto_iconv], [ - AC_TRY_COMPILE([ + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ #include #include extern @@ -188,7 +242,10 @@ size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, si #else size_t iconv(); #endif -], [], [am_cv_proto_iconv_arg1=""], [am_cv_proto_iconv_arg1="const"]) + ]], + [[]])], + [am_cv_proto_iconv_arg1=""], + [am_cv_proto_iconv_arg1="const"]) am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` AC_MSG_RESULT([ diff --git a/m4/include_next.m4 b/m4/include_next.m4 index c7e0672..e37eb05 100644 --- a/m4/include_next.m4 +++ b/m4/include_next.m4 @@ -1,4 +1,4 @@ -# include_next.m4 serial 14 +# include_next.m4 serial 16 dnl Copyright (C) 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -24,6 +24,13 @@ dnl does not warn about some things, and on some systems (Solaris and Interix) dnl __STDC__ evaluates to 0 instead of to 1. The latter is an undesired side dnl effect; we are therefore careful to use 'defined __STDC__' or '1' instead dnl of plain '__STDC__'. +dnl +dnl PRAGMA_COLUMNS can be used in files that override system header files, so +dnl as to avoid compilation errors on HP NonStop systems when the gnulib file +dnl is included by a system header file that does a "#pragma COLUMNS 80" (which +dnl has the effect of truncating the lines of that file and all files that it +dnl includes to 80 columns) and the gnulib file has lines longer than 80 +dnl columns. AC_DEFUN([gl_INCLUDE_NEXT], [ @@ -68,10 +75,11 @@ EOF EOF gl_save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1b -Iconftestd2" - AC_COMPILE_IFELSE([#include ], +dnl We intentionally avoid using AC_LANG_SOURCE here. + AC_COMPILE_IFELSE([AC_LANG_DEFINES_PROVIDED[#include ]], [gl_cv_have_include_next=yes], [CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1a -Iconftestd2" - AC_COMPILE_IFELSE([#include ], + AC_COMPILE_IFELSE([AC_LANG_DEFINES_PROVIDED[#include ]], [gl_cv_have_include_next=buggy], [gl_cv_have_include_next=no]) ]) @@ -97,6 +105,24 @@ EOF AC_SUBST([INCLUDE_NEXT]) AC_SUBST([INCLUDE_NEXT_AS_FIRST_DIRECTIVE]) AC_SUBST([PRAGMA_SYSTEM_HEADER]) + AC_CACHE_CHECK([whether system header files limit the line length], + [gl_cv_pragma_columns], + [dnl HP NonStop systems, which define __TANDEM, have this misfeature. + AC_EGREP_CPP([choke me], + [ +#ifdef __TANDEM +choke me +#endif + ], + [gl_cv_pragma_columns=yes], + [gl_cv_pragma_columns=no]) + ]) + if test $gl_cv_pragma_columns = yes; then + PRAGMA_COLUMNS="#pragma COLUMNS 10000" + else + PRAGMA_COLUMNS= + fi + AC_SUBST([PRAGMA_COLUMNS]) ]) # gl_CHECK_NEXT_HEADERS(HEADER1 HEADER2 ...) @@ -185,3 +211,7 @@ AC_DEFUN([gl_CHECK_NEXT_HEADERS], [$gl_next_as_first_directive]) AS_VAR_POPDEF([gl_next_header])]) ]) + +# Autoconf 2.68 added warnings for our use of AC_COMPILE_IFELSE; +# this fallback is safe for all earlier autoconf versions. +m4_define_default([AC_LANG_DEFINES_PROVIDED]) diff --git a/m4/intlmacosx.m4 b/m4/intlmacosx.m4 index dd91025..f0f7c98 100644 --- a/m4/intlmacosx.m4 +++ b/m4/intlmacosx.m4 @@ -1,4 +1,4 @@ -# intlmacosx.m4 serial 3 (gettext-0.18) +# intlmacosx.m4 serial 4 (gettext-0.18.2) dnl Copyright (C) 2004-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -22,8 +22,10 @@ AC_DEFUN([gt_INTL_MACOSX], [gt_cv_func_CFPreferencesCopyAppValue], [gt_save_LIBS="$LIBS" LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - AC_TRY_LINK([#include ], - [CFPreferencesCopyAppValue(NULL, NULL)], + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[CFPreferencesCopyAppValue(NULL, NULL)]])], [gt_cv_func_CFPreferencesCopyAppValue=yes], [gt_cv_func_CFPreferencesCopyAppValue=no]) LIBS="$gt_save_LIBS"]) @@ -35,7 +37,10 @@ AC_DEFUN([gt_INTL_MACOSX], AC_CACHE_CHECK([for CFLocaleCopyCurrent], [gt_cv_func_CFLocaleCopyCurrent], [gt_save_LIBS="$LIBS" LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - AC_TRY_LINK([#include ], [CFLocaleCopyCurrent();], + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[CFLocaleCopyCurrent();]])], [gt_cv_func_CFLocaleCopyCurrent=yes], [gt_cv_func_CFLocaleCopyCurrent=no]) LIBS="$gt_save_LIBS"]) diff --git a/m4/intmax_t.m4 b/m4/intmax_t.m4 index 975caac..493e4a9 100644 --- a/m4/intmax_t.m4 +++ b/m4/intmax_t.m4 @@ -1,4 +1,4 @@ -# intmax_t.m4 serial 7 +# intmax_t.m4 serial 8 dnl Copyright (C) 1997-2004, 2006-2007, 2009-2010 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation @@ -7,7 +7,7 @@ dnl with or without modifications, as long as this notice is preserved. dnl From Paul Eggert. -AC_PREREQ([2.13]) +AC_PREREQ([2.53]) # Define intmax_t to 'long' or 'long long' # if it is not already defined in or . @@ -38,7 +38,9 @@ AC_DEFUN([gt_AC_TYPE_INTMAX_T], AC_REQUIRE([gl_AC_HEADER_INTTYPES_H]) AC_REQUIRE([gl_AC_HEADER_STDINT_H]) AC_CACHE_CHECK([for intmax_t], [gt_cv_c_intmax_t], - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ #include #include #if HAVE_STDINT_H_WITH_UINTMAX @@ -47,7 +49,10 @@ AC_DEFUN([gt_AC_TYPE_INTMAX_T], #if HAVE_INTTYPES_H_WITH_UINTMAX #include #endif -], [intmax_t x = -1; return !x;], gt_cv_c_intmax_t=yes, gt_cv_c_intmax_t=no)]) + ]], + [[intmax_t x = -1; return !x;]])], + [gt_cv_c_intmax_t=yes], + [gt_cv_c_intmax_t=no])]) if test $gt_cv_c_intmax_t = yes; then AC_DEFINE([HAVE_INTMAX_T], [1], [Define if you have the 'intmax_t' type in or .]) diff --git a/m4/inttostr.m4 b/m4/inttostr.m4 index 3e17ed5..ff64ddb 100644 --- a/m4/inttostr.m4 +++ b/m4/inttostr.m4 @@ -1,4 +1,4 @@ -#serial 7 +#serial 8 dnl Copyright (C) 2004, 2005, 2006, 2009, 2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -6,11 +6,6 @@ dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_INTTOSTR], [ - AC_LIBOBJ([imaxtostr]) - AC_LIBOBJ([offtostr]) - AC_LIBOBJ([umaxtostr]) - AC_LIBOBJ([uinttostr]) - gl_PREREQ_INTTOSTR gl_PREREQ_IMAXTOSTR gl_PREREQ_OFFTOSTR diff --git a/m4/inttypes-pri.m4 b/m4/inttypes-pri.m4 index 718a4f4..ee96bcd 100644 --- a/m4/inttypes-pri.m4 +++ b/m4/inttypes-pri.m4 @@ -1,4 +1,4 @@ -# inttypes-pri.m4 serial 6 (gettext-0.18) +# inttypes-pri.m4 serial 7 (gettext-0.18.2) dnl Copyright (C) 1997-2002, 2006, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -6,7 +6,7 @@ dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. -AC_PREREQ([2.52]) +AC_PREREQ([2.53]) # Define PRI_MACROS_BROKEN if exists and defines the PRI* # macros to non-string values. This is the case on AIX 4.3.3. @@ -18,11 +18,17 @@ AC_DEFUN([gt_INTTYPES_PRI], AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken], [gt_cv_inttypes_pri_broken], [ - AC_TRY_COMPILE([#include + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include #ifdef PRId32 char *p = PRId32; #endif -], [], [gt_cv_inttypes_pri_broken=no], [gt_cv_inttypes_pri_broken=yes]) + ]], + [[]])], + [gt_cv_inttypes_pri_broken=no], + [gt_cv_inttypes_pri_broken=yes]) ]) fi if test "$gt_cv_inttypes_pri_broken" = yes; then diff --git a/m4/inttypes.m4 b/m4/inttypes.m4 index 3ee174d..e1be6e9 100644 --- a/m4/inttypes.m4 +++ b/m4/inttypes.m4 @@ -1,4 +1,4 @@ -# inttypes.m4 serial 17 +# inttypes.m4 serial 18 dnl Copyright (C) 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -285,7 +285,7 @@ AC_DEFUN([gl_INTTYPES_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_INTTYPES_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) ]) AC_DEFUN([gl_INTTYPES_H_DEFAULTS], diff --git a/m4/inttypes_h.m4 b/m4/inttypes_h.m4 index 782d77e..9d8f926 100644 --- a/m4/inttypes_h.m4 +++ b/m4/inttypes_h.m4 @@ -1,4 +1,4 @@ -# inttypes_h.m4 serial 9 +# inttypes_h.m4 serial 10 dnl Copyright (C) 1997-2004, 2006, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -12,12 +12,15 @@ dnl From Paul Eggert. AC_DEFUN([gl_AC_HEADER_INTTYPES_H], [ AC_CACHE_CHECK([for inttypes.h], [gl_cv_header_inttypes_h], - [AC_TRY_COMPILE( - [#include -#include ], - [uintmax_t i = (uintmax_t) -1; return !i;], - [gl_cv_header_inttypes_h=yes], - [gl_cv_header_inttypes_h=no])]) + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include +#include + ]], + [[uintmax_t i = (uintmax_t) -1; return !i;]])], + [gl_cv_header_inttypes_h=yes], + [gl_cv_header_inttypes_h=no])]) if test $gl_cv_header_inttypes_h = yes; then AC_DEFINE_UNQUOTED([HAVE_INTTYPES_H_WITH_UINTMAX], [1], [Define if exists, doesn't clash with , diff --git a/m4/langinfo_h.m4 b/m4/langinfo_h.m4 index 5e4922a..adc445e 100644 --- a/m4/langinfo_h.m4 +++ b/m4/langinfo_h.m4 @@ -1,5 +1,5 @@ -# langinfo_h.m4 serial 4 -dnl Copyright (C) 2009, 2010 Free Software Foundation, Inc. +# langinfo_h.m4 serial 7 +dnl Copyright (C) 2009-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -11,16 +11,19 @@ AC_DEFUN([gl_LANGINFO_H], dnl Persuade glibc-2.0.6 to define CODESET. AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) + dnl is always overridden, because of GNULIB_POSIXCHECK. gl_CHECK_NEXT_HEADERS([langinfo.h]) dnl Determine whether exists. It is missing on mingw and BeOS. HAVE_LANGINFO_CODESET=0 + HAVE_LANGINFO_T_FMT_AMPM=0 HAVE_LANGINFO_ERA=0 + HAVE_LANGINFO_YESEXPR=0 AC_CHECK_HEADERS_ONCE([langinfo.h]) if test $ac_cv_header_langinfo_h = yes; then HAVE_LANGINFO_H=1 dnl Determine what defines. CODESET and ERA etc. are missing - dnl on OpenBSD 3.8. + dnl on OpenBSD 3.8. T_FMT_AMPM and YESEXPR, NOEXPR are missing on IRIX 5.3. AC_CACHE_CHECK([whether langinfo.h defines CODESET], [gl_cv_header_langinfo_codeset], [AC_COMPILE_IFELSE( @@ -33,6 +36,18 @@ int a = CODESET; if test $gl_cv_header_langinfo_codeset = yes; then HAVE_LANGINFO_CODESET=1 fi + AC_CACHE_CHECK([whether langinfo.h defines T_FMT_AMPM], + [gl_cv_header_langinfo_t_fmt_ampm], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[#include +int a = T_FMT_AMPM; +]])], + [gl_cv_header_langinfo_t_fmt_ampm=yes], + [gl_cv_header_langinfo_t_fmt_ampm=no]) + ]) + if test $gl_cv_header_langinfo_t_fmt_ampm = yes; then + HAVE_LANGINFO_T_FMT_AMPM=1 + fi AC_CACHE_CHECK([whether langinfo.h defines ERA], [gl_cv_header_langinfo_era], [AC_COMPILE_IFELSE( @@ -45,12 +60,26 @@ int a = ERA; if test $gl_cv_header_langinfo_era = yes; then HAVE_LANGINFO_ERA=1 fi + AC_CACHE_CHECK([whether langinfo.h defines YESEXPR], + [gl_cv_header_langinfo_yesexpr], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[#include +int a = YESEXPR; +]])], + [gl_cv_header_langinfo_yesexpr=yes], + [gl_cv_header_langinfo_yesexpr=no]) + ]) + if test $gl_cv_header_langinfo_yesexpr = yes; then + HAVE_LANGINFO_YESEXPR=1 + fi else HAVE_LANGINFO_H=0 fi AC_SUBST([HAVE_LANGINFO_H]) AC_SUBST([HAVE_LANGINFO_CODESET]) + AC_SUBST([HAVE_LANGINFO_T_FMT_AMPM]) AC_SUBST([HAVE_LANGINFO_ERA]) + AC_SUBST([HAVE_LANGINFO_YESEXPR]) dnl Check for declarations of anything we want to poison if the dnl corresponding gnulib module is not in use. @@ -62,9 +91,9 @@ AC_DEFUN([gl_LANGINFO_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_LANGINFO_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_LANGINFO_H_DEFAULTS], diff --git a/m4/lib-ld.m4 b/m4/lib-ld.m4 index ebb3052..294db72 100644 --- a/m4/lib-ld.m4 +++ b/m4/lib-ld.m4 @@ -1,4 +1,4 @@ -# lib-ld.m4 serial 4 (gettext-0.18) +# lib-ld.m4 serial 5 (gettext-0.18.2) dnl Copyright (C) 1996-2003, 2009-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -31,15 +31,14 @@ AC_REQUIRE([AC_CANONICAL_HOST])dnl # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh + # 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 ac_prog=ld if test "$GCC" = yes; then diff --git a/m4/lib-link.m4 b/m4/lib-link.m4 index 90e1ac9..2ea9d6d 100644 --- a/m4/lib-link.m4 +++ b/m4/lib-link.m4 @@ -1,4 +1,4 @@ -# lib-link.m4 serial 20 (gettext-0.18) +# lib-link.m4 serial 25 (gettext-0.18.2) dnl Copyright (C) 2001-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -18,9 +18,9 @@ AC_DEFUN([AC_LIB_LINKFLAGS], [ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) AC_REQUIRE([AC_LIB_RPATH]) - pushdef([Name],[translit([$1],[./-], [___])]) - pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) + pushdef([Name],[m4_translit([$1],[./+-], [____])]) + pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [ AC_LIB_LINKFLAGS_BODY([$1], [$2]) ac_cv_lib[]Name[]_libs="$LIB[]NAME" @@ -58,9 +58,9 @@ AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], [ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) AC_REQUIRE([AC_LIB_RPATH]) - pushdef([Name],[translit([$1],[./-], [___])]) - pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) + pushdef([Name],[m4_translit([$1],[./+-], [____])]) + pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME dnl accordingly. @@ -74,8 +74,19 @@ AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [ ac_save_LIBS="$LIBS" - LIBS="$LIBS $LIB[]NAME" - AC_TRY_LINK([$3], [$4], + dnl If $LIB[]NAME contains some -l options, add it to the end of LIBS, + dnl because these -l options might require -L options that are present in + dnl LIBS. -l options benefit only from the -L options listed before it. + dnl Otherwise, add it to the front of LIBS, because it may be a static + dnl library that depends on another static library that is present in LIBS. + dnl Static libraries benefit only from the static libraries listed after + dnl it. + case " $LIB[]NAME" in + *" -l"*) LIBS="$LIBS $LIB[]NAME" ;; + *) LIBS="$LIB[]NAME $LIBS" ;; + esac + AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[$3]], [[$4]])], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name='m4_if([$5], [], [no], [[$5]])']) LIBS="$ac_save_LIBS" @@ -147,15 +158,15 @@ dnl package. This declaration must occur before an AC_LIB_LINKFLAGS or similar dnl macro call that searches for libname. AC_DEFUN([AC_LIB_FROMPACKAGE], [ - pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) + pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) define([acl_frompackage_]NAME, [$2]) popdef([NAME]) pushdef([PACK],[$2]) - pushdef([PACKUP],[translit(PACK,[abcdefghijklmnopqrstuvwxyz./-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) + pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) define([acl_libsinpackage_]PACKUP, - m4_ifdef([acl_libsinpackage_]PACKUP, [acl_libsinpackage_]PACKUP[[, ]],)[lib$1]) + m4_ifdef([acl_libsinpackage_]PACKUP, [m4_defn([acl_libsinpackage_]PACKUP)[, ]],)[lib$1]) popdef([PACKUP]) popdef([PACK]) ]) @@ -168,14 +179,14 @@ dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem. AC_DEFUN([AC_LIB_LINKFLAGS_BODY], [ AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) - pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) + pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) pushdef([PACK],[m4_ifdef([acl_frompackage_]NAME, [acl_frompackage_]NAME, lib[$1])]) - pushdef([PACKUP],[translit(PACK,[abcdefghijklmnopqrstuvwxyz./-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) + pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) pushdef([PACKLIBS],[m4_ifdef([acl_frompackage_]NAME, [acl_libsinpackage_]PACKUP, lib[$1])]) dnl Autoconf >= 2.61 supports dots in --with options. - pushdef([P_A_C_K],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[translit(PACK,[.],[_])],PACK)]) + pushdef([P_A_C_K],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[m4_translit(PACK,[.],[_])],PACK)]) dnl By default, look in $includedir and $libdir. use_additional=yes AC_LIB_WITH_FINAL_PREFIX([ @@ -232,7 +243,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], names_already_handled="$names_already_handled $name" dnl See if it was already located by an earlier AC_LIB_LINKFLAGS dnl or AC_LIB_HAVE_LINKFLAGS call. - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` eval value=\"\$HAVE_LIB$uppername\" if test -n "$value"; then if test "$value" = yes; then diff --git a/m4/libunistring-base.m4 b/m4/libunistring-base.m4 new file mode 100644 index 0000000..8335ec5 --- /dev/null +++ b/m4/libunistring-base.m4 @@ -0,0 +1,141 @@ +# libunistring-base.m4 serial 5 +dnl Copyright (C) 2010 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 Paolo Bonzini and Bruno Haible. + +dnl gl_LIBUNISTRING_MODULE([VERSION], [Module]) +dnl Declares that the source files of Module should be compiled, unless we +dnl are linking with libunistring and its version is >= the given VERSION. +dnl Defines an automake conditional LIBUNISTRING_COMPILE_$MODULE that is +dnl true if the source files of Module should be compiled. +dnl This macro is to be used for public libunistring API, not for +dnl undocumented API. +dnl +dnl You have to bump the VERSION argument to the next projected version +dnl number each time you make a change that affects the behaviour of the +dnl functions defined in Module (even if the sources of Module itself do not +dnl change). + +AC_DEFUN([gl_LIBUNISTRING_MODULE], +[ + AC_REQUIRE([gl_LIBUNISTRING_LIB_PREPARE]) + dnl Use the variables HAVE_LIBUNISTRING, LIBUNISTRING_VERSION from + dnl gl_LIBUNISTRING_CORE if that macro has been run. + AM_CONDITIONAL(AS_TR_CPP([LIBUNISTRING_COMPILE_$2]), + [gl_LIBUNISTRING_VERSION_CMP([$1])]) +]) + +dnl gl_LIBUNISTRING_LIBHEADER([VERSION], [HeaderFile]) +dnl Declares that HeaderFile should be created, unless we are linking +dnl with libunistring and its version is >= the given VERSION. +dnl HeaderFile should be relative to the lib directory and end in '.h'. +dnl Prepares for substituting LIBUNISTRING_HEADERFILE (to HeaderFile or empty). +dnl +dnl When we are linking with the already installed libunistring and its version +dnl is < VERSION, we create HeaderFile here, because we may compile functions +dnl (via gl_LIBUNISTRING_MODULE above) that are not contained in the installed +dnl version. +dnl When we are linking with the already installed libunistring and its version +dnl is > VERSION, we don't create HeaderFile here: it could cause compilation +dnl errors in other libunistring header files if some types are missing. +dnl +dnl You have to bump the VERSION argument to the next projected version +dnl number each time you make a non-comment change to the HeaderFile. + +AC_DEFUN([gl_LIBUNISTRING_LIBHEADER], +[ + AC_REQUIRE([gl_LIBUNISTRING_LIB_PREPARE]) + dnl Use the variables HAVE_LIBUNISTRING, LIBUNISTRING_VERSION from + dnl gl_LIBUNISTRING_CORE if that macro has been run. + if gl_LIBUNISTRING_VERSION_CMP([$1]); then + LIBUNISTRING_[]AS_TR_CPP([$2])='$2' + else + LIBUNISTRING_[]AS_TR_CPP([$2])= + fi + AC_SUBST([LIBUNISTRING_]AS_TR_CPP([$2])) +]) + +dnl Miscellaneous preparations/initializations. + +AC_DEFUN([gl_LIBUNISTRING_LIB_PREPARE], +[ + dnl Ensure that HAVE_LIBUNISTRING is fully determined at this point. + m4_ifdef([gl_LIBUNISTRING], [AC_REQUIRE([gl_LIBUNISTRING])]) + + AC_REQUIRE([AC_PROG_AWK]) + +dnl Sed expressions to extract the parts of a version number. +changequote(,) +gl_libunistring_sed_extract_major='/^[0-9]/{s/^\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +gl_libunistring_sed_extract_minor='/^[0-9][0-9]*[.][0-9]/{s/^[0-9]*[.]\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +gl_libunistring_sed_extract_subminor='/^[0-9][0-9]*[.][0-9][0-9]*[.][0-9]/{s/^[0-9]*[.][0-9]*[.]\([0-9]*\).*/\1/p;q;} +i\ +0 +q +' +changequote([,]) + + if test "$HAVE_LIBUNISTRING" = yes; then + LIBUNISTRING_VERSION_MAJOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_major"` + LIBUNISTRING_VERSION_MINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_minor"` + LIBUNISTRING_VERSION_SUBMINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_subminor"` + fi +]) + +dnl gl_LIBUNISTRING_VERSION_CMP([VERSION]) +dnl Expands to a shell statement that evaluates to true if LIBUNISTRING_VERSION +dnl is less than the VERSION argument. +AC_DEFUN([gl_LIBUNISTRING_VERSION_CMP], +[ { test "$HAVE_LIBUNISTRING" != yes \ + || { + dnl AS_LITERAL_IF exists and works fine since autoconf-2.59 at least. + AS_LITERAL_IF([$1], + [dnl This is the optimized variant, that assumes the argument is a literal: + m4_pushdef([requested_version_major], + [gl_LIBUNISTRING_ARG_OR_ZERO(m4_bpatsubst([$1], [^\([0-9]*\).*], [\1]), [])]) + m4_pushdef([requested_version_minor], + [gl_LIBUNISTRING_ARG_OR_ZERO(m4_bpatsubst([$1], [^[0-9]*[.]\([0-9]*\).*], [\1]), [$1])]) + m4_pushdef([requested_version_subminor], + [gl_LIBUNISTRING_ARG_OR_ZERO(m4_bpatsubst([$1], [^[0-9]*[.][0-9]*[.]\([0-9]*\).*], [\1]), [$1])]) + test $LIBUNISTRING_VERSION_MAJOR -lt requested_version_major \ + || { test $LIBUNISTRING_VERSION_MAJOR -eq requested_version_major \ + && { test $LIBUNISTRING_VERSION_MINOR -lt requested_version_minor \ + || { test $LIBUNISTRING_VERSION_MINOR -eq requested_version_minor \ + && test $LIBUNISTRING_VERSION_SUBMINOR -lt requested_version_subminor + } + } + } + m4_popdef([requested_version_subminor]) + m4_popdef([requested_version_minor]) + m4_popdef([requested_version_major]) + ], + [dnl This is the unoptimized variant: + requested_version_major=`echo '$1' | sed -n -e "$gl_libunistring_sed_extract_major"` + requested_version_minor=`echo '$1' | sed -n -e "$gl_libunistring_sed_extract_minor"` + requested_version_subminor=`echo '$1' | sed -n -e "$gl_libunistring_sed_extract_subminor"` + test $LIBUNISTRING_VERSION_MAJOR -lt $requested_version_major \ + || { test $LIBUNISTRING_VERSION_MAJOR -eq $requested_version_major \ + && { test $LIBUNISTRING_VERSION_MINOR -lt $requested_version_minor \ + || { test $LIBUNISTRING_VERSION_MINOR -eq $requested_version_minor \ + && test $LIBUNISTRING_VERSION_SUBMINOR -lt $requested_version_subminor + } + } + } + ]) + } + }]) + +dnl gl_LIBUNISTRING_ARG_OR_ZERO([ARG], [ORIG]) expands to ARG if it is not the +dnl same as ORIG, otherwise to 0. +m4_define([gl_LIBUNISTRING_ARG_OR_ZERO], [m4_if([$1], [$2], [0], [$1])]) diff --git a/m4/link-follow.m4 b/m4/link-follow.m4 new file mode 100644 index 0000000..256b2a9 --- /dev/null +++ b/m4/link-follow.m4 @@ -0,0 +1,81 @@ +# serial 15 +dnl Run a program to determine whether link(2) follows symlinks. +dnl Set LINK_FOLLOWS_SYMLINKS accordingly. + +# Copyright (C) 1999-2001, 2004-2006, 2009-2010 Free Software Foundation, Inc. +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +dnl This macro can be used to emulate POSIX linkat. If +dnl LINK_FOLLOWS_SYMLINKS is 0, link matches linkat(,0), and +dnl linkat(,AT_SYMLINK_FOLLOW) requires a readlink. If it is 1, +dnl link matches linkat(,AT_SYMLINK_FOLLOW), and there is no way +dnl to do linkat(,0) on symlinks (on all other file types, +dnl link() is sufficient). If it is -1, use a runtime test. +AC_DEFUN([gl_FUNC_LINK_FOLLOWS_SYMLINK], +[dnl + AC_CHECK_FUNCS_ONCE([readlink]) + dnl Mingw lacks link, although gnulib provides a good replacement. + dnl However, it also lacks symlink, so there's nothing to test in + dnl the first place, and no reason to need to distinguish between + dnl linkat variants. So, we set LINK_FOLLOWS_SYMLINKS to 0. + gl_link_follows_symlinks=0 # assume GNU behavior + if test $ac_cv_func_readlink = yes; then + AC_CACHE_CHECK([whether link(2) dereferences a symlink], + gl_cv_func_link_follows_symlink, + [ + # Create a regular file. + echo > conftest.file + AC_RUN_IFELSE([AC_LANG_SOURCE([[ +# include +# include +# include +# include + +# define SAME_INODE(Stat_buf_1, Stat_buf_2) \ + ((Stat_buf_1).st_ino == (Stat_buf_2).st_ino \ + && (Stat_buf_1).st_dev == (Stat_buf_2).st_dev) + + int + main () + { + const char *file = "conftest.file"; + const char *sym = "conftest.sym"; + const char *hard = "conftest.hard"; + struct stat sb_file, sb_hard; + + /* Create a symlink to the regular file. */ + if (symlink (file, sym)) + return 2; + + /* Create a hard link to that symlink. */ + if (link (sym, hard)) + return 3; + + if (lstat (hard, &sb_hard)) + return 4; + if (lstat (file, &sb_file)) + return 5; + + /* If the dev/inode of hard and file are the same, then + the link call followed the symlink. */ + return SAME_INODE (sb_hard, sb_file) ? 1 : 0; + } + ]])], + [gl_cv_func_link_follows_symlink=no], dnl GNU behavior + [gl_cv_func_link_follows_symlink=yes], dnl Followed link/compile failed + [gl_cv_func_link_follows_symlink=unknown] dnl We're cross compiling. + ) + rm -f conftest.file conftest.sym conftest.hard + ]) + case $gl_cv_func_link_follows_symlink in + yes) gl_link_follows_symlinks=1 ;; + no) ;; # already defaulted to 0 + *) gl_link_follows_symlinks=-1 ;; + esac + fi + AC_DEFINE_UNQUOTED([LINK_FOLLOWS_SYMLINKS], [$gl_link_follows_symlinks], + [Define to 1 if `link(2)' dereferences symbolic links, 0 if it + creates hard links to symlinks, and -1 if unknown.]) +]) diff --git a/m4/link.m4 b/m4/link.m4 new file mode 100644 index 0000000..0ca85d3 --- /dev/null +++ b/m4/link.m4 @@ -0,0 +1,38 @@ +# link.m4 serial 4 +dnl Copyright (C) 2009, 2010 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_FUNC_LINK], +[ + AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) + AC_CHECK_FUNCS_ONCE([link]) + if test $ac_cv_func_link = no; then + HAVE_LINK=0 + AC_LIBOBJ([link]) + else + AC_CACHE_CHECK([whether link handles trailing slash correctly], + [gl_cv_func_link_works], + [touch conftest.a + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.a conftest.lnk + fi + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include +]], [[if (!link ("conftest.a", "conftest.b/")) return 1; +#if HAVE_LSTAT + if (!link ("conftest.lnk/", "conftest.b")) return 2; +#endif + ]])], + [gl_cv_func_link_works=yes], [gl_cv_func_link_works=no], + [gl_cv_func_link_works="guessing no"]) + rm -f conftest.a conftest.b conftest.lnk]) + if test "$gl_cv_func_link_works" != yes; then + REPLACE_LINK=1 + AC_LIBOBJ([link]) + fi + fi +]) diff --git a/m4/linkat.m4 b/m4/linkat.m4 new file mode 100644 index 0000000..c0b2729 --- /dev/null +++ b/m4/linkat.m4 @@ -0,0 +1,99 @@ +# serial 3 +# See if we need to provide linkat replacement. + +dnl Copyright (C) 2009-2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_LINKAT], +[ + AC_REQUIRE([gl_FUNC_OPENAT]) + AC_REQUIRE([gl_FUNC_LINK]) + AC_REQUIRE([gl_FUNC_LINK_FOLLOWS_SYMLINK]) + AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CHECK_FUNCS_ONCE([linkat symlink]) + AC_CHECK_HEADERS_ONCE([sys/param.h]) + if test $ac_cv_func_linkat = no; then + HAVE_LINKAT=0 + AC_LIBOBJ([linkat]) + AC_LIBOBJ([at-func2]) + else + AC_CACHE_CHECK([whether linkat(,AT_SYMLINK_FOLLOW) works], + [gl_cv_func_linkat_follow], + [rm -rf conftest.f1 conftest.f2 + touch conftest.f1 + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ +#include +#include +#ifdef __linux__ +/* Linux added linkat in 2.6.16, but did not add AT_SYMLINK_FOLLOW + until 2.6.18. Always replace linkat to support older kernels. */ +choke me +#endif +]], [return linkat (AT_FDCWD, "conftest.f1", AT_FDCWD, "conftest.f2", + AT_SYMLINK_FOLLOW);])], + [gl_cv_func_linkat_follow=yes], + [gl_cv_func_linkat_follow="need runtime check"]) + rm -rf conftest.f1 conftest.f2]) + AC_CACHE_CHECK([whether linkat handles trailing slash correctly], + [gl_cv_func_linkat_slash], + [rm -rf conftest.a conftest.b conftest.c conftest.d + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #include + #include + #include + ]], + [[int fd; + int err; + int ret; + /* Create a regular file. */ + fd = open ("conftest.a", O_CREAT | O_EXCL | O_WRONLY, 0600); + if (fd < 0) + return 1; + if (write (fd, "hello", 5) < 5) + return 2; + if (close (fd) < 0) + return 3; + /* Test whether hard links are supported on the current + device. */ + if (linkat (AT_FDCWD, "conftest.a", AT_FDCWD, "conftest.b", + AT_SYMLINK_FOLLOW) < 0) + return 0; + /* Test whether a trailing "/" is treated like "/.". */ + if (linkat (AT_FDCWD, "conftest.a/", AT_FDCWD, "conftest.c", + AT_SYMLINK_FOLLOW) == 0) + return 4; + if (linkat (AT_FDCWD, "conftest.a", AT_FDCWD, "conftest.d/", + AT_SYMLINK_FOLLOW) == 0) + return 5; + return 0; + ]])], + [gl_cv_func_linkat_slash=yes], + [gl_cv_func_linkat_slash=no], + [# Guess yes on glibc systems, no otherwise. + case "$host_os" in + *-gnu*) gl_cv_func_linkat_slash="guessing yes";; + *) gl_cv_func_linkat_slash="guessing no";; + esac + ]) + rm -rf conftest.a conftest.b conftest.c conftest.d]) + case "$gl_cv_func_linkat_slash" in + *yes) gl_linkat_slash_bug=0 ;; + *) gl_linkat_slash_bug=1 ;; + esac + if test "$gl_cv_func_linkat_follow" != yes \ + || test $gl_linkat_slash_bug = 1; then + REPLACE_LINKAT=1 + AC_LIBOBJ([linkat]) + AC_DEFINE_UNQUOTED([LINKAT_TRAILING_SLASH_BUG], [$gl_linkat_slash_bug], + [Define to 1 if linkat fails to recognize a trailing slash.]) + fi + fi +]) diff --git a/m4/locale-fr.m4 b/m4/locale-fr.m4 index 001f539..e353432 100644 --- a/m4/locale-fr.m4 +++ b/m4/locale-fr.m4 @@ -1,4 +1,4 @@ -# locale-fr.m4 serial 11 +# locale-fr.m4 serial 12 dnl Copyright (C) 2003, 2005-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -31,11 +31,14 @@ int main () { is empty, and the behaviour of Tcl 8.4 in this locale is not useful. On OpenBSD 4.0, when an unsupported locale is specified, setlocale() succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ + some unit tests fail. + On MirBSD 10, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "UTF-8". */ #if HAVE_LANGINFO_CODESET { const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 + || strcmp (cs, "UTF-8") == 0) return 1; } #endif diff --git a/m4/locale-ja.m4 b/m4/locale-ja.m4 index 0eedaf1..3168400 100644 --- a/m4/locale-ja.m4 +++ b/m4/locale-ja.m4 @@ -1,4 +1,4 @@ -# locale-ja.m4 serial 7 +# locale-ja.m4 serial 8 dnl Copyright (C) 2003, 2005-2010 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,11 +33,14 @@ int main () is empty, and the behaviour of Tcl 8.4 in this locale is not useful. On OpenBSD 4.0, when an unsupported locale is specified, setlocale() succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ + some unit tests fail. + On MirBSD 10, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "UTF-8". */ #if HAVE_LANGINFO_CODESET { const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 + || strcmp (cs, "UTF-8") == 0) return 1; } #endif @@ -52,7 +55,7 @@ int main () if (MB_CUR_MAX == 1) return 1; /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding. */ + This excludes the UTF-8 encoding (except on MirBSD). */ t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; for (p = buf; *p != '\0'; p++) diff --git a/m4/locale-zh.m4 b/m4/locale-zh.m4 index 777fd14..be176c1 100644 --- a/m4/locale-zh.m4 +++ b/m4/locale-zh.m4 @@ -1,4 +1,4 @@ -# locale-zh.m4 serial 6 +# locale-zh.m4 serial 7 dnl Copyright (C) 2003, 2005-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -34,11 +34,14 @@ int main () is empty, and the behaviour of Tcl 8.4 in this locale is not useful. On OpenBSD 4.0, when an unsupported locale is specified, setlocale() succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ + some unit tests fail. + On MirBSD 10, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "UTF-8". */ #if HAVE_LANGINFO_CODESET { const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 + || strcmp (cs, "UTF-8") == 0) return 1; } #endif @@ -49,7 +52,7 @@ int main () if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; #endif /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding. */ + This excludes the UTF-8 encoding (except on MirBSD). */ t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; for (p = buf; *p != '\0'; p++) diff --git a/m4/lseek.m4 b/m4/lseek.m4 index 9bf4dc2..b0612c7 100644 --- a/m4/lseek.m4 +++ b/m4/lseek.m4 @@ -1,4 +1,4 @@ -# lseek.m4 serial 5 +# lseek.m4 serial 6 dnl Copyright (C) 2007, 2009, 2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -10,15 +10,13 @@ AC_DEFUN([gl_FUNC_LSEEK], AC_REQUIRE([AC_PROG_CC]) AC_CACHE_CHECK([whether lseek detects pipes], [gl_cv_func_lseek_pipe], [if test $cross_compiling = no; then - AC_LINK_IFELSE([ + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include /* for off_t */ #include /* for SEEK_CUR */ -#include -int main () -{ +#include ]], [[ /* Exit with success only if stdin is seekable. */ return lseek (0, (off_t)0, SEEK_CUR) < 0; -}], +]])], [if test -s conftest$ac_exeext \ && ./conftest$ac_exeext < conftest.$ac_ext \ && test 1 = "`echo hi \ @@ -29,11 +27,11 @@ int main () fi], [gl_cv_func_lseek_pipe=no]) else - AC_COMPILE_IFELSE([ + AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ #if ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) || defined __BEOS__ /* mingw and BeOS mistakenly return 0 when trying to seek on pipes. */ Choke me. -#endif], +#endif]])], [gl_cv_func_lseek_pipe=yes], [gl_cv_func_lseek_pipe=no]) fi]) if test $gl_cv_func_lseek_pipe = no; then diff --git a/m4/lstat.m4 b/m4/lstat.m4 index 5dbd16e..236af54 100644 --- a/m4/lstat.m4 +++ b/m4/lstat.m4 @@ -1,4 +1,4 @@ -# serial 20 +# serial 21 # Copyright (C) 1997-2001, 2003-2010 Free Software Foundation, Inc. # @@ -26,3 +26,44 @@ AC_DEFUN([gl_FUNC_LSTAT], HAVE_LSTAT=0 fi ]) + +# Redefine AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK, because it is no longer +# maintained in Autoconf. +AC_DEFUN([AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK], +[ + AC_CACHE_CHECK([whether lstat correctly handles trailing slash], + [ac_cv_func_lstat_dereferences_slashed_symlink], + [rm -f conftest.sym conftest.file + echo >conftest.file + if test "$as_ln_s" = "ln -s" && ln -s conftest.file conftest.sym; then + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [AC_INCLUDES_DEFAULT], + [[struct stat sbuf; + /* Linux will dereference the symlink and fail, as required by + POSIX. That is better in the sense that it means we will not + have to compile and use the lstat wrapper. */ + return lstat ("conftest.sym/", &sbuf) == 0; + ]])], + [ac_cv_func_lstat_dereferences_slashed_symlink=yes], + [ac_cv_func_lstat_dereferences_slashed_symlink=no], + [# When cross-compiling, be pessimistic so we will end up using the + # replacement version of lstat that checks for trailing slashes and + # calls lstat a second time when necessary. + ac_cv_func_lstat_dereferences_slashed_symlink=no + ]) + else + # If the 'ln -s' command failed, then we probably don't even + # have an lstat function. + ac_cv_func_lstat_dereferences_slashed_symlink=no + fi + rm -f conftest.sym conftest.file + ]) + test $ac_cv_func_lstat_dereferences_slashed_symlink = yes && + AC_DEFINE_UNQUOTED([LSTAT_FOLLOWS_SLASHED_SYMLINK], [1], + [Define to 1 if `lstat' dereferences a symlink specified + with a trailing slash.]) + if test "x$ac_cv_func_lstat_dereferences_slashed_symlink" = xno; then + AC_LIBOBJ([lstat]) + fi +]) diff --git a/m4/malloc.m4 b/m4/malloc.m4 index 910ac92..7a74925 100644 --- a/m4/malloc.m4 +++ b/m4/malloc.m4 @@ -1,25 +1,40 @@ -# malloc.m4 serial 9 +# malloc.m4 serial 12 dnl Copyright (C) 2007, 2009, 2010 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. +# gl_FUNC_MALLOC_GNU +# ------------------ +# Test whether 'malloc (0)' is handled like in GNU libc, and replace malloc if +# it is not. +AC_DEFUN([gl_FUNC_MALLOC_GNU], +[ + AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) + dnl _AC_FUNC_MALLOC_IF is defined in Autoconf. + _AC_FUNC_MALLOC_IF( + [AC_DEFINE([HAVE_MALLOC_GNU], [1], + [Define to 1 if your system has a GNU libc compatible 'malloc' + function, and to 0 otherwise.])], + [AC_DEFINE([HAVE_MALLOC_GNU], [0]) + gl_REPLACE_MALLOC + ]) +]) + # gl_FUNC_MALLOC_POSIX # -------------------- # Test whether 'malloc' is POSIX compliant (sets errno to ENOMEM when it # fails), and replace malloc if it is not. AC_DEFUN([gl_FUNC_MALLOC_POSIX], [ + AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_CHECK_MALLOC_POSIX]) if test $gl_cv_func_malloc_posix = yes; then - HAVE_MALLOC_POSIX=1 AC_DEFINE([HAVE_MALLOC_POSIX], [1], [Define if the 'malloc' function is POSIX compliant.]) else - AC_LIBOBJ([malloc]) - HAVE_MALLOC_POSIX=0 + gl_REPLACE_MALLOC fi - AC_SUBST([HAVE_MALLOC_POSIX]) ]) # Test whether malloc, realloc, calloc are POSIX compliant, @@ -32,10 +47,20 @@ AC_DEFUN([gl_CHECK_MALLOC_POSIX], dnl It is too dangerous to try to allocate a large amount of memory: dnl some systems go to their knees when you do that. So assume that dnl all Unix implementations of the function are POSIX compliant. - AC_TRY_COMPILE([], - [#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ - choke me - #endif - ], [gl_cv_func_malloc_posix=yes], [gl_cv_func_malloc_posix=no]) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[]], + [[#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ + choke me + #endif + ]])], + [gl_cv_func_malloc_posix=yes], + [gl_cv_func_malloc_posix=no]) ]) ]) + +AC_DEFUN([gl_REPLACE_MALLOC], +[ + AC_LIBOBJ([malloc]) + REPLACE_MALLOC=1 +]) diff --git a/m4/mbrtowc.m4 b/m4/mbrtowc.m4 index 9ec93f5..28b9c43 100644 --- a/m4/mbrtowc.m4 +++ b/m4/mbrtowc.m4 @@ -1,4 +1,4 @@ -# mbrtowc.m4 serial 16 +# mbrtowc.m4 serial 18 dnl Copyright (C) 2001-2002, 2004-2005, 2008-2010 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation @@ -11,38 +11,39 @@ AC_DEFUN([gl_FUNC_MBRTOWC], AC_REQUIRE([AC_TYPE_MBSTATE_T]) gl_MBSTATE_T_BROKEN - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBRTOWC=1 - fi + AC_CHECK_FUNCS_ONCE([mbrtowc]) if test $ac_cv_func_mbrtowc = no; then HAVE_MBRTOWC=0 - fi - if test $HAVE_MBRTOWC != 0 && test $REPLACE_MBRTOWC != 1; then - gl_MBRTOWC_NULL_ARG - gl_MBRTOWC_RETVAL - gl_MBRTOWC_NUL_RETVAL - case "$gl_cv_func_mbrtowc_null_arg" in - *yes) ;; - *) AC_DEFINE([MBRTOWC_NULL_ARG_BUG], [1], - [Define if the mbrtowc function has the NULL string argument bug.]) - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_retval" in - *yes) ;; - *) AC_DEFINE([MBRTOWC_RETVAL_BUG], [1], - [Define if the mbrtowc function returns a wrong return value.]) - REPLACE_MBRTOWC=1 - ;; - esac - case "$gl_cv_func_mbrtowc_nul_retval" in - *yes) ;; - *) AC_DEFINE([MBRTOWC_NUL_RETVAL_BUG], [1], - [Define if the mbrtowc function does not return 0 for a NUL character.]) - REPLACE_MBRTOWC=1 - ;; - esac + else + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_MBRTOWC=1 + else + gl_MBRTOWC_NULL_ARG + gl_MBRTOWC_RETVAL + gl_MBRTOWC_NUL_RETVAL + case "$gl_cv_func_mbrtowc_null_arg" in + *yes) ;; + *) AC_DEFINE([MBRTOWC_NULL_ARG_BUG], [1], + [Define if the mbrtowc function has the NULL string argument bug.]) + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_retval" in + *yes) ;; + *) AC_DEFINE([MBRTOWC_RETVAL_BUG], [1], + [Define if the mbrtowc function returns a wrong return value.]) + REPLACE_MBRTOWC=1 + ;; + esac + case "$gl_cv_func_mbrtowc_nul_retval" in + *yes) ;; + *) AC_DEFINE([MBRTOWC_NUL_RETVAL_BUG], [1], + [Define if the mbrtowc function does not return 0 for a NUL character.]) + REPLACE_MBRTOWC=1 + ;; + esac + fi fi if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then gl_REPLACE_WCHAR_H @@ -100,14 +101,15 @@ AC_DEFUN([gl_MBRTOWC_INCOMPLETE_STATE], dnl is present. changequote(,)dnl case "$host_os" in - # Guess no on AIX and OSF/1. - osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; + # Guess no on AIX and OSF/1. + aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; esac changequote([,])dnl if test $LOCALE_JA != none; then - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include #include @@ -125,7 +127,7 @@ int main () return 1; } return 0; -}], +}]])], [gl_cv_func_mbrtowc_incomplete_state=yes], [gl_cv_func_mbrtowc_incomplete_state=no], [:]) @@ -155,7 +157,8 @@ changequote(,)dnl esac changequote([,])dnl if test $LOCALE_ZH_CN != none; then - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include #include @@ -177,7 +180,7 @@ int main () return 1; } return 0; -}], +}]])], [gl_cv_func_mbrtowc_sanitycheck=yes], [gl_cv_func_mbrtowc_sanitycheck=no], [:]) @@ -207,7 +210,8 @@ changequote(,)dnl esac changequote([,])dnl if test $LOCALE_FR_UTF8 != none; then - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include #include @@ -227,7 +231,10 @@ int main () return 1; } return 0; -}], [gl_cv_func_mbrtowc_null_arg=yes], [gl_cv_func_mbrtowc_null_arg=no], [:]) +}]])], + [gl_cv_func_mbrtowc_null_arg=yes], + [gl_cv_func_mbrtowc_null_arg=no], + [:]) fi ]) ]) @@ -257,7 +264,8 @@ changequote(,)dnl esac changequote([,])dnl if test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none; then - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include #include @@ -294,7 +302,7 @@ int main () } } return 0; -}], +}]])], [gl_cv_func_mbrtowc_retval=yes], [gl_cv_func_mbrtowc_retval=no], [:]) @@ -324,7 +332,8 @@ changequote(,)dnl esac changequote([,])dnl if test $LOCALE_ZH_CN != none; then - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include #include @@ -341,7 +350,7 @@ int main () return 1; } return 0; -}], +}]])], [gl_cv_func_mbrtowc_nul_retval=yes], [gl_cv_func_mbrtowc_nul_retval=no], [:]) diff --git a/m4/mbsinit.m4 b/m4/mbsinit.m4 index 13907a5..46c106f 100644 --- a/m4/mbsinit.m4 +++ b/m4/mbsinit.m4 @@ -1,5 +1,5 @@ -# mbsinit.m4 serial 3 -dnl Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc. +# mbsinit.m4 serial 4 +dnl Copyright (C) 2008, 2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -10,12 +10,14 @@ AC_DEFUN([gl_FUNC_MBSINIT], AC_REQUIRE([AC_TYPE_MBSTATE_T]) gl_MBSTATE_T_BROKEN - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBSINIT=1 - fi + AC_CHECK_FUNCS_ONCE([mbsinit]) if test $ac_cv_func_mbsinit = no; then HAVE_MBSINIT=0 + else + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_MBSINIT=1 + fi fi if test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1; then gl_REPLACE_WCHAR_H diff --git a/m4/mbsrtowcs.m4 b/m4/mbsrtowcs.m4 index 846a293..e854337 100644 --- a/m4/mbsrtowcs.m4 +++ b/m4/mbsrtowcs.m4 @@ -1,4 +1,4 @@ -# mbsrtowcs.m4 serial 5 +# mbsrtowcs.m4 serial 7 dnl Copyright (C) 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -10,19 +10,20 @@ AC_DEFUN([gl_FUNC_MBSRTOWCS], AC_REQUIRE([AC_TYPE_MBSTATE_T]) gl_MBSTATE_T_BROKEN - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_MBSRTOWCS=1 - fi + AC_CHECK_FUNCS_ONCE([mbsrtowcs]) if test $ac_cv_func_mbsrtowcs = no; then HAVE_MBSRTOWCS=0 - fi - if test $HAVE_MBSRTOWCS != 0 && test $REPLACE_MBSRTOWCS != 1; then - gl_MBSRTOWCS_WORKS - case "$gl_cv_func_mbsrtowcs_works" in - *yes) ;; - *) REPLACE_MBSRTOWCS=1 ;; - esac + else + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_MBSRTOWCS=1 + else + gl_MBSRTOWCS_WORKS + case "$gl_cv_func_mbsrtowcs_works" in + *yes) ;; + *) REPLACE_MBSRTOWCS=1 ;; + esac + fi fi if test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1; then gl_REPLACE_WCHAR_H @@ -56,7 +57,8 @@ changequote(,)dnl esac changequote([,])dnl if test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include #include @@ -107,7 +109,7 @@ int main () } } return 0; -}], +}]])], [gl_cv_func_mbsrtowcs_works=yes], [gl_cv_func_mbsrtowcs_works=no], [:]) diff --git a/m4/memchr.m4 b/m4/memchr.m4 index 94596ef..b05a79a 100644 --- a/m4/memchr.m4 +++ b/m4/memchr.m4 @@ -1,4 +1,4 @@ -# memchr.m4 serial 7 +# memchr.m4 serial 9 dnl Copyright (C) 2002-2004, 2009-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -13,12 +13,7 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR], dnl These days, we assume memchr is present. But just in case... AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) - AC_REPLACE_FUNCS([memchr]) - if test $ac_cv_func_memchr = no; then - gl_PREREQ_MEMCHR - REPLACE_MEMCHR=1 - fi - + AC_CHECK_FUNCS_ONCE([memchr]) if test $ac_cv_func_memchr = yes; then # Detect platform-specific bugs in some versions of glibc: # memchr should not dereference anything with length 0 @@ -67,16 +62,22 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR], strcpy (fence - 9, "12345678"); if (memchr (fence - 9, 0, 79) != fence - 1) return 2; + if (memchr (fence - 1, 0, 3) != fence - 1) + return 3; } return 0; ]])], [gl_cv_func_memchr_works=yes], [gl_cv_func_memchr_works=no], [dnl Be pessimistic for now. gl_cv_func_memchr_works="guessing no"])]) if test "$gl_cv_func_memchr_works" != yes; then - gl_PREREQ_MEMCHR REPLACE_MEMCHR=1 - AC_LIBOBJ([memchr]) fi + else + HAVE_MEMCHR=0 + fi + if test $HAVE_MEMCHR = 0 || test $REPLACE_MEMCHR = 1; then + AC_LIBOBJ([memchr]) + gl_PREREQ_MEMCHR fi ]) diff --git a/m4/mkfifo.m4 b/m4/mkfifo.m4 new file mode 100644 index 0000000..8d1f634 --- /dev/null +++ b/m4/mkfifo.m4 @@ -0,0 +1,45 @@ +# serial 1 +# See if we need to provide mkfifo replacement. + +dnl Copyright (C) 2009, 2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_MKFIFO], +[ + AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) + AC_CHECK_FUNCS_ONCE([mkfifo]) + if test $ac_cv_func_mkfifo = no; then + HAVE_MKFIFO=0 + AC_LIBOBJ([mkfifo]) + else + dnl Check for Solaris 9 and FreeBSD bug with trailing slash. + AC_CHECK_FUNCS_ONCE([lstat]) + AC_CACHE_CHECK([whether mkfifo rejects trailing slashes], + [gl_cv_func_mkfifo_works], + [# Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.tmp conftest.lnk + fi + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include +]], [[if (!mkfifo ("conftest.tmp/", 0600)) return 1; +#if HAVE_LSTAT + if (!mkfifo ("conftest.lnk/", 0600)) return 2; +#endif + ]])], + [gl_cv_func_mkfifo_works=yes], [gl_cv_func_mkfifo_works=no], + [gl_cv_func_mkfifo_works="guessing no"]) + rm -f conftest.tmp conftest.lnk]) + if test "$gl_cv_func_mkfifo_works" != yes; then + AC_DEFINE([MKFIFO_TRAILING_SLASH_BUG], [1], [Define to 1 if mkfifo + does not reject trailing slash]) + REPLACE_MKFIFO=1 + AC_LIBOBJ([mkfifo]) + fi + fi +]) diff --git a/m4/mkfifoat.m4 b/m4/mkfifoat.m4 new file mode 100644 index 0000000..0b373bb --- /dev/null +++ b/m4/mkfifoat.m4 @@ -0,0 +1,24 @@ +# serial 2 +# See if we need to provide mkfifoat/mknodat replacement. + +dnl Copyright (C) 2009-2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_MKFIFOAT], +[ + AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) + AC_REQUIRE([gl_FUNC_OPENAT]) + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_CHECK_FUNCS_ONCE([mkfifoat mknodat]) + if test $ac_cv_func_mkfifoat = no; then + # No known system has mkfifoat but not mknodat + HAVE_MKFIFOAT=0 + HAVE_MKNODAT=0 + AC_LIBOBJ([mkfifoat]) + AC_LIBOBJ([mknodat]) + fi +]) diff --git a/m4/mknod.m4 b/m4/mknod.m4 new file mode 100644 index 0000000..c13644b --- /dev/null +++ b/m4/mknod.m4 @@ -0,0 +1,50 @@ +# serial 2 +# See if we need to provide mknod replacement. + +dnl Copyright (C) 2009, 2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_MKNOD], +[ + AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) + AC_REQUIRE([gl_FUNC_MKFIFO]) + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_CHECK_FUNCS_ONCE([mknod]) + if test $ac_cv_func_mknod = no; then + HAVE_MKNOD=0 + AC_LIBOBJ([mknod]) + else + dnl Detect BSD bug, where mknod requires root privileges to create fifo. + AC_CACHE_CHECK([whether mknod can create fifo without root privileges], + [gl_cv_func_mknod_works], + [AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #include +]], [[/* Indeterminate for super-user, assume no. Why are you running + configure as root, anyway? */ + if (!geteuid ()) return 99; + if (mknod ("conftest.fifo", S_IFIFO | 0600, 0)) return 2;]])], + [gl_cv_func_mknod_works=yes], + [if test $? == 99 && test x"$FORCE_UNSAFE_CONFIGURE" = x; then + AC_MSG_FAILURE([you should not run configure as root ]dnl +[(set FORCE_UNSAFE_CONFIGURE=1 in environment to bypass this check)]) + fi + gl_cv_func_mknod_works=no], + [gl_cv_func_mknod_works="guessing no"]) + rm -f conftest.fifo]) + if test "$gl_cv_func_mknod_works" != yes; then + AC_DEFINE([MKNOD_FIFO_BUG], [1], [Define to 1 if mknod cannot create + a fifo without super-user privileges]) + fi + dnl Systems that mishandle trailing slash on mkfifo also goof on mknod. + if test $REPLACE_MKFIFO = 1 || test "$gl_cv_func_mknod_works" != yes; then + REPLACE_MKNOD=1 + AC_LIBOBJ([mknod]) + fi + fi +]) diff --git a/m4/mktime.m4 b/m4/mktime.m4 index 44b8d87..3e3b22d 100644 --- a/m4/mktime.m4 +++ b/m4/mktime.m4 @@ -1,4 +1,4 @@ -# serial 15 +# serial 16 dnl Copyright (C) 2002-2003, 2005-2007, 2009-2010 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation @@ -7,10 +7,7 @@ dnl with or without modifications, as long as this notice is preserved. dnl From Jim Meyering. -# Redefine AC_FUNC_MKTIME, to fix a bug in Autoconf 2.61a and earlier. -# This redefinition can be removed once a new version of Autoconf is assumed. -# The redefinition is taken from -# . +# Redefine AC_FUNC_MKTIME, because it is no longer maintained in Autoconf. # AC_FUNC_MKTIME # -------------- AC_DEFUN([AC_FUNC_MKTIME], diff --git a/m4/open.m4 b/m4/open.m4 index d705b3a..d402da9 100644 --- a/m4/open.m4 +++ b/m4/open.m4 @@ -1,4 +1,4 @@ -# open.m4 serial 8 +# open.m4 serial 9 dnl Copyright (C) 2007-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -22,7 +22,8 @@ AC_DEFUN([gl_FUNC_OPEN], touch conftest.tmp ln -s conftest.tmp conftest.lnk fi - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #if HAVE_UNISTD_H # include @@ -33,14 +34,16 @@ int main () if (open ("conftest.lnk/", O_RDONLY) != -1) return 2; #endif return open ("conftest.sl/", O_CREAT, 0600) >= 0; -}], [gl_cv_func_open_slash=yes], [gl_cv_func_open_slash=no], +}]])], + [gl_cv_func_open_slash=yes], + [gl_cv_func_open_slash=no], [ changequote(,)dnl case "$host_os" in - freebsd*) gl_cv_func_open_slash="guessing no" ;; - solaris2.[0-9]*) gl_cv_func_open_slash="guessing no" ;; - hpux*) gl_cv_func_open_slash="guessing no" ;; - *) gl_cv_func_open_slash="guessing yes" ;; + freebsd* | aix* | hpux* | solaris2.[0-9]*) + gl_cv_func_open_slash="guessing no" ;; + *) + gl_cv_func_open_slash="guessing yes" ;; esac changequote([,])dnl ]) diff --git a/m4/openat.m4 b/m4/openat.m4 index 7975efb..eec426a 100644 --- a/m4/openat.m4 +++ b/m4/openat.m4 @@ -1,4 +1,4 @@ -# serial 27 +# serial 30 # See if we need to use our replacement for Solaris' openat et al functions. dnl Copyright (C) 2004-2010 Free Software Foundation, Inc. @@ -99,18 +99,23 @@ main () # If we have the fchownat function, and it has the bug (in glibc-2.4) # that it dereferences symlinks even with AT_SYMLINK_NOFOLLOW, then # use the replacement function. +# Also if the fchownat function, like chown, has the trailing slash bug, +# use the replacement function. # Also use the replacement function if fchownat is simply not available. AC_DEFUN([gl_FUNC_FCHOWNAT], [ AC_REQUIRE([gl_FUNC_CHOWN]) AC_CHECK_FUNC([fchownat], - [gl_FUNC_FCHOWNAT_DEREF_BUG([REPLACE_FCHOWNAT=1 - AC_DEFINE([FCHOWNAT_NOFOLLOW_BUG], [1], [Define to 1 if your - platform has fchownat, but it cannot perform lchown tasks.])])], + [gl_FUNC_FCHOWNAT_DEREF_BUG( + [REPLACE_FCHOWNAT=1 + AC_DEFINE([FCHOWNAT_NOFOLLOW_BUG], [1], + [Define to 1 if your platform has fchownat, but it cannot + perform lchown tasks.]) + ]) + if test $REPLACE_CHOWN = 1; then + REPLACE_FCHOWNAT=1 + fi], [HAVE_FCHOWNAT=0]) - if test $REPLACE_CHOWN = 1; then - REPLACE_FCHOWNAT=1 - fi if test $HAVE_FCHOWNAT = 0 || test $REPLACE_FCHOWNAT = 1; then AC_LIBOBJ([fchownat]) fi diff --git a/m4/getdate.m4 b/m4/parse-datetime.m4 similarity index 92% rename from m4/getdate.m4 rename to m4/parse-datetime.m4 index 5f98229..d781292 100644 --- a/m4/getdate.m4 +++ b/m4/parse-datetime.m4 @@ -1,4 +1,4 @@ -# getdate.m4 serial 16 +# parse-datetime.m4 serial 18 dnl Copyright (C) 2002-2006, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -24,13 +24,13 @@ AC_DEFUN([gl_C_COMPOUND_LITERALS], fi ]) -AC_DEFUN([gl_GETDATE], +AC_DEFUN([gl_PARSE_DATETIME], [ - dnl Prerequisites of lib/getdate.h. + dnl Prerequisites of lib/parse-datetime.h. AC_REQUIRE([AM_STDBOOL_H]) AC_REQUIRE([gl_TIMESPEC]) - dnl Prerequisites of lib/getdate.y. + dnl Prerequisites of lib/parse-datetime.y. AC_REQUIRE([gl_BISON]) AC_REQUIRE([gl_C_COMPOUND_LITERALS]) AC_STRUCT_TIMEZONE diff --git a/m4/po.m4 b/m4/po.m4 index 960efe1..47f36a4 100644 --- a/m4/po.m4 +++ b/m4/po.m4 @@ -29,7 +29,7 @@ AC_DEFUN([AM_PO_SUBDIRS], dnl Release version of the gettext macros. This is used to ensure that dnl the gettext macros and po/Makefile.in.in are in sync. - AC_SUBST([GETTEXT_MACRO_VERSION], [0.17]) + AC_SUBST([GETTEXT_MACRO_VERSION], [0.18]) dnl Perform the following tests also if --disable-nls has been given, dnl because they are needed for "make dist" to work. diff --git a/m4/printf.m4 b/m4/printf.m4 index ebca536..e850862 100644 --- a/m4/printf.m4 +++ b/m4/printf.m4 @@ -1,4 +1,4 @@ -# printf.m4 serial 33 +# printf.m4 serial 35 dnl Copyright (C) 2003, 2007-2010 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,7 +17,8 @@ AC_DEFUN([gl_PRINTF_SIZES_C99], AC_CACHE_CHECK([whether printf supports size specifiers as in C99], [gl_cv_func_printf_sizes_c99], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include #include @@ -50,34 +51,36 @@ int main () || strcmp (buf, "1.5 33") != 0) return 1; return 0; -}], [gl_cv_func_printf_sizes_c99=yes], [gl_cv_func_printf_sizes_c99=no], - [ +}]])], + [gl_cv_func_printf_sizes_c99=yes], + [gl_cv_func_printf_sizes_c99=no], + [ changequote(,)dnl - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) 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";; - # Guess yes on MacOS X >= 10.3. - darwin[1-6].*) gl_cv_func_printf_sizes_c99="guessing no";; - darwin*) gl_cv_func_printf_sizes_c99="guessing yes";; - # Guess yes on OpenBSD >= 3.9. - openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) - gl_cv_func_printf_sizes_c99="guessing no";; - openbsd*) gl_cv_func_printf_sizes_c99="guessing yes";; - # Guess yes on Solaris >= 2.10. - solaris2.[0-9]*) gl_cv_func_printf_sizes_c99="guessing no";; - solaris*) gl_cv_func_printf_sizes_c99="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_printf_sizes_c99="guessing no";; - netbsd*) gl_cv_func_printf_sizes_c99="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_printf_sizes_c99="guessing no";; - esac + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) 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";; + # Guess yes on MacOS X >= 10.3. + darwin[1-6].*) gl_cv_func_printf_sizes_c99="guessing no";; + darwin*) gl_cv_func_printf_sizes_c99="guessing yes";; + # Guess yes on OpenBSD >= 3.9. + openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) + gl_cv_func_printf_sizes_c99="guessing no";; + openbsd*) gl_cv_func_printf_sizes_c99="guessing yes";; + # Guess yes on Solaris >= 2.10. + solaris2.[0-9]*) gl_cv_func_printf_sizes_c99="guessing no";; + solaris*) gl_cv_func_printf_sizes_c99="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_printf_sizes_c99="guessing no";; + netbsd*) gl_cv_func_printf_sizes_c99="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_printf_sizes_c99="guessing no";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -92,7 +95,8 @@ AC_DEFUN([gl_PRINTF_LONG_DOUBLE], AC_CACHE_CHECK([whether printf supports 'long double' arguments], [gl_cv_func_printf_long_double], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char buf[10000]; @@ -111,16 +115,18 @@ int main () || strcmp (buf, "1.75 33") != 0) return 1; return 0; -}], [gl_cv_func_printf_long_double=yes], [gl_cv_func_printf_long_double=no], - [ +}]])], + [gl_cv_func_printf_long_double=yes], + [gl_cv_func_printf_long_double=no], + [ changequote(,)dnl - case "$host_os" in - beos*) gl_cv_func_printf_long_double="guessing no";; - mingw* | pw*) gl_cv_func_printf_long_double="guessing no";; - *) gl_cv_func_printf_long_double="guessing yes";; - esac + case "$host_os" in + beos*) gl_cv_func_printf_long_double="guessing no";; + mingw* | pw*) gl_cv_func_printf_long_double="guessing no";; + *) gl_cv_func_printf_long_double="guessing yes";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -136,7 +142,8 @@ AC_DEFUN([gl_PRINTF_INFINITE], AC_CACHE_CHECK([whether printf supports infinite 'double' arguments], [gl_cv_func_printf_infinite], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static int @@ -201,32 +208,34 @@ int main () || strcmp (buf, "-0") != 0) return 1; return 0; -}], [gl_cv_func_printf_infinite=yes], [gl_cv_func_printf_infinite=no], - [ +}]])], + [gl_cv_func_printf_infinite=yes], + [gl_cv_func_printf_infinite=no], + [ changequote(,)dnl - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) 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";; - # Guess yes on MacOS X >= 10.3. - darwin[1-6].*) gl_cv_func_printf_infinite="guessing no";; - darwin*) gl_cv_func_printf_infinite="guessing yes";; - # Guess yes on HP-UX >= 11. - hpux[7-9]* | hpux10*) gl_cv_func_printf_infinite="guessing no";; - hpux*) gl_cv_func_printf_infinite="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_printf_infinite="guessing no";; - netbsd*) gl_cv_func_printf_infinite="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_printf_infinite="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_printf_infinite="guessing no";; - esac + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) 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";; + # Guess yes on MacOS X >= 10.3. + darwin[1-6].*) gl_cv_func_printf_infinite="guessing no";; + darwin*) gl_cv_func_printf_infinite="guessing yes";; + # Guess yes on HP-UX >= 11. + hpux[7-9]* | hpux10*) gl_cv_func_printf_infinite="guessing no";; + hpux*) gl_cv_func_printf_infinite="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_printf_infinite="guessing no";; + netbsd*) gl_cv_func_printf_infinite="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_printf_infinite="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_printf_infinite="guessing no";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -252,7 +261,8 @@ AC_DEFUN([gl_PRINTF_INFINITE_LONG_DOUBLE], AC_CACHE_CHECK([whether printf supports infinite 'long double' arguments], [gl_cv_func_printf_infinite_long_double], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ ]GL_NOCRASH[ #include #include @@ -414,38 +424,38 @@ int main () } #endif return 0; -}], - [gl_cv_func_printf_infinite_long_double=yes], - [gl_cv_func_printf_infinite_long_double=no], - [ +}]])], + [gl_cv_func_printf_infinite_long_double=yes], + [gl_cv_func_printf_infinite_long_double=no], + [ changequote(,)dnl - case "$host_cpu" in - # Guess no on ia64, x86_64, i386. - ia64 | x86_64 | i*86) gl_cv_func_printf_infinite_long_double="guessing no";; - *) - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) 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";; - # Guess yes on MacOS X >= 10.3. - darwin[1-6].*) gl_cv_func_printf_infinite_long_double="guessing no";; - darwin*) gl_cv_func_printf_infinite_long_double="guessing yes";; - # Guess yes on HP-UX >= 11. - hpux[7-9]* | hpux10*) gl_cv_func_printf_infinite_long_double="guessing no";; - hpux*) gl_cv_func_printf_infinite_long_double="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_printf_infinite_long_double="guessing no";; - netbsd*) gl_cv_func_printf_infinite_long_double="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_printf_infinite_long_double="guessing no";; - esac - ;; - esac + case "$host_cpu" in + # Guess no on ia64, x86_64, i386. + ia64 | x86_64 | i*86) gl_cv_func_printf_infinite_long_double="guessing no";; + *) + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) 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";; + # Guess yes on MacOS X >= 10.3. + darwin[1-6].*) gl_cv_func_printf_infinite_long_double="guessing no";; + darwin*) gl_cv_func_printf_infinite_long_double="guessing yes";; + # Guess yes on HP-UX >= 11. + hpux[7-9]* | hpux10*) gl_cv_func_printf_infinite_long_double="guessing no";; + hpux*) gl_cv_func_printf_infinite_long_double="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_printf_infinite_long_double="guessing no";; + netbsd*) gl_cv_func_printf_infinite_long_double="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_printf_infinite_long_double="guessing no";; + esac + ;; + esac changequote([,])dnl - ]) + ]) ]) ;; *) @@ -466,7 +476,8 @@ AC_DEFUN([gl_PRINTF_DIRECTIVE_A], AC_CACHE_CHECK([whether printf supports the 'a' and 'A' directives], [gl_cv_func_printf_directive_a], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char buf[100]; @@ -512,26 +523,28 @@ int main () && strcmp (buf, "0x8.0p-2") != 0)) return 1; return 0; -}], [gl_cv_func_printf_directive_a=yes], [gl_cv_func_printf_directive_a=no], - [ - case "$host_os" in - # Guess yes on glibc >= 2.5 systems. - *-gnu*) - AC_EGREP_CPP([BZ2908], [ - #include - #ifdef __GNU_LIBRARY__ - #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 5) || (__GLIBC__ > 2) - BZ2908 - #endif - #endif - ], - [gl_cv_func_printf_directive_a="guessing yes"], - [gl_cv_func_printf_directive_a="guessing no"]) - ;; - # If we don't know, assume the worst. - *) gl_cv_func_printf_directive_a="guessing no";; - esac - ]) +}]])], + [gl_cv_func_printf_directive_a=yes], + [gl_cv_func_printf_directive_a=no], + [ + case "$host_os" in + # Guess yes on glibc >= 2.5 systems. + *-gnu*) + AC_EGREP_CPP([BZ2908], [ + #include + #ifdef __GNU_LIBRARY__ + #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 5) || (__GLIBC__ > 2) + BZ2908 + #endif + #endif + ], + [gl_cv_func_printf_directive_a="guessing yes"], + [gl_cv_func_printf_directive_a="guessing no"]) + ;; + # If we don't know, assume the worst. + *) gl_cv_func_printf_directive_a="guessing no";; + esac + ]) ]) ]) @@ -546,7 +559,8 @@ AC_DEFUN([gl_PRINTF_DIRECTIVE_F], AC_CACHE_CHECK([whether printf supports the 'F' directive], [gl_cv_func_printf_directive_f], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char buf[100]; @@ -563,26 +577,28 @@ int main () || strcmp (buf, "1234") != 0) return 1; return 0; -}], [gl_cv_func_printf_directive_f=yes], [gl_cv_func_printf_directive_f=no], - [ +}]])], + [gl_cv_func_printf_directive_f=yes], + [gl_cv_func_printf_directive_f=no], + [ changequote(,)dnl - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) 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";; - # Guess yes on MacOS X >= 10.3. - darwin[1-6].*) gl_cv_func_printf_directive_f="guessing no";; - darwin*) gl_cv_func_printf_directive_f="guessing yes";; - # Guess yes on Solaris >= 2.10. - solaris2.[0-9]*) gl_cv_func_printf_directive_f="guessing no";; - solaris*) gl_cv_func_printf_directive_f="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_printf_directive_f="guessing no";; - esac + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) 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";; + # Guess yes on MacOS X >= 10.3. + darwin[1-6].*) gl_cv_func_printf_directive_f="guessing no";; + darwin*) gl_cv_func_printf_directive_f="guessing yes";; + # Guess yes on Solaris >= 2.10. + solaris2.[0-9]*) gl_cv_func_printf_directive_f="guessing no";; + solaris*) gl_cv_func_printf_directive_f="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_printf_directive_f="guessing no";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -597,7 +613,8 @@ AC_DEFUN([gl_PRINTF_DIRECTIVE_N], AC_CACHE_CHECK([whether printf supports the 'n' directive], [gl_cv_func_printf_directive_n], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char fmtstring[10]; @@ -614,14 +631,16 @@ int main () || count != 4) return 1; return 0; -}], [gl_cv_func_printf_directive_n=yes], [gl_cv_func_printf_directive_n=no], - [ +}]])], + [gl_cv_func_printf_directive_n=yes], + [gl_cv_func_printf_directive_n=no], + [ changequote(,)dnl - case "$host_os" in - *) gl_cv_func_printf_directive_n="guessing yes";; - esac + case "$host_os" in + *) gl_cv_func_printf_directive_n="guessing yes";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -639,7 +658,8 @@ AC_DEFUN([gl_PRINTF_DIRECTIVE_LS], AC_CACHE_CHECK([whether printf supports the 'ls' directive], [gl_cv_func_printf_directive_ls], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ /* Tru64 with Desktop Toolkit C has a bug: must be included before . BSD/OS 4.0.1 has a bug: , and must be @@ -687,19 +707,21 @@ int main () return 1; } return 0; -}], [gl_cv_func_printf_directive_ls=yes], [gl_cv_func_printf_directive_ls=no], - [ +}]])], + [gl_cv_func_printf_directive_ls=yes], + [gl_cv_func_printf_directive_ls=no], + [ changequote(,)dnl - case "$host_os" in - openbsd*) gl_cv_func_printf_directive_ls="guessing no";; - irix*) gl_cv_func_printf_directive_ls="guessing no";; - solaris*) gl_cv_func_printf_directive_ls="guessing no";; - cygwin*) gl_cv_func_printf_directive_ls="guessing no";; - beos* | haiku*) gl_cv_func_printf_directive_ls="guessing no";; - *) gl_cv_func_printf_directive_ls="guessing yes";; - esac + case "$host_os" in + openbsd*) gl_cv_func_printf_directive_ls="guessing no";; + irix*) gl_cv_func_printf_directive_ls="guessing no";; + solaris*) gl_cv_func_printf_directive_ls="guessing no";; + cygwin*) gl_cv_func_printf_directive_ls="guessing no";; + beos* | haiku*) gl_cv_func_printf_directive_ls="guessing no";; + *) gl_cv_func_printf_directive_ls="guessing yes";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -714,7 +736,8 @@ AC_DEFUN([gl_PRINTF_POSITIONS], AC_CACHE_CHECK([whether printf supports POSIX/XSI format strings with positions], [gl_cv_func_printf_positions], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include /* The string "%2$d %1$d", with dollar characters protected from the shell's @@ -725,18 +748,20 @@ int main () { sprintf (buf, format, 33, 55); return (strcmp (buf, "55 33") != 0); -}], [gl_cv_func_printf_positions=yes], [gl_cv_func_printf_positions=no], - [ +}]])], + [gl_cv_func_printf_positions=yes], + [gl_cv_func_printf_positions=no], + [ changequote(,)dnl - case "$host_os" in - netbsd[1-3]* | netbsdelf[1-3]* | netbsdaout[1-3]* | netbsdcoff[1-3]*) - gl_cv_func_printf_positions="guessing no";; - beos*) gl_cv_func_printf_positions="guessing no";; - mingw* | pw*) gl_cv_func_printf_positions="guessing no";; - *) gl_cv_func_printf_positions="guessing yes";; - esac + case "$host_os" in + netbsd[1-3]* | netbsdelf[1-3]* | netbsdaout[1-3]* | netbsdcoff[1-3]*) + gl_cv_func_printf_positions="guessing no";; + beos*) gl_cv_func_printf_positions="guessing no";; + mingw* | pw*) gl_cv_func_printf_positions="guessing no";; + *) gl_cv_func_printf_positions="guessing yes";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -751,7 +776,8 @@ AC_DEFUN([gl_PRINTF_FLAG_GROUPING], AC_CACHE_CHECK([whether printf supports the grouping flag], [gl_cv_func_printf_flag_grouping], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char buf[100]; @@ -761,17 +787,19 @@ int main () || buf[strlen (buf) - 1] != '9') return 1; return 0; -}], [gl_cv_func_printf_flag_grouping=yes], [gl_cv_func_printf_flag_grouping=no], - [ +}]])], + [gl_cv_func_printf_flag_grouping=yes], + [gl_cv_func_printf_flag_grouping=no], + [ changequote(,)dnl - case "$host_os" in - cygwin*) gl_cv_func_printf_flag_grouping="guessing no";; - netbsd*) gl_cv_func_printf_flag_grouping="guessing no";; - mingw* | pw*) gl_cv_func_printf_flag_grouping="guessing no";; - *) gl_cv_func_printf_flag_grouping="guessing yes";; - esac + case "$host_os" in + cygwin*) gl_cv_func_printf_flag_grouping="guessing no";; + netbsd*) gl_cv_func_printf_flag_grouping="guessing no";; + mingw* | pw*) gl_cv_func_printf_flag_grouping="guessing no";; + *) gl_cv_func_printf_flag_grouping="guessing yes";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -787,7 +815,8 @@ AC_DEFUN([gl_PRINTF_FLAG_LEFTADJUST], AC_CACHE_CHECK([whether printf supports the left-adjust flag correctly], [gl_cv_func_printf_flag_leftadjust], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char buf[100]; @@ -798,7 +827,7 @@ int main () || strcmp (buf, "ab c") != 0) return 1; return 0; -}], +}]])], [gl_cv_func_printf_flag_leftadjust=yes], [gl_cv_func_printf_flag_leftadjust=no], [ @@ -828,7 +857,8 @@ AC_DEFUN([gl_PRINTF_FLAG_ZERO], AC_CACHE_CHECK([whether printf supports the zero flag correctly], [gl_cv_func_printf_flag_zero], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char buf[100]; @@ -839,19 +869,21 @@ int main () && strcmp (buf, " infinity") != 0)) return 1; return 0; -}], [gl_cv_func_printf_flag_zero=yes], [gl_cv_func_printf_flag_zero=no], - [ +}]])], + [gl_cv_func_printf_flag_zero=yes], + [gl_cv_func_printf_flag_zero=no], + [ changequote(,)dnl - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_printf_flag_zero="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_printf_flag_zero="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_printf_flag_zero="guessing no";; - esac + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_printf_flag_zero="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_printf_flag_zero="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_printf_flag_zero="guessing no";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -868,7 +900,8 @@ AC_DEFUN([gl_PRINTF_PRECISION], AC_CACHE_CHECK([whether printf supports large precisions], [gl_cv_func_printf_precision], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char buf[5000]; @@ -881,17 +914,19 @@ int main () if (sprintf (buf, "%.4000d %d", 1, 33, 44) < 4000 + 3) return 1; return 0; -}], [gl_cv_func_printf_precision=yes], [gl_cv_func_printf_precision=no], - [ +}]])], + [gl_cv_func_printf_precision=yes], + [gl_cv_func_printf_precision=no], + [ changequote(,)dnl - case "$host_os" in - # Guess no only on native Win32 and BeOS systems. - mingw* | pw*) gl_cv_func_printf_precision="guessing no" ;; - beos*) gl_cv_func_printf_precision="guessing no" ;; - *) gl_cv_func_printf_precision="guessing yes" ;; - esac + case "$host_os" in + # Guess no only on native Win32 and BeOS systems. + mingw* | pw*) gl_cv_func_printf_precision="guessing no" ;; + beos*) gl_cv_func_printf_precision="guessing no" ;; + *) gl_cv_func_printf_precision="guessing yes" ;; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -1031,7 +1066,8 @@ AC_DEFUN([gl_SNPRINTF_TRUNCATION_C99], AC_CACHE_CHECK([whether snprintf truncates the result as in C99], [gl_cv_func_snprintf_truncation_c99], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char buf[100]; @@ -1042,47 +1078,49 @@ int main () if (memcmp (buf, "45\0DEF", 6) != 0) return 1; return 0; -}], [gl_cv_func_snprintf_truncation_c99=yes], [gl_cv_func_snprintf_truncation_c99=no], - [ +}]])], + [gl_cv_func_snprintf_truncation_c99=yes], + [gl_cv_func_snprintf_truncation_c99=no], + [ changequote(,)dnl - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) 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";; - # Guess yes on MacOS X >= 10.3. - darwin[1-6].*) gl_cv_func_snprintf_truncation_c99="guessing no";; - darwin*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on OpenBSD >= 3.9. - openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) - gl_cv_func_snprintf_truncation_c99="guessing no";; - openbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on Solaris >= 2.6. - solaris2.[0-5]*) gl_cv_func_snprintf_truncation_c99="guessing no";; - solaris*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_snprintf_truncation_c99="guessing no";; - aix*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on HP-UX >= 11. - hpux[7-9]* | hpux10*) gl_cv_func_snprintf_truncation_c99="guessing no";; - hpux*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on OSF/1 >= 5. - osf[3-4]*) gl_cv_func_snprintf_truncation_c99="guessing no";; - osf*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_snprintf_truncation_c99="guessing no";; - netbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_snprintf_truncation_c99="guessing no";; - esac + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) 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";; + # Guess yes on MacOS X >= 10.3. + darwin[1-6].*) gl_cv_func_snprintf_truncation_c99="guessing no";; + darwin*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on OpenBSD >= 3.9. + openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) + gl_cv_func_snprintf_truncation_c99="guessing no";; + openbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on Solaris >= 2.6. + solaris2.[0-5]*) gl_cv_func_snprintf_truncation_c99="guessing no";; + solaris*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_snprintf_truncation_c99="guessing no";; + aix*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on HP-UX >= 11. + hpux[7-9]* | hpux10*) gl_cv_func_snprintf_truncation_c99="guessing no";; + hpux*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on IRIX >= 6.5. + irix6.5) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on OSF/1 >= 5. + osf[3-4]*) gl_cv_func_snprintf_truncation_c99="guessing no";; + osf*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_snprintf_truncation_c99="guessing no";; + netbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_snprintf_truncation_c99="guessing no";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -1101,14 +1139,15 @@ dnl } dnl --------------------------------------------------------------------- dnl Result is gl_cv_func_snprintf_retval_c99. -AC_DEFUN([gl_SNPRINTF_RETVAL_C99], +AC_DEFUN_ONCE([gl_SNPRINTF_RETVAL_C99], [ AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles AC_CACHE_CHECK([whether snprintf returns a byte count as in C99], [gl_cv_func_snprintf_retval_c99], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char buf[100]; @@ -1118,39 +1157,41 @@ int main () if (snprintf (buf, 3, "%d %d", 4567, 89) != 7) return 1; return 0; -}], [gl_cv_func_snprintf_retval_c99=yes], [gl_cv_func_snprintf_retval_c99=no], - [ +}]])], + [gl_cv_func_snprintf_retval_c99=yes], + [gl_cv_func_snprintf_retval_c99=no], + [ changequote(,)dnl - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) 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";; - # Guess yes on MacOS X >= 10.3. - darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";; - darwin*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on OpenBSD >= 3.9. - openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) - gl_cv_func_snprintf_retval_c99="guessing no";; - openbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on Solaris >= 2.6. - solaris2.[0-5]*) gl_cv_func_snprintf_retval_c99="guessing no";; - solaris*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_snprintf_retval_c99="guessing no";; - aix*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_snprintf_retval_c99="guessing no";; - netbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_snprintf_retval_c99="guessing no";; - esac + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) 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";; + # Guess yes on MacOS X >= 10.3. + darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";; + darwin*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on OpenBSD >= 3.9. + openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) + gl_cv_func_snprintf_retval_c99="guessing no";; + openbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on Solaris >= 2.6. + solaris2.[0-5]*) gl_cv_func_snprintf_retval_c99="guessing no";; + solaris*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_snprintf_retval_c99="guessing no";; + aix*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_snprintf_retval_c99="guessing no";; + netbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_snprintf_retval_c99="guessing no";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -1165,7 +1206,8 @@ AC_DEFUN([gl_SNPRINTF_DIRECTIVE_N], AC_CACHE_CHECK([whether snprintf fully supports the 'n' directive], [gl_cv_func_snprintf_directive_n], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static char fmtstring[10]; @@ -1181,40 +1223,42 @@ int main () if (count != 6) return 1; return 0; -}], [gl_cv_func_snprintf_directive_n=yes], [gl_cv_func_snprintf_directive_n=no], - [ +}]])], + [gl_cv_func_snprintf_directive_n=yes], + [gl_cv_func_snprintf_directive_n=no], + [ changequote(,)dnl - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) 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";; - # Guess yes on MacOS X >= 10.3. - darwin[1-6].*) gl_cv_func_snprintf_directive_n="guessing no";; - darwin*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on Solaris >= 2.6. - solaris2.[0-5]*) gl_cv_func_snprintf_directive_n="guessing no";; - solaris*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_snprintf_directive_n="guessing no";; - aix*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on OSF/1 >= 5. - osf[3-4]*) gl_cv_func_snprintf_directive_n="guessing no";; - osf*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_snprintf_directive_n="guessing no";; - netbsd*) gl_cv_func_snprintf_directive_n="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_snprintf_directive_n="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_snprintf_directive_n="guessing no";; - esac + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) 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";; + # Guess yes on MacOS X >= 10.3. + darwin[1-6].*) gl_cv_func_snprintf_directive_n="guessing no";; + darwin*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on Solaris >= 2.6. + solaris2.[0-5]*) gl_cv_func_snprintf_directive_n="guessing no";; + solaris*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_snprintf_directive_n="guessing no";; + aix*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on IRIX >= 6.5. + irix6.5) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on OSF/1 >= 5. + osf[3-4]*) gl_cv_func_snprintf_directive_n="guessing no";; + osf*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_snprintf_directive_n="guessing no";; + netbsd*) gl_cv_func_snprintf_directive_n="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_snprintf_directive_n="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_snprintf_directive_n="guessing no";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -1229,17 +1273,18 @@ AC_DEFUN([gl_SNPRINTF_SIZE1], AC_CACHE_CHECK([whether snprintf respects a size of 1], [gl_cv_func_snprintf_size1], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include int main() { static char buf[8] = { 'D', 'E', 'A', 'D', 'B', 'E', 'E', 'F' }; snprintf (buf, 1, "%d", 12345); return buf[1] != 'E'; -}], - [gl_cv_func_snprintf_size1=yes], - [gl_cv_func_snprintf_size1=no], - [gl_cv_func_snprintf_size1="guessing yes"]) +}]])], + [gl_cv_func_snprintf_size1=yes], + [gl_cv_func_snprintf_size1=no], + [gl_cv_func_snprintf_size1="guessing yes"]) ]) ]) @@ -1286,7 +1331,8 @@ AC_DEFUN([gl_VSNPRINTF_ZEROSIZE_C99], AC_CACHE_CHECK([whether vsnprintf respects a zero size as in C99], [gl_cv_func_vsnprintf_zerosize_c99], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include static int my_snprintf (char *buf, int size, const char *format, ...) @@ -1303,43 +1349,43 @@ int main() static char buf[8] = { 'D', 'E', 'A', 'D', 'B', 'E', 'E', 'F' }; my_snprintf (buf, 0, "%d", 12345); return buf[0] != 'D'; -}], - [gl_cv_func_vsnprintf_zerosize_c99=yes], - [gl_cv_func_vsnprintf_zerosize_c99=no], - [ +}]])], + [gl_cv_func_vsnprintf_zerosize_c99=yes], + [gl_cv_func_vsnprintf_zerosize_c99=no], + [ changequote(,)dnl - case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) 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";; - # Guess yes on MacOS X >= 10.3. - darwin[1-6].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - darwin*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on Cygwin. - cygwin*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on Solaris >= 2.6. - solaris2.[0-5]*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - solaris*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - aix*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - netbsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # Guess yes on mingw. - mingw* | pw*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; - # If we don't know, assume the worst. - *) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; - esac + case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) 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";; + # Guess yes on MacOS X >= 10.3. + darwin[1-6].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + darwin*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on Cygwin. + cygwin*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on Solaris >= 2.6. + solaris2.[0-5]*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + solaris*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + aix*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on IRIX >= 6.5. + irix6.5) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + netbsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # Guess yes on mingw. + mingw* | pw*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + # If we don't know, assume the worst. + *) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; + esac changequote([,])dnl - ]) + ]) ]) ]) @@ -1401,7 +1447,7 @@ dnl Cygwin 1.5.19 (2006) # . . # # # . # . # . # # # . dnl Solaris 10 . . # # # . . # . . . # . . . . . . . . dnl Solaris 2.6 ... 9 # . # # # # . # . . . # . . . . . . . . dnl Solaris 2.5.1 # . # # # # . # . . . # . . # # # # # # -dnl AIX 5.2 . . # # # . . . . . . # . . . . . . . . +dnl AIX 5.2, 7.1 . . # # # . . . . . . # . . . . . . . . dnl AIX 4.3.2, 5.1 # . # # # # . . . . . # . . . . . . . . dnl HP-UX 11.31 . . . . # . . . . . . # . . . . # # . . dnl HP-UX 11.{00,11,23} # . . . # # . . . . . # . . . . # # . # diff --git a/m4/priv-set.m4 b/m4/priv-set.m4 index 205b00c..aaa1896 100644 --- a/m4/priv-set.m4 +++ b/m4/priv-set.m4 @@ -1,4 +1,4 @@ -# serial 6 +# serial 7 # Copyright (C) 2009, 2010 Free Software Foundation, Inc. # @@ -12,4 +12,5 @@ AC_DEFUN([gl_PRIV_SET], [ AC_REQUIRE([AC_C_INLINE]) AC_CHECK_FUNCS([getppriv]) + AC_CHECK_HEADERS_ONCE([priv.h]) ]) diff --git a/m4/progtest.m4 b/m4/progtest.m4 index 2d804ac..9ffa5c0 100644 --- a/m4/progtest.m4 +++ b/m4/progtest.m4 @@ -1,4 +1,4 @@ -# progtest.m4 serial 6 (gettext-0.18) +# progtest.m4 serial 7 (gettext-0.18.2) dnl Copyright (C) 1996-2003, 2005, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -27,15 +27,14 @@ AC_DEFUN([AM_PATH_PROG_WITH_TEST], # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh + # 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 # Find out how to test for executable files. Don't use a zero-byte file, diff --git a/m4/readlinkat.m4 b/m4/readlinkat.m4 new file mode 100644 index 0000000..a389749 --- /dev/null +++ b/m4/readlinkat.m4 @@ -0,0 +1,21 @@ +# serial 1 +# See if we need to provide readlinkat replacement. + +dnl Copyright (C) 2009-2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_READLINKAT], +[ + AC_REQUIRE([gl_FUNC_OPENAT]) + AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_CHECK_FUNCS_ONCE([readlinkat]) + if test $ac_cv_func_readlinkat = no; then + HAVE_READLINKAT=0 + AC_LIBOBJ([readlinkat]) + fi +]) diff --git a/m4/realloc.m4 b/m4/realloc.m4 index dc30235..01c1234 100644 --- a/m4/realloc.m4 +++ b/m4/realloc.m4 @@ -1,23 +1,44 @@ -# realloc.m4 serial 9 +# realloc.m4 serial 11 dnl Copyright (C) 2007, 2009, 2010 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. +# gl_FUNC_REALLOC_GNU +# ------------------- +# Test whether 'realloc (0, 0)' is handled like in GNU libc, and replace +# realloc if it is not. +AC_DEFUN([gl_FUNC_REALLOC_GNU], +[ + AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) + dnl _AC_FUNC_REALLOC_IF is defined in Autoconf. + _AC_FUNC_REALLOC_IF( + [AC_DEFINE([HAVE_REALLOC_GNU], [1], + [Define to 1 if your system has a GNU libc compatible 'realloc' + function, and to 0 otherwise.])], + [AC_DEFINE([HAVE_REALLOC_GNU], [0]) + gl_REPLACE_REALLOC + ]) +])# gl_FUNC_REALLOC_GNU + # gl_FUNC_REALLOC_POSIX # --------------------- # Test whether 'realloc' is POSIX compliant (sets errno to ENOMEM when it # fails), and replace realloc if it is not. AC_DEFUN([gl_FUNC_REALLOC_POSIX], [ + AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_CHECK_MALLOC_POSIX]) if test $gl_cv_func_malloc_posix = yes; then - HAVE_REALLOC_POSIX=1 AC_DEFINE([HAVE_REALLOC_POSIX], [1], [Define if the 'realloc' function is POSIX compliant.]) else - AC_LIBOBJ([realloc]) - HAVE_REALLOC_POSIX=0 + gl_REPLACE_REALLOC fi - AC_SUBST([HAVE_REALLOC_POSIX]) +]) + +AC_DEFUN([gl_REPLACE_REALLOC], +[ + AC_LIBOBJ([realloc]) + REPLACE_REALLOC=1 ]) diff --git a/m4/regex.m4 b/m4/regex.m4 index 6bd6b8f..38f1dd7 100644 --- a/m4/regex.m4 +++ b/m4/regex.m4 @@ -1,4 +1,4 @@ -# serial 55 +# serial 56 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, # 2007, 2008, 2009, 2010 Free Software Foundation, Inc. @@ -96,8 +96,9 @@ AC_DEFUN([gl_REGEX], if (!s) return 1; - /* Ensure that [b-a] is diagnosed as invalid. */ - re_set_syntax (RE_SYNTAX_POSIX_EGREP); + /* Ensure that [b-a] is diagnosed as invalid, when + using RE_NO_EMPTY_RANGES. */ + re_set_syntax (RE_SYNTAX_POSIX_EGREP | RE_NO_EMPTY_RANGES); memset (®ex, 0, sizeof regex); s = re_compile_pattern ("a[b-a]", 6, ®ex); if (s == 0) @@ -157,12 +158,17 @@ AC_DEFUN([gl_REGEX], if (! REG_STARTEND) return 1; - /* Reject hosts whose regoff_t values are too narrow. - These include glibc 2.3.5 on hosts with 64-bit ptrdiff_t - and 32-bit int. */ +#if 0 + /* It would be nice to reject hosts whose regoff_t values are too + narrow (including glibc on hosts with 64-bit ptrdiff_t and + 32-bit int), but we should wait until glibc implements this + feature. Otherwise, support for equivalence classes and + multibyte collation symbols would always be broken except + when compiling --without-included-regex. */ if (sizeof (regoff_t) < sizeof (ptrdiff_t) || sizeof (regoff_t) < sizeof (ssize_t)) return 1; +#endif return 0;]])], [gl_cv_func_re_compile_pattern_working=yes], diff --git a/m4/rename.m4 b/m4/rename.m4 new file mode 100644 index 0000000..30daf0e --- /dev/null +++ b/m4/rename.m4 @@ -0,0 +1,158 @@ +# serial 22 + +# Copyright (C) 2001, 2003, 2005-2006, 2009-2010 Free Software Foundation, Inc. +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +dnl From Volker Borchert. +dnl Determine whether rename works for source file names with a trailing slash. +dnl The rename from SunOS 4.1.1_U1 doesn't. +dnl +dnl If it doesn't, then define RENAME_TRAILING_SLASH_BUG and arrange +dnl to compile the wrapper function. +dnl + +AC_DEFUN([gl_FUNC_RENAME], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([gl_STDIO_H_DEFAULTS]) + AC_CHECK_FUNCS_ONCE([lstat]) + + dnl Solaris 10, AIX 7.1 mistakenly allow rename("file","name/"). + dnl NetBSD 1.6 mistakenly forbids rename("dir","name/"). + dnl FreeBSD 7.2 mistakenly allows rename("file","link-to-file/"). + dnl The Solaris bug can be worked around without stripping + dnl trailing slash, while the NetBSD bug requires stripping; + dnl the two conditions can be distinguished by whether hard + dnl links are also broken. + AC_CACHE_CHECK([whether rename honors trailing slash on destination], + [gl_cv_func_rename_slash_dst_works], + [rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.lnk + touch conftest.f && mkdir conftest.d1 || + AC_MSG_ERROR([cannot create temporary files]) + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.f conftest.lnk + fi + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +# include +# include +]], [if (rename ("conftest.f", "conftest.f1/") == 0) return 1; + if (rename ("conftest.d1", "conftest.d2/") != 0) return 2; +#if HAVE_LSTAT + if (rename ("conftest.f", "conftest.lnk/") == 0) return 3; +#endif + ])], + [gl_cv_func_rename_slash_dst_works=yes], + [gl_cv_func_rename_slash_dst_works=no], + dnl When crosscompiling, assume rename is broken. + [gl_cv_func_rename_slash_dst_works="guessing no"]) + rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.lnk + ]) + if test "x$gl_cv_func_rename_slash_dst_works" != xyes; then + AC_LIBOBJ([rename]) + REPLACE_RENAME=1 + AC_DEFINE([RENAME_TRAILING_SLASH_DEST_BUG], [1], + [Define if rename does not correctly handle slashes on the destination + argument, such as on Solaris 10 or NetBSD 1.6.]) + fi + + dnl SunOS 4.1.1_U1 mistakenly forbids rename("dir/","name"). + dnl Solaris 9 mistakenly allows rename("file/","name"). + dnl FreeBSD 7.2 mistakenly allows rename("link-to-file/","name"). + dnl These bugs require stripping trailing slash to avoid corrupting + dnl symlinks with a trailing slash. + AC_CACHE_CHECK([whether rename honors trailing slash on source], + [gl_cv_func_rename_slash_src_works], + [rm -rf conftest.f conftest.d1 conftest.d2 conftest.lnk + touch conftest.f && mkdir conftest.d1 || + AC_MSG_ERROR([cannot create temporary files]) + # Assume that if we have lstat, we can also check symlinks. + if test $ac_cv_func_lstat = yes; then + ln -s conftest.f conftest.lnk + fi + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +# include +# include +]], [if (rename ("conftest.f/", "conftest.d2") == 0) return 1; + if (rename ("conftest.d1/", "conftest.d2") != 0) return 2; +#if HAVE_LSTAT + if (rename ("conftest.lnk/", "conftest.f") == 0) return 3; +#endif + ])], + [gl_cv_func_rename_slash_src_works=yes], + [gl_cv_func_rename_slash_src_works=no], + dnl When crosscompiling, assume rename is broken. + [gl_cv_func_rename_slash_src_works="guessing no"]) + rm -rf conftest.f conftest.d1 conftest.d2 conftest.lnk + ]) + if test "x$gl_cv_func_rename_slash_src_works" != xyes; then + AC_LIBOBJ([rename]) + REPLACE_RENAME=1 + AC_DEFINE([RENAME_TRAILING_SLASH_SOURCE_BUG], [1], + [Define if rename does not correctly handle slashes on the source + argument, such as on Solaris 9 or cygwin 1.5.]) + fi + + dnl NetBSD 1.6 and cygwin 1.5.x mistakenly reduce hard link count + dnl on rename("h1","h2"). + dnl This bug requires stat'ting targets prior to attempting rename. + AC_CACHE_CHECK([whether rename manages hard links correctly], + [gl_cv_func_rename_link_works], + [rm -rf conftest.f conftest.f1 + if touch conftest.f && ln conftest.f conftest.f1 && + set x `ls -i conftest.f conftest.f1` && test "$2" = "$4"; then + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +# include +# include +# include +]], [if (rename ("conftest.f", "conftest.f1")) return 1; + if (unlink ("conftest.f1")) return 2; + if (rename ("conftest.f", "conftest.f")) return 3; + if (rename ("conftest.f1", "conftest.f1") == 0) return 4;])], + [gl_cv_func_rename_link_works=yes], + [gl_cv_func_rename_link_works=no], + dnl When crosscompiling, assume rename is broken. + [gl_cv_func_rename_link_works="guessing no"]) + else + gl_cv_func_rename_link_works="guessing no" + fi + rm -rf conftest.f conftest.f1 + ]) + if test "x$gl_cv_func_rename_link_works" != xyes; then + AC_LIBOBJ([rename]) + REPLACE_RENAME=1 + AC_DEFINE([RENAME_HARD_LINK_BUG], [1], + [Define if rename fails to leave hard links alone, as on NetBSD 1.6 + or Cygwin 1.5.]) + fi + + dnl Cygwin 1.5.x mistakenly allows rename("dir","file"). + dnl mingw mistakenly forbids rename("dir1","dir2"). + dnl These bugs require stripping trailing slash to avoid corrupting + dnl symlinks with a trailing slash. + AC_CACHE_CHECK([whether rename manages existing destinations correctly], + [gl_cv_func_rename_dest_works], + [rm -rf conftest.f conftest.d1 conftest.d2 + touch conftest.f && mkdir conftest.d1 conftest.d2 || + AC_MSG_ERROR([cannot create temporary files]) + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +# include +# include +]], [if (rename ("conftest.d1", "conftest.d2") != 0) return 1; + if (rename ("conftest.d2", "conftest.f") == 0) return 2;])], + [gl_cv_func_rename_dest_works=yes], + [gl_cv_func_rename_dest_works=no], + dnl When crosscompiling, assume rename is broken. + [gl_cv_func_rename_dest_works="guessing no"]) + rm -rf conftest.f conftest.d1 conftest.d2 + ]) + if test "x$gl_cv_func_rename_dest_works" != xyes; then + AC_LIBOBJ([rename]) + REPLACE_RENAME=1 + AC_DEFINE([RENAME_DEST_EXISTS_BUG], [1], + [Define if rename does not work when the destination file exists, + as on Cygwin 1.5 or Windows.]) + fi +]) diff --git a/m4/renameat.m4 b/m4/renameat.m4 new file mode 100644 index 0000000..4d514a1 --- /dev/null +++ b/m4/renameat.m4 @@ -0,0 +1,28 @@ +# serial 2 +# See if we need to provide renameat replacement. + +dnl Copyright (C) 2009-2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_RENAMEAT], +[ + AC_REQUIRE([gl_FUNC_OPENAT]) + AC_REQUIRE([gl_FUNC_RENAME]) + AC_REQUIRE([gl_STDIO_H_DEFAULTS]) + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_CHECK_FUNCS_ONCE([renameat]) + if test $ac_cv_func_renameat = no; then + HAVE_RENAMEAT=0 + AC_LIBOBJ([renameat]) + AC_LIBOBJ([at-func2]) + elif test $REPLACE_RENAME = 1; then + dnl Solaris 9 and 10 have the same bugs in renameat as in rename. + REPLACE_RENAMEAT=1 + AC_LIBOBJ([renameat]) + AC_LIBOBJ([at-func2]) + fi +]) diff --git a/m4/rmdir.m4 b/m4/rmdir.m4 index 8d6bee8..a8a113e 100644 --- a/m4/rmdir.m4 +++ b/m4/rmdir.m4 @@ -1,4 +1,4 @@ -# rmdir.m4 serial 7 +# rmdir.m4 serial 8 dnl Copyright (C) 2002, 2005, 2009-2010 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,37 +8,22 @@ AC_DEFUN([gl_FUNC_RMDIR], [ AC_REQUIRE([gl_AC_DOS]) AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) - dnl FIXME: simplify this module in 2010 if no one reports a missing rmdir - AC_REPLACE_FUNCS([rmdir]) - if test $ac_cv_func_rmdir = no; then - REPLACE_RMDIR=1 - # If someone lacks rmdir, make configure fail, and request - # a bug report to inform us about it. - if test x"$SKIP_RMDIR_CHECK" != xyes; then - AC_MSG_FAILURE([Your system lacks the rmdir function. - Please report this, along with the output of "uname -a", to the - bug-coreutils@gnu.org mailing list. To continue past this point, - rerun configure with SKIP_RMDIR_CHECK=yes. - E.g., ./configure SKIP_RMDIR_CHECK=yes]) - fi - else - dnl Detect cygwin 1.5.x bug. - AC_CACHE_CHECK([whether rmdir works], [gl_cv_func_rmdir_works], - [mkdir conftest.dir - touch conftest.file - AC_RUN_IFELSE( - [AC_LANG_PROGRAM( - [[#include - #include - #include + dnl Detect cygwin 1.5.x bug. + AC_CACHE_CHECK([whether rmdir works], [gl_cv_func_rmdir_works], + [mkdir conftest.dir + touch conftest.file + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #include + #include ]], [[return !rmdir ("conftest.file/") || errno != ENOTDIR || !rmdir ("conftest.dir/./");]])], - [gl_cv_func_rmdir_works=yes], [gl_cv_func_rmdir_works=no], - [gl_cv_func_rmdir_works="guessing no"]) - rm -rf conftest.dir conftest.file]) - if test x"$gl_cv_func_rmdir_works" != xyes; then - REPLACE_RMDIR=1 - AC_LIBOBJ([rmdir]) - fi + [gl_cv_func_rmdir_works=yes], [gl_cv_func_rmdir_works=no], + [gl_cv_func_rmdir_works="guessing no"]) + rm -rf conftest.dir conftest.file]) + if test x"$gl_cv_func_rmdir_works" != xyes; then + REPLACE_RMDIR=1 + AC_LIBOBJ([rmdir]) fi ]) diff --git a/m4/same.m4 b/m4/same.m4 deleted file mode 100644 index 73c82bb..0000000 --- a/m4/same.m4 +++ /dev/null @@ -1,15 +0,0 @@ -#serial 8 -dnl Copyright (C) 2002-2003, 2005-2006, 2009-2010 Free Software Foundation, -dnl Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_SAME], -[ - AC_LIBOBJ([same]) - - dnl Prerequisites of lib/same.c. - AC_REQUIRE([AC_SYS_LONG_FILE_NAMES]) - AC_CHECK_FUNCS_ONCE([pathconf]) -]) diff --git a/m4/setenv.m4 b/m4/setenv.m4 index ae4dd86..de7171e 100644 --- a/m4/setenv.m4 +++ b/m4/setenv.m4 @@ -1,4 +1,4 @@ -# setenv.m4 serial 15 +# setenv.m4 serial 18 dnl Copyright (C) 2001-2004, 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -25,6 +25,7 @@ AC_DEFUN([gl_FUNC_SETENV_SEPARATE], [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ #include #include + #include ]], [[ if (setenv ("", "", 0) != -1) return 1; if (errno != EINVAL) return 2; @@ -52,7 +53,10 @@ AC_DEFUN([gl_FUNC_UNSETENV], else dnl Some BSDs return void, failing to do error checking. AC_CACHE_CHECK([for unsetenv() return type], [gt_cv_func_unsetenv_ret], - [AC_TRY_COMPILE([#include + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include extern #ifdef __cplusplus "C" @@ -62,7 +66,10 @@ int unsetenv (const char *name); #else int unsetenv(); #endif -], , gt_cv_func_unsetenv_ret='int', gt_cv_func_unsetenv_ret='void')]) + ]], + [[]])], + [gt_cv_func_unsetenv_ret='int'], + [gt_cv_func_unsetenv_ret='void'])]) if test $gt_cv_func_unsetenv_ret = 'void'; then AC_DEFINE([VOID_UNSETENV], [1], [Define to 1 if unsetenv returns void instead of int.]) @@ -71,10 +78,12 @@ int unsetenv(); fi dnl Solaris 10 unsetenv does not remove all copies of a name. - AC_CACHE_CHECK([whether unsetenv works on duplicates], + dnl OpenBSD 4.7 unsetenv("") does not fail. + AC_CACHE_CHECK([whether unsetenv obeys POSIX], [gl_cv_func_unsetenv_works], [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ #include + #include ]], [[ char entry[] = "b=2"; if (putenv ((char *) "a=1")) return 1; @@ -82,6 +91,7 @@ int unsetenv(); entry[0] = 'a'; unsetenv ("a"); if (getenv ("a")) return 3; + if (!unsetenv ("") || errno != EINVAL) return 4; ]])], [gl_cv_func_unsetenv_works=yes], [gl_cv_func_unsetenv_works=no], [gl_cv_func_unsetenv_works="guessing no"])]) diff --git a/m4/size_max.m4 b/m4/size_max.m4 index ce992db..f3b1a9d 100644 --- a/m4/size_max.m4 +++ b/m4/size_max.m4 @@ -1,4 +1,4 @@ -# size_max.m4 serial 9 +# size_max.m4 serial 10 dnl Copyright (C) 2003, 2005-2006, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -34,10 +34,14 @@ Found it if test $fits_in_uint = 1; then dnl Even though SIZE_MAX fits in an unsigned int, it must be of type dnl 'unsigned long' if the type 'size_t' is the same as 'unsigned long'. - AC_TRY_COMPILE([#include - extern size_t foo; - extern unsigned long foo; - ], [], [fits_in_uint=0]) + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include + extern size_t foo; + extern unsigned long foo; + ]], + [[]])], + [fits_in_uint=0]) fi dnl We cannot use 'expr' to simplify this expression, because 'expr' dnl works only with 'long' integers in the host environment, while we diff --git a/m4/ssize_t.m4 b/m4/ssize_t.m4 index e0ccee3..e4c160b 100644 --- a/m4/ssize_t.m4 +++ b/m4/ssize_t.m4 @@ -1,5 +1,5 @@ -# ssize_t.m4 serial 4 (gettext-0.15) -dnl Copyright (C) 2001-2003, 2006, 2009-2010 Free Software Foundation, Inc. +# ssize_t.m4 serial 5 (gettext-0.18.2) +dnl Copyright (C) 2001-2003, 2006, 2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -10,9 +10,11 @@ dnl Test whether ssize_t is defined. AC_DEFUN([gt_TYPE_SSIZE_T], [ AC_CACHE_CHECK([for ssize_t], [gt_cv_ssize_t], - [AC_TRY_COMPILE([#include ], - [int x = sizeof (ssize_t *) + sizeof (ssize_t); - return !x;], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[int x = sizeof (ssize_t *) + sizeof (ssize_t); + return !x;]])], [gt_cv_ssize_t=yes], [gt_cv_ssize_t=no])]) if test $gt_cv_ssize_t = no; then AC_DEFINE([ssize_t], [int], diff --git a/m4/stat.m4 b/m4/stat.m4 index acd32d8..75e1d94 100644 --- a/m4/stat.m4 +++ b/m4/stat.m4 @@ -1,4 +1,4 @@ -# serial 4 +# serial 5 # Copyright (C) 2009, 2010 Free Software Foundation, Inc. # @@ -24,7 +24,7 @@ AC_DEFUN([gl_FUNC_STAT], mingw*) gl_cv_func_stat_dir_slash="guessing no";; *) gl_cv_func_stat_dir_slash="guessing yes";; esac])]) - dnl Solaris 9 mistakenly succeeds on stat("file/") + dnl AIX 7.1, Solaris 9 mistakenly succeed on stat("file/") dnl FreeBSD 7.2 mistakenly succeeds on stat("link-to-file/") AC_CACHE_CHECK([whether stat handles trailing slashes on files], [gl_cv_func_stat_file_slash], diff --git a/m4/stdarg.m4 b/m4/stdarg.m4 index 5c87bd8..8a62f2e 100644 --- a/m4/stdarg.m4 +++ b/m4/stdarg.m4 @@ -1,4 +1,4 @@ -# stdarg.m4 serial 3 +# stdarg.m4 serial 4 dnl Copyright (C) 2006, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -13,12 +13,16 @@ AC_DEFUN([gl_STDARG_H], NEXT_STDARG_H=''; AC_SUBST([NEXT_STDARG_H]) AC_MSG_CHECKING([for va_copy]) AC_CACHE_VAL([gl_cv_func_va_copy], [ - AC_TRY_COMPILE([#include ], [ + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[ #ifndef va_copy void (*func) (va_list, va_list) = va_copy; #endif -], - [gl_cv_func_va_copy=yes], [gl_cv_func_va_copy=no])]) + ]])], + [gl_cv_func_va_copy=yes], + [gl_cv_func_va_copy=no])]) AC_MSG_RESULT([$gl_cv_func_va_copy]) if test $gl_cv_func_va_copy = no; then dnl Provide a substitute. @@ -47,12 +51,16 @@ void (*func) (va_list, va_list) = va_copy; dnl Provide a substitute in , either __va_copy or as a simple dnl assignment. gl_CACHE_VAL_SILENT([gl_cv_func___va_copy], [ - AC_TRY_COMPILE([#include ], [ + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[ #ifndef __va_copy error, bail out #endif -], - [gl_cv_func___va_copy=yes], [gl_cv_func___va_copy=no])]) + ]])], + [gl_cv_func___va_copy=yes], + [gl_cv_func___va_copy=no])]) if test $gl_cv_func___va_copy = yes; then AC_DEFINE([va_copy], [__va_copy], [Define as a macro for copying va_list variables.]) diff --git a/m4/stdbool.m4 b/m4/stdbool.m4 index 3d672d7..1efe59e 100644 --- a/m4/stdbool.m4 +++ b/m4/stdbool.m4 @@ -5,6 +5,8 @@ dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. +#serial 3 + # Prepare for substituting if it is not supported. AC_DEFUN([AM_STDBOOL_H], @@ -31,82 +33,68 @@ AC_DEFUN([AM_STDBOOL_H], # AM_STDBOOL_H will be renamed to gl_STDBOOL_H in the future. AC_DEFUN([gl_STDBOOL_H], [AM_STDBOOL_H]) -# This macro is only needed in autoconf <= 2.59. Newer versions of autoconf -# have this macro built-in. +# This version of the macro is needed in autoconf <= 2.67. Autoconf has +# it built in since 2.60, but we want the tweaks from the 2.68 version +# to avoid rejecting xlc and clang due to relying on extensions. AC_DEFUN([AC_HEADER_STDBOOL], [AC_CACHE_CHECK([for stdbool.h that conforms to C99], [ac_cv_header_stdbool_h], - [AC_TRY_COMPILE( - [ - #include - #ifndef bool - "error: bool is not defined" - #endif - #ifndef false - "error: false is not defined" - #endif - #if false - "error: false is not 0" - #endif - #ifndef true - "error: true is not defined" - #endif - #if true != 1 - "error: true is not 1" - #endif - #ifndef __bool_true_false_are_defined - "error: __bool_true_false_are_defined is not defined" - #endif + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ + #include + #ifndef bool + "error: bool is not defined" + #endif + #ifndef false + "error: false is not defined" + #endif + #if false + "error: false is not 0" + #endif + #ifndef true + "error: true is not defined" + #endif + #if true != 1 + "error: true is not 1" + #endif + #ifndef __bool_true_false_are_defined + "error: __bool_true_false_are_defined is not defined" + #endif - struct s { _Bool s: 1; _Bool t; } s; + struct s { _Bool s: 1; _Bool t; } s; - char a[true == 1 ? 1 : -1]; - char b[false == 0 ? 1 : -1]; - char c[__bool_true_false_are_defined == 1 ? 1 : -1]; - char d[(bool) 0.5 == true ? 1 : -1]; - bool e = &s; - char f[(_Bool) 0.0 == false ? 1 : -1]; - char g[true]; - char h[sizeof (_Bool)]; - char i[sizeof s.t]; - enum { j = false, k = true, l = false * true, m = true * 256 }; - _Bool n[m]; - char o[sizeof n == m * sizeof n[0] ? 1 : -1]; - char p[-1 - (_Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; - #if defined __xlc__ || defined __GNUC__ - /* Catch a bug in IBM AIX xlc compiler version 6.0.0.0 - reported by James Lemley on 2005-10-05; see - http://lists.gnu.org/archive/html/bug-coreutils/2005-10/msg00086.html - This test is not quite right, since xlc is allowed to - reject this program, as the initializer for xlcbug is - not one of the forms that C requires support for. - However, doing the test right would require a run-time - test, and that would make cross-compilation harder. - Let us hope that IBM fixes the xlc bug, and also adds - support for this kind of constant expression. In the - meantime, this test will reject xlc, which is OK, since - our stdbool.h substitute should suffice. We also test - this with GCC, where it should work, to detect more - quickly whether someone messes up the test in the - future. */ - char digs[] = "0123456789"; - int xlcbug = 1 / (&(digs + 5)[-2 + (bool) 1] == &digs[4] ? 1 : -1); - #endif - /* Catch a bug in an HP-UX C compiler. See - http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html - http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html - */ - _Bool q = true; - _Bool *pq = &q; - ], - [ - *pq |= q; - *pq |= ! q; - /* Refer to every declared value, to avoid compiler optimizations. */ - return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l - + !m + !n + !o + !p + !q + !pq); - ], + char a[true == 1 ? 1 : -1]; + char b[false == 0 ? 1 : -1]; + char c[__bool_true_false_are_defined == 1 ? 1 : -1]; + char d[(bool) 0.5 == true ? 1 : -1]; + /* See body of main program for 'e'. */ + char f[(_Bool) 0.0 == false ? 1 : -1]; + char g[true]; + char h[sizeof (_Bool)]; + char i[sizeof s.t]; + enum { j = false, k = true, l = false * true, m = true * 256 }; + /* The following fails for + HP aC++/ANSI C B3910B A.05.55 [Dec 04 2003]. */ + _Bool n[m]; + char o[sizeof n == m * sizeof n[0] ? 1 : -1]; + char p[-1 - (_Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; + /* Catch a bug in an HP-UX C compiler. See + http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html + http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html + */ + _Bool q = true; + _Bool *pq = &q; + ]], + [[ + bool e = &s; + *pq |= q; + *pq |= ! q; + /* Refer to every declared value, to avoid compiler optimizations. */ + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + + !m + !n + !o + !p + !q + !pq); + ]])], [ac_cv_header_stdbool_h=yes], [ac_cv_header_stdbool_h=no])]) AC_CHECK_TYPES([_Bool]) diff --git a/m4/stddef_h.m4 b/m4/stddef_h.m4 index c8572de..c3ae569 100644 --- a/m4/stddef_h.m4 +++ b/m4/stddef_h.m4 @@ -1,5 +1,5 @@ dnl A placeholder for POSIX 2008 , for platforms that have issues. -# stddef_h.m4 serial 1 +# stddef_h.m4 serial 2 dnl Copyright (C) 2009, 2010 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,7 @@ AC_DEFUN([gl_STDDEF_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_STDDEF_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) ]) AC_DEFUN([gl_STDDEF_H_DEFAULTS], diff --git a/m4/stdint.m4 b/m4/stdint.m4 index 1cc57e6..c5e813a 100644 --- a/m4/stdint.m4 +++ b/m4/stdint.m4 @@ -1,4 +1,4 @@ -# stdint.m4 serial 34 +# stdint.m4 serial 35 dnl Copyright (C) 2001-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -309,7 +309,7 @@ AC_DEFUN([gl_STDINT_BITSIZEOF], dnl config.h.in, dnl - extra AC_SUBST calls, so that the right substitutions are made. m4_foreach_w([gltype], [$1], - [AH_TEMPLATE([BITSIZEOF_]translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]), + [AH_TEMPLATE([BITSIZEOF_]m4_translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]), [Define to the number of bits in type ']gltype['.])]) for gltype in $1 ; do AC_CACHE_CHECK([for bit size of $gltype], [gl_cv_bitsizeof_${gltype}], @@ -334,7 +334,7 @@ AC_DEFUN([gl_STDINT_BITSIZEOF], eval BITSIZEOF_${GLTYPE}=\$result done m4_foreach_w([gltype], [$1], - [AC_SUBST([BITSIZEOF_]translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]))]) + [AC_SUBST([BITSIZEOF_]m4_translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]))]) ]) dnl gl_CHECK_TYPES_SIGNED(TYPES, INCLUDES) @@ -347,7 +347,7 @@ AC_DEFUN([gl_CHECK_TYPES_SIGNED], dnl config.h.in, dnl - extra AC_SUBST calls, so that the right substitutions are made. m4_foreach_w([gltype], [$1], - [AH_TEMPLATE([HAVE_SIGNED_]translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]), + [AH_TEMPLATE([HAVE_SIGNED_]m4_translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]), [Define to 1 if ']gltype[' is a signed integer type.])]) for gltype in $1 ; do AC_CACHE_CHECK([whether $gltype is signed], [gl_cv_type_${gltype}_signed], @@ -367,7 +367,7 @@ AC_DEFUN([gl_CHECK_TYPES_SIGNED], fi done m4_foreach_w([gltype], [$1], - [AC_SUBST([HAVE_SIGNED_]translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]))]) + [AC_SUBST([HAVE_SIGNED_]m4_translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]))]) ]) dnl gl_INTEGER_TYPE_SUFFIX(TYPES, INCLUDES) @@ -380,7 +380,7 @@ AC_DEFUN([gl_INTEGER_TYPE_SUFFIX], dnl config.h.in, dnl - extra AC_SUBST calls, so that the right substitutions are made. m4_foreach_w([gltype], [$1], - [AH_TEMPLATE(translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_])[_SUFFIX], + [AH_TEMPLATE(m4_translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_])[_SUFFIX], [Define to l, ll, u, ul, ull, etc., as suitable for constants of type ']gltype['.])]) for gltype in $1 ; do @@ -419,7 +419,7 @@ AC_DEFUN([gl_INTEGER_TYPE_SUFFIX], AC_DEFINE_UNQUOTED([${GLTYPE}_SUFFIX], [$result]) done m4_foreach_w([gltype], [$1], - [AC_SUBST(translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_])[_SUFFIX])]) + [AC_SUBST(m4_translit(gltype,[abcdefghijklmnopqrstuvwxyz ],[ABCDEFGHIJKLMNOPQRSTUVWXYZ_])[_SUFFIX])]) ]) dnl gl_STDINT_INCLUDES diff --git a/m4/stdint_h.m4 b/m4/stdint_h.m4 index b8e3c6c..670c0cc 100644 --- a/m4/stdint_h.m4 +++ b/m4/stdint_h.m4 @@ -1,4 +1,4 @@ -# stdint_h.m4 serial 8 +# stdint_h.m4 serial 9 dnl Copyright (C) 1997-2004, 2006, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -12,12 +12,13 @@ dnl From Paul Eggert. AC_DEFUN([gl_AC_HEADER_STDINT_H], [ AC_CACHE_CHECK([for stdint.h], [gl_cv_header_stdint_h], - [AC_TRY_COMPILE( - [#include -#include ], - [uintmax_t i = (uintmax_t) -1; return !i;], - [gl_cv_header_stdint_h=yes], - [gl_cv_header_stdint_h=no])]) + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #include ]], + [[uintmax_t i = (uintmax_t) -1; return !i;]])], + [gl_cv_header_stdint_h=yes], + [gl_cv_header_stdint_h=no])]) if test $gl_cv_header_stdint_h = yes; then AC_DEFINE_UNQUOTED([HAVE_STDINT_H_WITH_UINTMAX], [1], [Define if exists, doesn't clash with , diff --git a/m4/stdio_h.m4 b/m4/stdio_h.m4 index 681fd8b..f5650cd 100644 --- a/m4/stdio_h.m4 +++ b/m4/stdio_h.m4 @@ -1,4 +1,4 @@ -# stdio_h.m4 serial 26 +# stdio_h.m4 serial 31 dnl Copyright (C) 2007-2010 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,6 +8,7 @@ AC_DEFUN([gl_STDIO_H], [ AC_REQUIRE([gl_STDIO_H_DEFAULTS]) AC_REQUIRE([AC_C_INLINE]) + AC_REQUIRE([gl_ASM_SYMBOL_PREFIX]) gl_CHECK_NEXT_HEADERS([stdio.h]) dnl No need to create extra modules for these functions. Everyone who uses dnl likely needs them. @@ -37,16 +38,16 @@ AC_DEFUN([gl_STDIO_H], dnl guaranteed by C89. gl_WARN_ON_USE_PREPARE([[#include ]], [dprintf fpurge fseeko ftello getdelim getline popen renameat - snprintf vdprintf vsnprintf]) + snprintf tmpfile vdprintf vsnprintf]) ]) AC_DEFUN([gl_STDIO_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_STDIO_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_STDIO_H_DEFAULTS], @@ -83,6 +84,7 @@ AC_DEFUN([gl_STDIO_H_DEFAULTS], GNULIB_SNPRINTF=0; AC_SUBST([GNULIB_SNPRINTF]) GNULIB_SPRINTF_POSIX=0; AC_SUBST([GNULIB_SPRINTF_POSIX]) GNULIB_STDIO_H_SIGPIPE=0; AC_SUBST([GNULIB_STDIO_H_SIGPIPE]) + GNULIB_TMPFILE=0; AC_SUBST([GNULIB_TMPFILE]) GNULIB_VASPRINTF=0; AC_SUBST([GNULIB_VASPRINTF]) GNULIB_VDPRINTF=0; AC_SUBST([GNULIB_VDPRINTF]) GNULIB_VFPRINTF=0; AC_SUBST([GNULIB_VFPRINTF]) @@ -99,6 +101,8 @@ AC_DEFUN([gl_STDIO_H_DEFAULTS], HAVE_DECL_SNPRINTF=1; AC_SUBST([HAVE_DECL_SNPRINTF]) HAVE_DECL_VSNPRINTF=1; AC_SUBST([HAVE_DECL_VSNPRINTF]) HAVE_DPRINTF=1; AC_SUBST([HAVE_DPRINTF]) + HAVE_FSEEKO=1; AC_SUBST([HAVE_FSEEKO]) + HAVE_FTELLO=1; AC_SUBST([HAVE_FTELLO]) HAVE_RENAMEAT=1; AC_SUBST([HAVE_RENAMEAT]) HAVE_VASPRINTF=1; AC_SUBST([HAVE_VASPRINTF]) HAVE_VDPRINTF=1; AC_SUBST([HAVE_VDPRINTF]) @@ -125,6 +129,7 @@ AC_DEFUN([gl_STDIO_H_DEFAULTS], REPLACE_SNPRINTF=0; AC_SUBST([REPLACE_SNPRINTF]) REPLACE_SPRINTF=0; AC_SUBST([REPLACE_SPRINTF]) REPLACE_STDIO_WRITE_FUNCS=0; AC_SUBST([REPLACE_STDIO_WRITE_FUNCS]) + REPLACE_TMPFILE=0; AC_SUBST([REPLACE_TMPFILE]) REPLACE_VASPRINTF=0; AC_SUBST([REPLACE_VASPRINTF]) REPLACE_VDPRINTF=0; AC_SUBST([REPLACE_VDPRINTF]) REPLACE_VFPRINTF=0; AC_SUBST([REPLACE_VFPRINTF]) diff --git a/m4/stdlib_h.m4 b/m4/stdlib_h.m4 index 77344bd..e4697ce 100644 --- a/m4/stdlib_h.m4 +++ b/m4/stdlib_h.m4 @@ -1,4 +1,4 @@ -# stdlib_h.m4 serial 23 +# stdlib_h.m4 serial 31 dnl Copyright (C) 2007-2010 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,33 +33,37 @@ AC_DEFUN([gl_STDLIB_H], #if HAVE_RANDOM_H # include #endif - ]], [atoll canonicalize_file_name getloadavg getsubopt mkdtemp - mkostemp mkostemps mkstemp mkstemps random_r initstat_r srandom_r - setstate_r realpath rpmatch setenv strtod strtoll strtoull unsetenv]) + ]], [_Exit atoll canonicalize_file_name getloadavg getsubopt grantpt mkdtemp + mkostemp mkostemps mkstemp mkstemps ptsname random_r initstat_r srandom_r + setstate_r realpath rpmatch setenv strtod strtoll strtoull unlockpt + unsetenv]) ]) AC_DEFUN([gl_STDLIB_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_STDLIB_H_DEFAULTS], [ + GNULIB__EXIT=0; AC_SUBST([GNULIB__EXIT]) GNULIB_ATOLL=0; AC_SUBST([GNULIB_ATOLL]) GNULIB_CALLOC_POSIX=0; AC_SUBST([GNULIB_CALLOC_POSIX]) GNULIB_CANONICALIZE_FILE_NAME=0; AC_SUBST([GNULIB_CANONICALIZE_FILE_NAME]) GNULIB_GETLOADAVG=0; AC_SUBST([GNULIB_GETLOADAVG]) GNULIB_GETSUBOPT=0; AC_SUBST([GNULIB_GETSUBOPT]) + GNULIB_GRANTPT=0; AC_SUBST([GNULIB_GRANTPT]) GNULIB_MALLOC_POSIX=0; AC_SUBST([GNULIB_MALLOC_POSIX]) GNULIB_MKDTEMP=0; AC_SUBST([GNULIB_MKDTEMP]) GNULIB_MKOSTEMP=0; AC_SUBST([GNULIB_MKOSTEMP]) GNULIB_MKOSTEMPS=0; AC_SUBST([GNULIB_MKOSTEMPS]) GNULIB_MKSTEMP=0; AC_SUBST([GNULIB_MKSTEMP]) GNULIB_MKSTEMPS=0; AC_SUBST([GNULIB_MKSTEMPS]) + GNULIB_PTSNAME=0; AC_SUBST([GNULIB_PTSNAME]) GNULIB_PUTENV=0; AC_SUBST([GNULIB_PUTENV]) GNULIB_RANDOM_R=0; AC_SUBST([GNULIB_RANDOM_R]) GNULIB_REALLOC_POSIX=0; AC_SUBST([GNULIB_REALLOC_POSIX]) @@ -69,20 +73,23 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS], GNULIB_STRTOD=0; AC_SUBST([GNULIB_STRTOD]) GNULIB_STRTOLL=0; AC_SUBST([GNULIB_STRTOLL]) GNULIB_STRTOULL=0; AC_SUBST([GNULIB_STRTOULL]) + GNULIB_SYSTEM_POSIX=0; AC_SUBST([GNULIB_SYSTEM_POSIX]) + GNULIB_UNLOCKPT=0; AC_SUBST([GNULIB_UNLOCKPT]) GNULIB_UNSETENV=0; AC_SUBST([GNULIB_UNSETENV]) dnl Assume proper GNU behavior unless another module says otherwise. + HAVE__EXIT=1; AC_SUBST([HAVE__EXIT]) HAVE_ATOLL=1; AC_SUBST([HAVE_ATOLL]) - HAVE_CALLOC_POSIX=1; AC_SUBST([HAVE_CALLOC_POSIX]) HAVE_CANONICALIZE_FILE_NAME=1; AC_SUBST([HAVE_CANONICALIZE_FILE_NAME]) HAVE_DECL_GETLOADAVG=1; AC_SUBST([HAVE_DECL_GETLOADAVG]) HAVE_GETSUBOPT=1; AC_SUBST([HAVE_GETSUBOPT]) - HAVE_MALLOC_POSIX=1; AC_SUBST([HAVE_MALLOC_POSIX]) + HAVE_GRANTPT=1; AC_SUBST([HAVE_GRANTPT]) HAVE_MKDTEMP=1; AC_SUBST([HAVE_MKDTEMP]) HAVE_MKOSTEMP=1; AC_SUBST([HAVE_MKOSTEMP]) HAVE_MKOSTEMPS=1; AC_SUBST([HAVE_MKOSTEMPS]) + HAVE_MKSTEMP=1; AC_SUBST([HAVE_MKSTEMP]) HAVE_MKSTEMPS=1; AC_SUBST([HAVE_MKSTEMPS]) + HAVE_PTSNAME=1; AC_SUBST([HAVE_PTSNAME]) HAVE_RANDOM_R=1; AC_SUBST([HAVE_RANDOM_R]) - HAVE_REALLOC_POSIX=1; AC_SUBST([HAVE_REALLOC_POSIX]) HAVE_REALPATH=1; AC_SUBST([HAVE_REALPATH]) HAVE_RPMATCH=1; AC_SUBST([HAVE_RPMATCH]) HAVE_SETENV=1; AC_SUBST([HAVE_SETENV]) @@ -91,10 +98,14 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS], HAVE_STRTOULL=1; AC_SUBST([HAVE_STRTOULL]) HAVE_STRUCT_RANDOM_DATA=1; AC_SUBST([HAVE_STRUCT_RANDOM_DATA]) HAVE_SYS_LOADAVG_H=0; AC_SUBST([HAVE_SYS_LOADAVG_H]) + HAVE_UNLOCKPT=1; AC_SUBST([HAVE_UNLOCKPT]) HAVE_UNSETENV=1; AC_SUBST([HAVE_UNSETENV]) + REPLACE_CALLOC=0; AC_SUBST([REPLACE_CALLOC]) REPLACE_CANONICALIZE_FILE_NAME=0; AC_SUBST([REPLACE_CANONICALIZE_FILE_NAME]) + REPLACE_MALLOC=0; AC_SUBST([REPLACE_MALLOC]) REPLACE_MKSTEMP=0; AC_SUBST([REPLACE_MKSTEMP]) REPLACE_PUTENV=0; AC_SUBST([REPLACE_PUTENV]) + REPLACE_REALLOC=0; AC_SUBST([REPLACE_REALLOC]) REPLACE_REALPATH=0; AC_SUBST([REPLACE_REALPATH]) REPLACE_SETENV=0; AC_SUBST([REPLACE_SETENV]) REPLACE_STRTOD=0; AC_SUBST([REPLACE_STRTOD]) diff --git a/m4/strdup.m4 b/m4/strdup.m4 index 3a3b07d..ce40c21 100644 --- a/m4/strdup.m4 +++ b/m4/strdup.m4 @@ -1,4 +1,4 @@ -# strdup.m4 serial 11 +# strdup.m4 serial 12 dnl Copyright (C) 2002-2010 Free Software Foundation, Inc. @@ -9,29 +9,36 @@ dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_FUNC_STRDUP], [ AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) - AC_REPLACE_FUNCS([strdup]) + AC_CHECK_FUNCS_ONCE([strdup]) + if test $ac_cv_func_strdup != yes; then + AC_LIBOBJ([strdup]) + gl_PREREQ_STRDUP + fi AC_CHECK_DECLS_ONCE([strdup]) if test $ac_cv_have_decl_strdup = no; then HAVE_DECL_STRDUP=0 fi - gl_PREREQ_STRDUP ]) AC_DEFUN([gl_FUNC_STRDUP_POSIX], [ AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) AC_REQUIRE([gl_CHECK_MALLOC_POSIX]) - if test $gl_cv_func_malloc_posix != yes; then - REPLACE_STRDUP=1 - AC_LIBOBJ([strdup]) + AC_CHECK_FUNCS_ONCE([strdup]) + if test $ac_cv_func_strdup = yes; then + if test $gl_cv_func_malloc_posix != yes; then + REPLACE_STRDUP=1 + AC_LIBOBJ([strdup]) + gl_PREREQ_STRDUP + fi else - AC_REPLACE_FUNCS([strdup]) + AC_LIBOBJ([strdup]) + gl_PREREQ_STRDUP fi AC_CHECK_DECLS_ONCE([strdup]) if test $ac_cv_have_decl_strdup = no; then HAVE_DECL_STRDUP=0 fi - gl_PREREQ_STRDUP ]) # Prerequisites of lib/strdup.c. diff --git a/m4/string_h.m4 b/m4/string_h.m4 index a8a366c..1977aec 100644 --- a/m4/string_h.m4 +++ b/m4/string_h.m4 @@ -5,7 +5,7 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 12 +# serial 17 # Written by Paul Eggert. @@ -26,17 +26,19 @@ AC_DEFUN([gl_HEADER_STRING_H_BODY], dnl corresponding gnulib module is not in use, and which is not dnl guaranteed by C89. gl_WARN_ON_USE_PREPARE([[#include - ]], [memmem mempcpy memrchr rawmemchr stpcpy stpncpy strchrnul strdup - strndup strnlen strpbrk strsep strcasestr strtok_r strsignal strverscmp]) + ]], + [memmem mempcpy memrchr rawmemchr stpcpy stpncpy strchrnul strdup + strncat strndup strnlen strpbrk strsep strcasestr strtok_r strsignal + strverscmp]) ]) AC_DEFUN([gl_STRING_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS], @@ -50,6 +52,7 @@ AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS], GNULIB_STPNCPY=0; AC_SUBST([GNULIB_STPNCPY]) GNULIB_STRCHRNUL=0; AC_SUBST([GNULIB_STRCHRNUL]) GNULIB_STRDUP=0; AC_SUBST([GNULIB_STRDUP]) + GNULIB_STRNCAT=0; AC_SUBST([GNULIB_STRNCAT]) GNULIB_STRNDUP=0; AC_SUBST([GNULIB_STRNDUP]) GNULIB_STRNLEN=0; AC_SUBST([GNULIB_STRNLEN]) GNULIB_STRPBRK=0; AC_SUBST([GNULIB_STRPBRK]) @@ -76,6 +79,7 @@ AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS], GNULIB_STRVERSCMP=0; AC_SUBST([GNULIB_STRVERSCMP]) HAVE_MBSLEN=0; AC_SUBST([HAVE_MBSLEN]) dnl Assume proper GNU behavior unless another module says otherwise. + HAVE_MEMCHR=1; AC_SUBST([HAVE_MEMCHR]) HAVE_DECL_MEMMEM=1; AC_SUBST([HAVE_DECL_MEMMEM]) HAVE_MEMPCPY=1; AC_SUBST([HAVE_MEMPCPY]) HAVE_DECL_MEMRCHR=1; AC_SUBST([HAVE_DECL_MEMRCHR]) @@ -90,16 +94,18 @@ AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS], HAVE_STRSEP=1; AC_SUBST([HAVE_STRSEP]) HAVE_STRCASESTR=1; AC_SUBST([HAVE_STRCASESTR]) HAVE_DECL_STRTOK_R=1; AC_SUBST([HAVE_DECL_STRTOK_R]) - HAVE_DECL_STRERROR=1; AC_SUBST([HAVE_DECL_STRERROR]) HAVE_DECL_STRSIGNAL=1; AC_SUBST([HAVE_DECL_STRSIGNAL]) HAVE_STRVERSCMP=1; AC_SUBST([HAVE_STRVERSCMP]) REPLACE_MEMCHR=0; AC_SUBST([REPLACE_MEMCHR]) REPLACE_MEMMEM=0; AC_SUBST([REPLACE_MEMMEM]) + REPLACE_STPNCPY=0; AC_SUBST([REPLACE_STPNCPY]) REPLACE_STRDUP=0; AC_SUBST([REPLACE_STRDUP]) REPLACE_STRSTR=0; AC_SUBST([REPLACE_STRSTR]) REPLACE_STRCASESTR=0; AC_SUBST([REPLACE_STRCASESTR]) REPLACE_STRERROR=0; AC_SUBST([REPLACE_STRERROR]) + REPLACE_STRNCAT=0; AC_SUBST([REPLACE_STRNCAT]) REPLACE_STRNDUP=0; AC_SUBST([REPLACE_STRNDUP]) + REPLACE_STRNLEN=0; AC_SUBST([REPLACE_STRNLEN]) REPLACE_STRSIGNAL=0; AC_SUBST([REPLACE_STRSIGNAL]) REPLACE_STRTOK_R=0; AC_SUBST([REPLACE_STRTOK_R]) UNDEFINE_STRTOK_R=0; AC_SUBST([UNDEFINE_STRTOK_R]) diff --git a/m4/strings_h.m4 b/m4/strings_h.m4 index 26aa1f7..4374c7c 100644 --- a/m4/strings_h.m4 +++ b/m4/strings_h.m4 @@ -1,7 +1,7 @@ # Configure a replacement for . -# serial 2 +# serial 3 -# Copyright (C) 2007, 2009, 2010 Free Software Foundation, Inc. +# Copyright (C) 2007, 2009-2010 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -28,7 +28,7 @@ AC_DEFUN([gl_STRINGS_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_HEADER_STRINGS_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) ]) AC_DEFUN([gl_HEADER_STRINGS_H_DEFAULTS], diff --git a/m4/strndup.m4 b/m4/strndup.m4 index 810313c..b3567d8 100644 --- a/m4/strndup.m4 +++ b/m4/strndup.m4 @@ -1,4 +1,4 @@ -# strndup.m4 serial 17 +# strndup.m4 serial 18 dnl Copyright (C) 2002-2003, 2005-2010 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,10 +33,14 @@ AC_DEFUN([gl_FUNC_STRNDUP], return s[13] != '\0';]])], [gl_cv_func_strndup_works=yes], [gl_cv_func_strndup_works=no], - [case $host_os in - aix*) gl_cv_func_strndup_works="guessing no";; - *) gl_cv_func_strndup_works="guessing yes";; - esac])]) + [ +changequote(,)dnl + case $host_os in + aix | aix[3-6]*) gl_cv_func_strndup_works="guessing no";; + *) gl_cv_func_strndup_works="guessing yes";; + esac +changequote([,])dnl + ])]) case $gl_cv_func_strndup_works in *no) REPLACE_STRNDUP=1 diff --git a/m4/strnlen.m4 b/m4/strnlen.m4 index cd48948..52bb838 100644 --- a/m4/strnlen.m4 +++ b/m4/strnlen.m4 @@ -1,4 +1,4 @@ -# strnlen.m4 serial 10 +# strnlen.m4 serial 12 dnl Copyright (C) 2002-2003, 2005-2007, 2009-2010 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation @@ -7,23 +7,23 @@ dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_FUNC_STRNLEN], [ + AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) + dnl Persuade glibc to declare strnlen(). AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) - AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) AC_CHECK_DECLS_ONCE([strnlen]) if test $ac_cv_have_decl_strnlen = no; then HAVE_DECL_STRNLEN=0 + else + AC_FUNC_STRNLEN + dnl Note: AC_FUNC_STRNLEN does AC_LIBOBJ([strnlen]). + if test $ac_cv_func_strnlen_working = no; then + REPLACE_STRNLEN=1 + fi fi - - AC_FUNC_STRNLEN - if test $ac_cv_func_strnlen_working = no; then - # This is necessary because automake-1.6.1 doesn't understand - # that the above use of AC_FUNC_STRNLEN means we may have to use - # lib/strnlen.c. - #AC_LIBOBJ([strnlen]) - AC_DEFINE([strnlen], [rpl_strnlen], - [Define to rpl_strnlen if the replacement function should be used.]) + if test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1; then + AC_LIBOBJ([strnlen]) gl_PREREQ_STRNLEN fi ]) diff --git a/m4/symlink.m4 b/m4/symlink.m4 new file mode 100644 index 0000000..fb61984 --- /dev/null +++ b/m4/symlink.m4 @@ -0,0 +1,38 @@ +# serial 3 +# See if we need to provide symlink replacement. + +dnl Copyright (C) 2009, 2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_SYMLINK], +[ + AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) + AC_CHECK_FUNCS_ONCE([symlink]) + dnl The best we can do on mingw is provide a dummy that always fails, so + dnl that compilation can proceed with fewer ifdefs. On FreeBSD 7.2, AIX 7.1, + dnl and Solaris 9, we want to fix a bug with trailing slash handling. + if test $ac_cv_func_symlink = no; then + HAVE_SYMLINK=0 + AC_LIBOBJ([symlink]) + else + AC_CACHE_CHECK([whether symlink handles trailing slash correctly], + [gl_cv_func_symlink_works], + [AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include +]], [[if (!symlink ("a", "conftest.link/")) return 1; + if (symlink ("conftest.f", "conftest.lnk2")) return 2; + if (!symlink ("a", "conftest.lnk2/")) return 3;]])], + [gl_cv_func_symlink_works=yes], [gl_cv_func_symlink_works=no], + [gl_cv_func_symlink_works="guessing no"]) + rm -f conftest.f conftest.link conftest.lnk2]) + if test "$gl_cv_func_symlink_works" != yes; then + REPLACE_SYMLINK=1 + AC_LIBOBJ([symlink]) + fi + fi +]) diff --git a/m4/symlinkat.m4 b/m4/symlinkat.m4 new file mode 100644 index 0000000..ed8bb87 --- /dev/null +++ b/m4/symlinkat.m4 @@ -0,0 +1,21 @@ +# serial 4 +# See if we need to provide symlinkat replacement. + +dnl Copyright (C) 2009-2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_SYMLINKAT], +[ + AC_REQUIRE([gl_FUNC_OPENAT]) + AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_CHECK_FUNCS_ONCE([symlinkat]) + if test $ac_cv_func_symlinkat = no; then + HAVE_SYMLINKAT=0 + AC_LIBOBJ([symlinkat]) + fi +]) diff --git a/m4/sys_stat_h.m4 b/m4/sys_stat_h.m4 index 54d74ca..7181c25 100644 --- a/m4/sys_stat_h.m4 +++ b/m4/sys_stat_h.m4 @@ -1,4 +1,4 @@ -# sys_stat_h.m4 serial 23 -*- Autoconf -*- +# sys_stat_h.m4 serial 24 -*- Autoconf -*- dnl Copyright (C) 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -38,9 +38,9 @@ AC_DEFUN([gl_SYS_STAT_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_SYS_STAT_H_DEFAULTS], diff --git a/m4/sys_time_h.m4 b/m4/sys_time_h.m4 index 2835a40..da57527 100644 --- a/m4/sys_time_h.m4 +++ b/m4/sys_time_h.m4 @@ -1,5 +1,5 @@ # Configure a replacement for . -# serial 5 +# serial 6 # Copyright (C) 2007, 2009, 2010 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation @@ -56,9 +56,9 @@ AC_DEFUN([gl_SYS_TIME_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_HEADER_SYS_TIME_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_HEADER_SYS_TIME_H_DEFAULTS], diff --git a/m4/time_h.m4 b/m4/time_h.m4 index ba2e194..a45a10a 100644 --- a/m4/time_h.m4 +++ b/m4/time_h.m4 @@ -2,6 +2,8 @@ # Copyright (C) 2000-2001, 2003-2007, 2009-2010 Free Software Foundation, Inc. +# serial 2 + # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -24,7 +26,7 @@ AC_DEFUN([gl_HEADER_TIME_H_BODY], ]) dnl Define HAVE_STRUCT_TIMESPEC if `struct timespec' is declared -dnl in time.h or sys/time.h. +dnl in time.h, sys/time.h, or pthread.h. AC_DEFUN([gl_CHECK_TYPE_STRUCT_TIMESPEC], [ @@ -41,6 +43,7 @@ AC_DEFUN([gl_CHECK_TYPE_STRUCT_TIMESPEC], TIME_H_DEFINES_STRUCT_TIMESPEC=0 SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=0 + PTHREAD_H_DEFINES_STRUCT_TIMESPEC=0 if test $gl_cv_sys_struct_timespec_in_time_h = yes; then TIME_H_DEFINES_STRUCT_TIMESPEC=1 else @@ -55,19 +58,33 @@ AC_DEFUN([gl_CHECK_TYPE_STRUCT_TIMESPEC], [gl_cv_sys_struct_timespec_in_sys_time_h=no])]) if test $gl_cv_sys_struct_timespec_in_sys_time_h = yes; then SYS_TIME_H_DEFINES_STRUCT_TIMESPEC=1 + else + AC_CACHE_CHECK([for struct timespec in ], + [gl_cv_sys_struct_timespec_in_pthread_h], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include + ]], + [[static struct timespec x; x.tv_sec = x.tv_nsec;]])], + [gl_cv_sys_struct_timespec_in_pthread_h=yes], + [gl_cv_sys_struct_timespec_in_pthread_h=no])]) + if test $gl_cv_sys_struct_timespec_in_pthread_h = yes; then + PTHREAD_H_DEFINES_STRUCT_TIMESPEC=1 + fi fi fi AC_SUBST([TIME_H_DEFINES_STRUCT_TIMESPEC]) AC_SUBST([SYS_TIME_H_DEFINES_STRUCT_TIMESPEC]) + AC_SUBST([PTHREAD_H_DEFINES_STRUCT_TIMESPEC]) ]) AC_DEFUN([gl_TIME_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. - AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS]) + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_HEADER_TIME_H_DEFAULTS], @@ -76,12 +93,17 @@ AC_DEFUN([gl_HEADER_TIME_H_DEFAULTS], GNULIB_NANOSLEEP=0; AC_SUBST([GNULIB_NANOSLEEP]) GNULIB_STRPTIME=0; AC_SUBST([GNULIB_STRPTIME]) GNULIB_TIMEGM=0; AC_SUBST([GNULIB_TIMEGM]) + GNULIB_TIME_R=0; AC_SUBST([GNULIB_TIME_R]) + dnl Assume proper GNU behavior unless another module says otherwise. + HAVE_LOCALTIME_R=1; AC_SUBST([HAVE_LOCALTIME_R]) + HAVE_NANOSLEEP=1; AC_SUBST([HAVE_NANOSLEEP]) + HAVE_STRPTIME=1; AC_SUBST([HAVE_STRPTIME]) + HAVE_TIMEGM=1; AC_SUBST([HAVE_TIMEGM]) dnl If another module says to replace or to not replace, do that. dnl Otherwise, replace only if someone compiles with -DGNULIB_PORTCHECK; dnl this lets maintainers check for portability. REPLACE_LOCALTIME_R=GNULIB_PORTCHECK; AC_SUBST([REPLACE_LOCALTIME_R]) REPLACE_MKTIME=GNULIB_PORTCHECK; AC_SUBST([REPLACE_MKTIME]) REPLACE_NANOSLEEP=GNULIB_PORTCHECK; AC_SUBST([REPLACE_NANOSLEEP]) - REPLACE_STRPTIME=GNULIB_PORTCHECK; AC_SUBST([REPLACE_STRPTIME]) REPLACE_TIMEGM=GNULIB_PORTCHECK; AC_SUBST([REPLACE_TIMEGM]) ]) diff --git a/m4/time_r.m4 b/m4/time_r.m4 index b5938e7..9e82d39 100644 --- a/m4/time_r.m4 +++ b/m4/time_r.m4 @@ -1,7 +1,6 @@ -dnl Reentrant time functions like localtime_r. +dnl Reentrant time functions: localtime_r, gmtime_r. -dnl Copyright (C) 2003, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, -dnl Inc. +dnl Copyright (C) 2003, 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -10,29 +9,40 @@ dnl Written by Paul Eggert. AC_DEFUN([gl_TIME_R], [ - dnl Persuade glibc and Solaris to declare localtime_r. + dnl Persuade glibc and Solaris to declare localtime_r. AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS]) AC_REQUIRE([AC_C_RESTRICT]) - AC_CACHE_CHECK([whether localtime_r is compatible with its POSIX signature], - [gl_cv_time_r_posix], - [AC_COMPILE_IFELSE([AC_LANG_PROGRAM( - [[#include ]], - [[/* We don't need to append 'restrict's to the argument types, - even though the POSIX signature has the 'restrict's, - since C99 says they can't affect type compatibility. */ - struct tm * (*ptr) (time_t const *, struct tm *) = localtime_r; - if (ptr) return 0; - /* Check the return type is a pointer. On HP-UX 10 it is 'int'. */ - *localtime_r (0, 0);]])], - [gl_cv_time_r_posix=yes], - [gl_cv_time_r_posix=no])]) - if test $gl_cv_time_r_posix = yes; then - REPLACE_LOCALTIME_R=0 + AC_CHECK_FUNCS_ONCE([localtime_r]) + if test $ac_cv_func_localtime_r = yes; then + AC_CACHE_CHECK([whether localtime_r is compatible with its POSIX signature], + [gl_cv_time_r_posix], + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[/* We don't need to append 'restrict's to the argument types, + even though the POSIX signature has the 'restrict's, + since C99 says they can't affect type compatibility. */ + struct tm * (*ptr) (time_t const *, struct tm *) = localtime_r; + if (ptr) return 0; + /* Check the return type is a pointer. + On HP-UX 10 it is 'int'. */ + *localtime_r (0, 0);]]) + ], + [gl_cv_time_r_posix=yes], + [gl_cv_time_r_posix=no]) + ]) + if test $gl_cv_time_r_posix = yes; then + REPLACE_LOCALTIME_R=0 + else + REPLACE_LOCALTIME_R=1 + fi else - REPLACE_LOCALTIME_R=1 + HAVE_LOCALTIME_R=0 + fi + if test $HAVE_LOCALTIME_R = 0 || test $REPLACE_LOCALTIME_R = 1; then AC_LIBOBJ([time_r]) gl_PREREQ_TIME_R fi diff --git a/m4/unistd_h.m4 b/m4/unistd_h.m4 index f6c35d2..48d06c7 100644 --- a/m4/unistd_h.m4 +++ b/m4/unistd_h.m4 @@ -1,4 +1,4 @@ -# unistd_h.m4 serial 40 +# unistd_h.m4 serial 46 dnl Copyright (C) 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -38,17 +38,18 @@ AC_DEFUN([gl_UNISTD_H], ]], [chown dup2 dup3 environ euidaccess faccessat fchdir fchownat fsync ftruncate getcwd getdomainname getdtablesize getgroups gethostname getlogin getlogin_r getpagesize getusershell setusershell - endusershell lchown link linkat lseek pipe2 pread readlink readlinkat - rmdir sleep symlink symlinkat unlink unlinkat usleep]) + endusershell lchown link linkat lseek pipe2 pread pwrite readlink + readlinkat rmdir sleep symlink symlinkat ttyname_r unlink unlinkat + usleep]) ]) AC_DEFUN([gl_UNISTD_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_UNISTD_H_DEFAULTS], @@ -79,12 +80,14 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS], GNULIB_LSEEK=0; AC_SUBST([GNULIB_LSEEK]) GNULIB_PIPE2=0; AC_SUBST([GNULIB_PIPE2]) GNULIB_PREAD=0; AC_SUBST([GNULIB_PREAD]) + GNULIB_PWRITE=0; AC_SUBST([GNULIB_PWRITE]) GNULIB_READLINK=0; AC_SUBST([GNULIB_READLINK]) GNULIB_READLINKAT=0; AC_SUBST([GNULIB_READLINKAT]) GNULIB_RMDIR=0; AC_SUBST([GNULIB_RMDIR]) GNULIB_SLEEP=0; AC_SUBST([GNULIB_SLEEP]) GNULIB_SYMLINK=0; AC_SUBST([GNULIB_SYMLINK]) GNULIB_SYMLINKAT=0; AC_SUBST([GNULIB_SYMLINKAT]) + GNULIB_TTYNAME_R=0; AC_SUBST([GNULIB_TTYNAME_R]) GNULIB_UNISTD_H_GETOPT=0; AC_SUBST([GNULIB_UNISTD_H_GETOPT]) GNULIB_UNISTD_H_SIGPIPE=0; AC_SUBST([GNULIB_UNISTD_H_SIGPIPE]) GNULIB_UNLINK=0; AC_SUBST([GNULIB_UNLINK]) @@ -97,6 +100,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS], HAVE_DUP3=1; AC_SUBST([HAVE_DUP3]) HAVE_EUIDACCESS=1; AC_SUBST([HAVE_EUIDACCESS]) HAVE_FACCESSAT=1; AC_SUBST([HAVE_FACCESSAT]) + HAVE_FCHDIR=1; AC_SUBST([HAVE_FCHDIR]) HAVE_FCHOWNAT=1; AC_SUBST([HAVE_FCHOWNAT]) HAVE_FSYNC=1; AC_SUBST([HAVE_FSYNC]) HAVE_FTRUNCATE=1; AC_SUBST([HAVE_FTRUNCATE]) @@ -106,28 +110,30 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS], HAVE_GETHOSTNAME=1; AC_SUBST([HAVE_GETHOSTNAME]) HAVE_GETLOGIN=1; AC_SUBST([HAVE_GETLOGIN]) HAVE_GETPAGESIZE=1; AC_SUBST([HAVE_GETPAGESIZE]) - HAVE_GETUSERSHELL=1; AC_SUBST([HAVE_GETUSERSHELL]) HAVE_LCHOWN=1; AC_SUBST([HAVE_LCHOWN]) HAVE_LINK=1; AC_SUBST([HAVE_LINK]) HAVE_LINKAT=1; AC_SUBST([HAVE_LINKAT]) HAVE_PIPE2=1; AC_SUBST([HAVE_PIPE2]) HAVE_PREAD=1; AC_SUBST([HAVE_PREAD]) + HAVE_PWRITE=1; AC_SUBST([HAVE_PWRITE]) HAVE_READLINK=1; AC_SUBST([HAVE_READLINK]) HAVE_READLINKAT=1; AC_SUBST([HAVE_READLINKAT]) HAVE_SLEEP=1; AC_SUBST([HAVE_SLEEP]) HAVE_SYMLINK=1; AC_SUBST([HAVE_SYMLINK]) HAVE_SYMLINKAT=1; AC_SUBST([HAVE_SYMLINKAT]) + HAVE_TTYNAME_R=1; AC_SUBST([HAVE_TTYNAME_R]) + HAVE_UNLINKAT=1; AC_SUBST([HAVE_UNLINKAT]) + HAVE_USLEEP=1; AC_SUBST([HAVE_USLEEP]) HAVE_DECL_ENVIRON=1; AC_SUBST([HAVE_DECL_ENVIRON]) HAVE_DECL_GETLOGIN_R=1; AC_SUBST([HAVE_DECL_GETLOGIN_R]) + HAVE_DECL_GETPAGESIZE=1; AC_SUBST([HAVE_DECL_GETPAGESIZE]) + HAVE_DECL_GETUSERSHELL=1; AC_SUBST([HAVE_DECL_GETUSERSHELL]) HAVE_OS_H=0; AC_SUBST([HAVE_OS_H]) HAVE_SYS_PARAM_H=0; AC_SUBST([HAVE_SYS_PARAM_H]) - HAVE_UNLINKAT=1; AC_SUBST([HAVE_UNLINKAT]) - HAVE_USLEEP=1; AC_SUBST([HAVE_USLEEP]) REPLACE_CHOWN=0; AC_SUBST([REPLACE_CHOWN]) REPLACE_CLOSE=0; AC_SUBST([REPLACE_CLOSE]) REPLACE_DUP=0; AC_SUBST([REPLACE_DUP]) REPLACE_DUP2=0; AC_SUBST([REPLACE_DUP2]) - REPLACE_FCHDIR=0; AC_SUBST([REPLACE_FCHDIR]) REPLACE_FCHOWNAT=0; AC_SUBST([REPLACE_FCHOWNAT]) REPLACE_GETCWD=0; AC_SUBST([REPLACE_GETCWD]) REPLACE_GETGROUPS=0; AC_SUBST([REPLACE_GETGROUPS]) @@ -137,10 +143,12 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS], REPLACE_LINKAT=0; AC_SUBST([REPLACE_LINKAT]) REPLACE_LSEEK=0; AC_SUBST([REPLACE_LSEEK]) REPLACE_PREAD=0; AC_SUBST([REPLACE_PREAD]) + REPLACE_PWRITE=0; AC_SUBST([REPLACE_PWRITE]) REPLACE_READLINK=0; AC_SUBST([REPLACE_READLINK]) REPLACE_RMDIR=0; AC_SUBST([REPLACE_RMDIR]) REPLACE_SLEEP=0; AC_SUBST([REPLACE_SLEEP]) REPLACE_SYMLINK=0; AC_SUBST([REPLACE_SYMLINK]) + REPLACE_TTYNAME_R=0; AC_SUBST([REPLACE_TTYNAME_R]) REPLACE_UNLINK=0; AC_SUBST([REPLACE_UNLINK]) REPLACE_UNLINKAT=0; AC_SUBST([REPLACE_UNLINKAT]) REPLACE_USLEEP=0; AC_SUBST([REPLACE_USLEEP]) diff --git a/m4/unlink.m4 b/m4/unlink.m4 index c01d848..b20af63 100644 --- a/m4/unlink.m4 +++ b/m4/unlink.m4 @@ -1,4 +1,4 @@ -# unlink.m4 serial 3 +# unlink.m4 serial 5 dnl Copyright (C) 2009, 2010 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,9 +8,10 @@ AC_DEFUN([gl_FUNC_UNLINK], [ AC_REQUIRE([gl_AC_DOS]) AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) - dnl Detect Solaris 9 and FreeBSD 7.2 bug. + AC_REQUIRE([AC_CANONICAL_HOST]) + dnl Detect FreeBSD 7.2, AIX 7.1, Solaris 9 bug. AC_CACHE_CHECK([whether unlink honors trailing slashes], - [gl_cv_func_unlink_works], + [gl_cv_func_unlink_honors_slashes], [touch conftest.file # Assume that if we have lstat, we can also check symlinks. if test $ac_cv_func_lstat = yes; then @@ -25,10 +26,76 @@ AC_DEFUN([gl_FUNC_UNLINK], if (!unlink ("conftest.lnk/") || errno != ENOTDIR) return 2; #endif ]])], - [gl_cv_func_unlink_works=yes], [gl_cv_func_unlink_works=no], - [gl_cv_func_unlink_works="guessing no"]) + [gl_cv_func_unlink_honors_slashes=yes], + [gl_cv_func_unlink_honors_slashes=no], + [gl_cv_func_unlink_honors_slashes="guessing no"]) rm -f conftest.file conftest.lnk]) - if test x"$gl_cv_func_unlink_works" != xyes; then + dnl Detect MacOS X 10.5.6 bug: On read-write HFS mounts, unlink("..") or + dnl unlink("../..") succeeds without doing anything. + AC_CACHE_CHECK([whether unlink of a parent directory fails is it should], + [gl_cv_func_unlink_parent_fails], + [case "$host_os" in + darwin*) + dnl Try to unlink a subdirectory of /tmp, because /tmp is usually on a + dnl HFS mount on MacOS X. Use a subdirectory, owned by the current + dnl user, because otherwise unlink() may fail due to permissions + dnl reasons, and because when running as root we don't want to risk + dnl destroying the entire /tmp. + if { + # Use the mktemp program if available. If not available, hide the error + # message. + tmp=`(umask 077 && mktemp -d /tmp/gtXXXXXX) 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" + } || + { + # Use a simple mkdir command. It is guaranteed to fail if the directory + # already exists. $RANDOM is bash specific and expands to empty in shells + # other than bash, ksh and zsh. Its use does not increase security; + # rather, it minimizes the probability of failure in a very cluttered /tmp + # directory. + tmp=/tmp/gt$$-$RANDOM + (umask 077 && mkdir "$tmp") + }; then + mkdir "$tmp/subdir" + GL_SUBDIR_FOR_UNLINK="$tmp/subdir" + export GL_SUBDIR_FOR_UNLINK + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ + #include + #include + int main () + { + if (chdir (getenv ("GL_SUBDIR_FOR_UNLINK")) != 0) + return 1; + return unlink ("..") == 0; + } + ]])], + [gl_cv_func_unlink_parent_fails=yes], + [gl_cv_func_unlink_parent_fails=no], + [gl_cv_func_unlink_parent_fails="guessing no"]) + unset GL_SUBDIR_FOR_UNLINK + rm -rf "$tmp" + else + gl_cv_func_unlink_parent_fails="guessing no" + fi + ;; + *) + gl_cv_func_unlink_parent_fails="guessing yes" + ;; + esac + ]) + case "$gl_cv_func_unlink_parent_fails" in + *no) + AC_DEFINE([UNLINK_PARENT_BUG], [1], + [Define to 1 if unlink() on a parent directory may succeed]) + ;; + esac + if test "$gl_cv_func_unlink_honors_slashes" != yes \ + || { case "$gl_cv_func_unlink_parent_fails" in + *yes) false;; + *no) true;; + esac + }; then REPLACE_UNLINK=1 AC_LIBOBJ([unlink]) fi diff --git a/m4/utimensat.m4 b/m4/utimensat.m4 new file mode 100644 index 0000000..1110e07 --- /dev/null +++ b/m4/utimensat.m4 @@ -0,0 +1,56 @@ +# serial 3 +# See if we need to provide utimensat replacement. + +dnl Copyright (C) 2009, 2010 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. + +# Written by Eric Blake. + +AC_DEFUN([gl_FUNC_UTIMENSAT], +[ + AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS]) + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_CHECK_FUNCS_ONCE([utimensat]) + if test $ac_cv_func_utimensat = no; then + HAVE_UTIMENSAT=0 + AC_LIBOBJ([utimensat]) + else + AC_CACHE_CHECK([whether utimensat works], + [gl_cv_func_utimensat_works], + [AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +#include +#include +#include +]], [[struct timespec ts[2] = { { 1, UTIME_OMIT }, { 1, UTIME_NOW } }; + struct stat st; + const char *f = "conftest.file"; + if (close (creat (f, 0600))) return 1; + if (utimensat (AT_FDCWD, f, NULL, AT_SYMLINK_NOFOLLOW)) return 2; + if (utimensat (AT_FDCWD, f, ts, 0)) return 3; + sleep (1); + ts[0].tv_nsec = UTIME_NOW; + ts[1].tv_nsec = UTIME_OMIT; + if (utimensat (AT_FDCWD, f, ts, 0)) return 4; + if (stat (f, &st)) return 5; + if (st.st_ctime < st.st_atime) return 6;]])], +dnl FIXME: simplify this in 2012, when file system bugs are no longer common + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ +#ifdef __linux__ +/* The Linux kernel added utimensat in 2.6.22, but has bugs with UTIME_OMIT + in several file systems as recently as 2.6.32. Always replace utimensat + to support older kernels. */ +choke me +#endif + ]])], + [gl_cv_func_utimensat_works=yes], + [gl_cv_func_utimensat_works="needs runtime check"])], + [gl_cv_func_utimensat_works=no], + [gl_cv_func_utimensat_works="guessing no"])]) + if test "$gl_cv_func_utimensat_works" != yes; then + REPLACE_UTIMENSAT=1 + AC_LIBOBJ([utimensat]) + fi + fi +]) diff --git a/m4/vasnprintf.m4 b/m4/vasnprintf.m4 index 50a20cc..ebe3c52 100644 --- a/m4/vasnprintf.m4 +++ b/m4/vasnprintf.m4 @@ -1,4 +1,4 @@ -# vasnprintf.m4 serial 29 +# vasnprintf.m4 serial 31 dnl Copyright (C) 2002-2004, 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -54,6 +54,7 @@ AC_DEFUN([gl_PREREQ_PRINTF_PARSE], # Prerequisites of lib/vasnprintf.c. AC_DEFUN_ONCE([gl_PREREQ_VASNPRINTF], [ + AC_REQUIRE([AC_C_INLINE]) AC_REQUIRE([AC_FUNC_ALLOCA]) AC_REQUIRE([AC_TYPE_LONG_LONG_INT]) AC_REQUIRE([gt_TYPE_WCHAR_T]) @@ -62,6 +63,17 @@ AC_DEFUN_ONCE([gl_PREREQ_VASNPRINTF], dnl Use the _snprintf function only if it is declared (because on NetBSD it dnl is defined as a weak alias of snprintf; we prefer to use the latter). AC_CHECK_DECLS([_snprintf], , , [#include ]) + dnl We can avoid a lot of code by assuming that snprintf's return value + dnl conforms to ISO C99. So check that. + AC_REQUIRE([gl_SNPRINTF_RETVAL_C99]) + case "$gl_cv_func_snprintf_retval_c99" in + *yes) + AC_DEFINE([HAVE_SNPRINTF_RETVAL_C99], [1], + [Define if the return value of the snprintf function is the number of + of bytes (excluding the terminating NUL) that would have been produced + if the buffer had been large enough.]) + ;; + esac ]) # Extra prerequisites of lib/vasnprintf.c for supporting 'long double' diff --git a/m4/wchar_h.m4 b/m4/wchar_h.m4 index 0bce51c..8cae82d 100644 --- a/m4/wchar_h.m4 +++ b/m4/wchar_h.m4 @@ -7,7 +7,7 @@ dnl with or without modifications, as long as this notice is preserved. dnl Written by Eric Blake. -# wchar_h.m4 serial 32 +# wchar_h.m4 serial 33 AC_DEFUN([gl_WCHAR_H], [ @@ -107,9 +107,9 @@ AC_DEFUN([gl_WCHAR_MODULE_INDICATOR], [ dnl Use AC_REQUIRE here, so that the default settings are expanded once only. AC_REQUIRE([gl_WCHAR_H_DEFAULTS]) - GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1 + gl_MODULE_INDICATOR_SET_VARIABLE([$1]) dnl Define it also as a C macro, for the benefit of the unit tests. - gl_MODULE_INDICATOR([$1]) + gl_MODULE_INDICATOR_FOR_TESTS([$1]) ]) AC_DEFUN([gl_WCHAR_H_DEFAULTS], diff --git a/m4/wchar_t.m4 b/m4/wchar_t.m4 index ed804e6..a133e6a 100644 --- a/m4/wchar_t.m4 +++ b/m4/wchar_t.m4 @@ -1,4 +1,4 @@ -# wchar_t.m4 serial 3 (gettext-0.18) +# wchar_t.m4 serial 4 (gettext-0.18.2) dnl Copyright (C) 2002-2003, 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -11,9 +11,13 @@ dnl Prerequisite: AC_PROG_CC AC_DEFUN([gt_TYPE_WCHAR_T], [ AC_CACHE_CHECK([for wchar_t], [gt_cv_c_wchar_t], - [AC_TRY_COMPILE([#include - wchar_t foo = (wchar_t)'\0';], , - [gt_cv_c_wchar_t=yes], [gt_cv_c_wchar_t=no])]) + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include + wchar_t foo = (wchar_t)'\0';]], + [[]])], + [gt_cv_c_wchar_t=yes], + [gt_cv_c_wchar_t=no])]) if test $gt_cv_c_wchar_t = yes; then AC_DEFINE([HAVE_WCHAR_T], [1], [Define if you have the 'wchar_t' type.]) fi diff --git a/m4/wcrtomb.m4 b/m4/wcrtomb.m4 index 19c0c5f..0de262e 100644 --- a/m4/wcrtomb.m4 +++ b/m4/wcrtomb.m4 @@ -1,4 +1,4 @@ -# wcrtomb.m4 serial 4 +# wcrtomb.m4 serial 6 dnl Copyright (C) 2008-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -10,37 +10,38 @@ AC_DEFUN([gl_FUNC_WCRTOMB], AC_REQUIRE([AC_TYPE_MBSTATE_T]) gl_MBSTATE_T_BROKEN - if test $REPLACE_MBSTATE_T = 1; then - REPLACE_WCRTOMB=1 - fi + AC_CHECK_FUNCS_ONCE([wcrtomb]) if test $ac_cv_func_wcrtomb = no; then HAVE_WCRTOMB=0 - fi - if test $HAVE_WCRTOMB != 0 && test $REPLACE_WCRTOMB != 1; then - dnl On AIX 4.3, OSF/1 5.1 and Solaris 10, wcrtomb (NULL, 0, NULL) sometimes - dnl returns 0 instead of 1. - AC_REQUIRE([AC_PROG_CC]) - AC_REQUIRE([gt_LOCALE_FR]) - AC_REQUIRE([gt_LOCALE_FR_UTF8]) - 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 return value is correct], - [gl_cv_func_wcrtomb_retval], - [ - dnl Initial guess, used when cross-compiling or when no suitable locale - dnl is present. + else + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_WCRTOMB=1 + else + dnl On AIX 4.3, OSF/1 5.1 and Solaris 10, wcrtomb (NULL, 0, NULL) sometimes + dnl returns 0 instead of 1. + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([gt_LOCALE_FR]) + AC_REQUIRE([gt_LOCALE_FR_UTF8]) + 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 return value is correct], + [gl_cv_func_wcrtomb_retval], + [ + dnl Initial guess, used when cross-compiling or when no suitable locale + dnl is present. changequote(,)dnl - case "$host_os" in - # Guess no on AIX 4, OSF/1 and Solaris. - aix4* | osf* | solaris*) gl_cv_func_wcrtomb_retval="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_wcrtomb_retval="guessing yes" ;; - esac + case "$host_os" in + # Guess no on AIX 4, OSF/1 and Solaris. + aix4* | osf* | solaris*) gl_cv_func_wcrtomb_retval="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_wcrtomb_retval="guessing yes" ;; + esac changequote([,])dnl - if test $LOCALE_FR != none || test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then - AC_TRY_RUN([ + if test $LOCALE_FR != none || test $LOCALE_FR_UTF8 != none || test $LOCALE_JA != none || test $LOCALE_ZH_CN != none; then + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #include #include @@ -68,16 +69,17 @@ int main () return 1; } return 0; -}], - [gl_cv_func_wcrtomb_retval=yes], - [gl_cv_func_wcrtomb_retval=no], - [:]) - fi - ]) - case "$gl_cv_func_wcrtomb_retval" in - *yes) ;; - *) REPLACE_WCRTOMB=1 ;; - esac +}]])], + [gl_cv_func_wcrtomb_retval=yes], + [gl_cv_func_wcrtomb_retval=no], + [:]) + fi + ]) + case "$gl_cv_func_wcrtomb_retval" in + *yes) ;; + *) REPLACE_WCRTOMB=1 ;; + esac + fi fi if test $HAVE_WCRTOMB = 0 || test $REPLACE_WCRTOMB = 1; then gl_REPLACE_WCHAR_H diff --git a/m4/wctype_h.m4 b/m4/wctype_h.m4 index 83daffc..bc6b6e7 100644 --- a/m4/wctype_h.m4 +++ b/m4/wctype_h.m4 @@ -1,4 +1,4 @@ -# wctype_h.m4 serial 5 +# wctype_h.m4 serial 8 dnl A placeholder for ISO C99 , for platforms that lack it. @@ -20,6 +20,22 @@ AC_DEFUN([gl_WCTYPE_H], HAVE_ISWCNTRL=0 fi AC_SUBST([HAVE_ISWCNTRL]) + AC_CHECK_FUNCS_ONCE([iswblank]) + AC_CHECK_DECLS_ONCE([iswblank]) + if test $ac_cv_func_iswblank = yes; then + HAVE_ISWBLANK=1 + REPLACE_ISWBLANK=0 + else + HAVE_ISWBLANK=0 + if test $ac_cv_have_decl_iswblank = yes; then + REPLACE_ISWBLANK=1 + else + REPLACE_ISWBLANK=0 + fi + fi + AC_SUBST([HAVE_ISWBLANK]) + AC_SUBST([REPLACE_ISWBLANK]) + AC_CHECK_HEADERS_ONCE([wctype.h]) AC_REQUIRE([AC_C_INLINE]) diff --git a/m4/wcwidth.m4 b/m4/wcwidth.m4 index ef5404e..ac357f3 100644 --- a/m4/wcwidth.m4 +++ b/m4/wcwidth.m4 @@ -1,4 +1,4 @@ -# wcwidth.m4 serial 15 +# wcwidth.m4 serial 17 dnl Copyright (C) 2006-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -34,16 +34,15 @@ AC_DEFUN([gl_FUNC_WCWIDTH], HAVE_DECL_WCWIDTH=0 fi - if test $ac_cv_func_wcwidth = no; then - REPLACE_WCWIDTH=1 - else + if test $ac_cv_func_wcwidth = yes; then dnl On MacOS X 10.3, wcwidth(0x0301) (COMBINING ACUTE ACCENT) returns 1. dnl On OSF/1 5.1, wcwidth(0x200B) (ZERO WIDTH SPACE) returns 1. dnl This leads to bugs in 'ls' (coreutils). AC_CACHE_CHECK([whether wcwidth works reasonably in UTF-8 locales], [gl_cv_func_wcwidth_works], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include /* AIX 3.2.5 declares wcwidth in . */ #include @@ -68,13 +67,15 @@ int main () if (wcwidth (0x0301) > 0 || wcwidth (0x200B) > 0) return 1; return 0; -}], [gl_cv_func_wcwidth_works=yes], [gl_cv_func_wcwidth_works=no], +}]])], + [gl_cv_func_wcwidth_works=yes], + [gl_cv_func_wcwidth_works=no], [ changequote(,)dnl case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_wcwidth_works="guessing yes";; - *) gl_cv_func_wcwidth_works="guessing no";; + # Guess yes on glibc and AIX 7 systems. + *-gnu* | aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; + *) gl_cv_func_wcwidth_works="guessing no";; esac changequote([,])dnl ]) @@ -84,11 +85,13 @@ changequote([,])dnl *no) REPLACE_WCWIDTH=1 ;; esac fi - if test $REPLACE_WCWIDTH = 1; then + if test $ac_cv_func_wcwidth != yes || test $REPLACE_WCWIDTH = 1; then AC_LIBOBJ([wcwidth]) fi - - if test $REPLACE_WCWIDTH = 1 || test $HAVE_DECL_WCWIDTH = 0; then + if test $ac_cv_func_wcwidth != yes || test $REPLACE_WCWIDTH = 1 \ + || test $HAVE_DECL_WCWIDTH = 0; then gl_REPLACE_WCHAR_H fi + dnl We don't substitute HAVE_WCWIDTH. We assume that if the system does not + dnl have the wcwidth function, then it does not declare it. ]) diff --git a/m4/wint_t.m4 b/m4/wint_t.m4 index a6c7d15..58ef865 100644 --- a/m4/wint_t.m4 +++ b/m4/wint_t.m4 @@ -1,4 +1,4 @@ -# wint_t.m4 serial 4 (gettext-0.18) +# wint_t.m4 serial 5 (gettext-0.18.2) dnl Copyright (C) 2003, 2007-2010 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -11,7 +11,9 @@ dnl Prerequisite: AC_PROG_CC AC_DEFUN([gt_TYPE_WINT_T], [ AC_CACHE_CHECK([for wint_t], [gt_cv_c_wint_t], - [AC_TRY_COMPILE([ + [AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ /* Tru64 with Desktop Toolkit C has a bug: must be included before . BSD/OS 4.0.1 has a bug: , and must be included @@ -20,8 +22,10 @@ AC_DEFUN([gt_TYPE_WINT_T], #include #include #include - wint_t foo = (wchar_t)'\0';], , - [gt_cv_c_wint_t=yes], [gt_cv_c_wint_t=no])]) + wint_t foo = (wchar_t)'\0';]], + [[]])], + [gt_cv_c_wint_t=yes], + [gt_cv_c_wint_t=no])]) if test $gt_cv_c_wint_t = yes; then AC_DEFINE([HAVE_WINT_T], [1], [Define if you have the 'wint_t' type.]) fi diff --git a/po/LINGUAS b/po/LINGUAS index fc16c2c..b846e7a 100644 --- a/po/LINGUAS +++ b/po/LINGUAS @@ -1,4 +1,5 @@ bg +ca cs da de diff --git a/po/Makevars b/po/Makevars index b459793..6694b1c 100644 --- a/po/Makevars +++ b/po/Makevars @@ -11,7 +11,7 @@ top_builddir = .. # These options get passed to xgettext. XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ \ - \ + \ --flag=_:1:pass-c-format\ --flag=N_:1:pass-c-format\ --flag=error:3:c-format --flag=error_at_line:5:c-format\ diff --git a/po/bg.gmo b/po/bg.gmo index a156b003e844e376608c928f2181f6e11ee42975..25b55fdff828625b790762ff654b6fa7942eea75 100644 GIT binary patch delta 9599 zcmYk>2V7Ux|HtuzTSP_0ffI2dh#;UME>xVLra5r{Zq0Cy#Qci;hnl-Ace%HrY30hj zO-(H`S7}+A{IdM_>zDO^y*Y>fzx(LJ^L);|-+RxzU$A`-b616Q9eNh2@M<{lTi%6L^Nu@hke{Z65OJOCfk3QJlIRIyqkHS*;AFPeO z)r}{+(6qWS)R|N)hD$LJH)3l%i+Xmk8phB*QxD5y9EM>E>cNY!A@0Gl_!M=&0zt-< z#Q$baTGKh*Pl z!Nv^05?Bi-q8hLPBk&N`!7LAjC<=ig##F)X*bmcCLv;t$z~68@`f)ckXf8Ivoi2Zh zk>tLiwr6pu&vivTXe{df8?iE;Lv_IOghG7^`I!*SNmG8PC#l#Dm!m%LEozGLGTy~8 z1Q}h^1hq~Ep&B*>)uFkV509eO%4sZu_nleDeLUuG3YxRxtUk?g2UI==Ic0V^@1j~< zlUi}`ULY9y9oOFV<>P!YzxE=HrKHWh2}e6xjuT6hE1fGpHvD#=|K zbyF8xVG8QToB5#!-$wN~Ki$=hgHb(B#tJwX*+gb0(sr{B)xfLHTaxFS2NX1yKcX(I z$=$RV6HyOLN8M;2YE4{0P00_a270qHmDfYfaSv3(CZiv&LG6~ksFAyZYG4+6N>C`m z0tmoBEQKvlBanziaT3O22C~k~dDIPlM}59jw7otU^N_bgAMA*^u{Ub!k}&|&&=*%m zGyWwh?4UvqJdWJce2eN)xd!wO8>3p@2GyX!sD?~HO~ra-eVWUz{x4KRLYQbxNjU2M z^-&qF&59EI#!7JE`*^T3c9cXvJ*`=)R4}=(zqNoLc39Oc?tvYYt-ldL~TR= zrgrX|p|;sTR7b{QVO)T^?<&;L??HXubIhH%i^ZvUjukLptR1qdsG*KSHDna(hO<#U zScV$nb*Khz#)^0dwK#91dR(BHH5fJ030998MM3-gZDc{3Q>Y%jL`KWi?TAR=e03d`#+vS9xBG8dXk1}`83qr z??mb}>JcargH#Z>Wp6G=fs-yHRV z=!yZ@2Q`#aFb}Rm_2_+!#e=BT{1W-k1huyJ8G+@^v62Tu48!xQ9Z1P9&oqGz9f#nt|%^3e{#Wc26mynF z2F6rC)|sh46xD$H7>d4~txa$g z`EU%zJLruCU$yu3Lp?AOwQXNPcC49&zC7QYrJ$j^g_ZFa)C2sw*!t#Jm^=|{;Slu0 zWzMY_NPYx|;R6i9_Fd^Ujz_Jn+o%Q>U>?FS5*um%_otv6uSNCrA_m}dY>9r|?fFF1 zjc227up8Cjd#E*&tA{lZ^#*N@0ho;HaXRYy6R7vZBMj&Hrch7b|JVrC^YN$`$9m@( zWFwd-s0P$yDeK*yge7nis{SqKepG|*p&n#<+0|YR)v!9K5$TAYvJ}!N_~F~Ad>d-0 zPN8n}Z)C1avEKHL7>F9NDAa>foEaELo{3TTJ8Er(_OXjE0e6v)MJ>vzeHnkXq(fi3 zttR0^@`dQ<#YiOCDVdvW=Xek5!C#<8$}7d*C=7L&TJqDE$=%XecT^3zxjuc5Ag zmcsZ)Qz+NZjzAZTAs>nnxE?jvH?bJz?{8mF{^(C0i$yUJb=@$`i|?WK{aS2{n@}&d zhgcka2H4$H$wNUy*Z~7^0#?QMureM&HRL{OarzCk=VMS)lZ4^u!7{iTHRNZJca8Z0 z*-)nbAUm~lQ9a*?v%UD-RSNZ~NE~AK?PBamz6v#mPf>FpIMhBM5}%SMpyn`!J;yYg z0oV>dL*38kHM@x8P$M%0r{i*$mmi+JCOjsAf*v>)N8kzUj8U)Kzl3I^Zu}z#Vck?a zWqpw?ZQeo6=~L85733zG!bTW?6L2an#{~2rnY|&*AY7&We~f~9n#^lV4_JomG;H-Pa^LaB{Dc#+56?FP zCfMItj$sq>dK2xp)i{hN{~TLk`8RCK`=fez1Y6=C7>lu!^giW9gAAhaO0)H;c#wP- z>iXf6`RfNiL{B({%5U05(iwA;Z^X{H73q|Di9R@Lirs!wusr!T)OI_Awec=$O7vSz za~yzb$R_N8epA`f_&RC?zne;XTTt*z=Z_BTfpu^tdgCR06~Dqo7&^@^wj-#9m1jlu z!-dE!n&(&x2h6aaTZC=NA7ToI&7^a<2pJ?3JeaXaFJl6FlE}1}wqq6i z9(AJ7LcS`o2bRGU%!iXubDNG@Oeatc@@9VY;6@m!^T@I>`%oQ^Z7RHh@3-yyAQ7X; z=VJprhRnA46Nl$w{-?iV_ixs__SM+;Jv$;9NDIwL=l95{nu04>p!g2BZ zV`P1q-%(RCWtDyKcIP8h2Le_b(}m}o&J?t`Hlc?8F={C5t+DU;G^|a&0yU@SP&fD$ zt6}xEcH1SOhW>r$4Xj7*z0NMSW;ld=CaS?dqo*{5((l`Eu`u)|Z;Car9jYOtu?z0U zCg}5lozr-1M!wp45Brk`uIF`*voIC^i>zleYyfG<$>=^L5G-C1V)Q!EijV z&12tWkKKj&w%egcJPV4VoS9-~X^B>1OPNKVvD3-D!76cPv8w9#+RKSQS6V z0{9zhB>(bIV8@xpyX*rlA{)V!+HF_u7S!s#<8r?}_65=wWY(h(`8KELfID##y*Y6Kp@QXFtzl3LM~VmYY{AYED8wwY#7%hLCT=V7!SznCqb3 z=OL)YwhyDw|B&7$yfsmCehDM6$YI-%X4sHC19jh1+46~BC}?gf9^qfXu?1?8{DEpv z@KL_gu@{!aE%+54LEY%x&+H5AB>Iw9KW4XQeN+R6Vl=LF`E~3{Uf?*>!t+gE3WYHh z3*ltv9L!C=6ldac?1B|f*cZdX#}{@HmEI|8sWe7vU)KD;SS0&fD#` z0Lzi@$8LD-JTs=22VbzitMx*=@&k75E2xyYYoxQ`zif$5j*4ZcL354&u4!DQ?} z{w=Cw5ue-qO-v`hfZegf6+03euQ2|qct(YWr1e$1dgo#!`9lmt|7-RGZE+*{Vr+~J zzOW-V0eh35N6l@}b^9C76x981I>T<*Z^hZDU6R*x)Ak?*E8|VlVr({aet}l!9*9$GH#nfx@@> z*9%NW4c${5izB|VJ^T)vu~uU4*eRKO*Z$Ia1siZ(t$TdEa()mV#cTKNn{w&5w&#zK zk@A?>@9YiV#^!wR32JeKJ+v*Ig_X&-p?Yu;{W0$&yH+Zp8rBGG!6f68_*UD@RCO?l8@dfGu zBYv_yJ&i5N{hwHqa3=W%q~|8&Dch6hn{*0l;Z>ZBp+DQX+lsBpzee?}$}|3%6*prj zw#%{&orsKZ_HRFs{qI9ERzEm8S+YB!Vs2gRj!^y2zkidQA~GmP5Ch%Gft0HdrO5UF z2Wv0sRH=k#zdJjE8Xa|=`MFYWKKLp1{fKfzJMt35M&p&G1gtP84r;M z{o^ye$d|f&6Xj5?nB`PVAc@3RP)8%m8;MB-^Oe0sRlk*3OEji_H|me>e;&hKQW{@( z<@`9sT{jPTU7C9Oyy~=Kat_|l+24ULQ7a^h*u_P^;U&U{atd*rvW|7cT=E*2LHt3~ zAx}dcRVnWwbbL(=aOIt-tq_ZzO|DWGRo4#=ZCD+HITw!a;QH(uHk`YD9kwN^yF3P4 zxbk?et?A18SU$>uE}!P)YtyjBJfy-#@w-X%5= ztH=|Hal~ij`pVNQt0S%<3K4V2bxfw*gV52OSgP^YX1zz~JsHPI{Zn+#F@nMc;xw_` zRZism|G2WqL;jxo%zg6FL>Y2kM20V-?Ek~uUDr^~IaX89TPmOCe*-5+;XFb|IJu5D zu(vImEw1hroayQo;V;B`>hy|>!UaT0%B_e+lyy9`m}NM@)y=^&W zmpDl1SW8{b@i~PZF6h z^)vB%oJ!m#rjxfOo>M+Y==h7MMHE-U;rW#x1-M8@dEyAso%oYTrM?TXQs;?R;VqTj z;Y)cj<>Z_SY(?D@>_}9m+!hz(3L@vIM)@d7i2C1}LbN-XhjK9G4p@jc=?Wi3D*`sm*}sOy?t^Z#|mJF`i(hQ3SQt$R3gT)jm> znITC#3KXdm9vTr95D^&@9vu=Mx#ZE{c|Hj#se{L*3?3L0&~I?&s3D(J&K#Ms+beVM NysR#n^X~^0`(I0aAUyy8 delta 9870 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 V&*BP4^WQC)&rKKSG`td0?mur+k*fdz diff --git a/po/bg.po b/po/bg.po index fc61453..1018f1e 100644 --- a/po/bg.po +++ b/po/bg.po @@ -9,14 +9,16 @@ # This file should be sent to translation@iro.umontreal.ca with the # following subject line: TP-Robot tar-1.16.bg.po # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.16\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2006-11-23 22:40+0200\n" "Last-Translator: Anton Zinoviev \n" "Language-Team: Bulgarian \n" +"Language: bg\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -94,7 +96,7 @@ msgstr "" "Съобщавайте за програмни грешки на %s.\n" "За грешки в българския превод на .\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Непозната системна грешка" @@ -106,8 +108,8 @@ msgstr "показва тази справка" msgid "give a short usage message" msgstr "показва кратко съобщение за използването" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "ИМЕ" @@ -145,56 +147,61 @@ msgstr "(ДЕФЕКТ В ПРОГРАМАТА) Опцията би трябва msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: опцията „%s“ е двусмислена\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: опцията „--%s“ не допуска аргумент\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: опцията „%c%s“ не допуска аргумент\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: опцията „%s“ изисква аргумент\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: непозната опция „--%s“\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: непозната опция „%c%s“\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: неправилна опция -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: опцията изисква аргумент -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: опцията „-W %s“ е двусмислена\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: опцията „-W %s“ не допуска аргумент\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: опцията „%s“ изисква аргумент\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "паметта е изчерпана" @@ -522,190 +529,190 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Не може да се стартира отдалечена командна обвивка" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Посоката за отместване е недопустима" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "На опция е подаден неправилен режим" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Неправилен размер: %s" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Мястото за позициониране е извън допустимия диапазон" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Неправилна дължина на лента" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Мястото за позициониране е извън допустимия диапазон" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Преждевременен край (eof)\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Вид основно действие:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Неочакван EOF" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "N" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "ФАЙЛ" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "Не може да се отвори „%s“" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "твърде много аргументи" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Непозната команда" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Това не прилича на tar-архив" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Общо записани байтове" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Общо прочетени байтове" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Общо изтрити байтове: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(канал)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Неправилна стойност на record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Не е посочено име на архив" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Не може да се проверяват архиви на стандартните вход/изход" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Архивът е компресиран. Използвайте опцията %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Не може да се актуализират компресирани архиви" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "В началото на лентата, край на изпълнението" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Твърде много грешки, край на изпълнението" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Размер на записа = %lu блок" msgstr[1] "Размер на записа = %lu блока" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Неподравнен блок (%lu байт) в архива" msgstr[1] "Неподравнен блок (%lu байта) в архива" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Невъзможно е връщане назад в архивния файл; той може да е нечитаем без опция " "-i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek не завърши при граница на запис" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: съдържа неправилен номер на том" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Препълване на номера на том" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Подгответе том №%d за %s и натиснете return: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "EOF, когато се очакваше отговор от потребителя" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "ВНИМАНИЕ: Архивът е незавършен" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -717,66 +724,66 @@ msgstr "" " q Прекратява tar\n" " y или return Продължава изпълнението\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Поражда вторична командна обвивка\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Извежда този списък\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Няма повече томове; изход.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Не е посочено име на файл. Опитайте отново.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Неправилна команда. Използвайте ? за справка.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "командата %s не успя" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s вероятно продължава в този том: заглавният запис съдържа отрязано име" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s не продължава с този том" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s е грешен размер (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Този том е извън поредицата" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Архивът не е етикетиран да отговаря на %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Томът %s не съответства на %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -784,7 +791,7 @@ msgstr "" "%s: името на файла е твърде дълго, за да се побере в заглавен запис на " "многотомен ГНУ-архив и бе съкратено" -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "EOF на архив %s не е на границата на блок" @@ -796,20 +803,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Само %lu от %lu байт можаха да се прочетат" msgstr[1] "Само %lu от %lu байта можаха да се прочетат" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Съдържанието се различава" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Неочакван знак за край (EOF) в архива" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Файловите типове се различават" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Режимите за достъп се различават" @@ -825,146 +832,146 @@ msgstr "Групите се различават" msgid "Mod time differs" msgstr "Времената на промяна се различават" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Размерите се различават" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Не е свързан с %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Символните връзки се различават" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Номерата на устройство се различават" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Проверка" -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Непознат файлов тип „%c“, сравнява се като обикновен файл" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Архивът съдържа файлови имена, с отстранени префикси." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Проверката може и да не открие оригиналните файлове." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "НЕУСПЕШНА ПРОВЕРКА: открита е %d неправилен заглавен запис" msgstr[1] "НЕУСПЕШНА ПРОВЕРКА: открити са %d неправилни заглавни записа" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Изолиран блок от нули при %s" -#: src/create.c:68 +#: src/create.c:72 #, fuzzy, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: каталогът е обозначен като кеш; не се архивира" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "" "стойността на %s е извън границите %s на диапазона %s..%s; замества се с %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "стойността %s е извън границите %s на диапазона %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Генерират се отрицателни осмични заглавни записи" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: файловото име е твърде дълго (максимум %d); не е архивирано" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" "%s: файловото име е твърде дълго (не може да се раздели); не е архивирано" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: името на символната връзка е твърде дълго; не е архивирано" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Файлът намаля с %s байт; допълва се с нула" msgstr[1] "%s: Файлът намаля с %s байта; допълва се с нули" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: файлът е в друга файлова система; не се архивира" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Непознат файлов тип; файлът се пренебрегва" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "Неархивирани връзки с %s.\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: файлът не е променен; не се архивира" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: файлът е архив; не се архивира" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 #, fuzzy msgid "directory not dumped" msgstr "%s: каталогът е обозначен като кеш; не се архивира" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: файлът бе изменен по време на четене" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: гнездото се пренебрегва" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: пренебрегва се специалният файл тип door" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Пропуска се до следващия заглавен запис" @@ -972,75 +979,75 @@ msgstr "Пропуска се до следващия заглавен запи msgid "Deleting non-header from archive" msgstr "Изтрива се незаглавен запис от архива" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: записано е невероятно старо време %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: записано е време %s, което е %s сек. в бъдещето" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Неочаквана несъгласуваност при създаване на каталог" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "" "%s: каталогът бе преименуван преди да може да се извлече състоянието му" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Продължаващи файлове се извличат като обикновени файлове" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Опитва се извличането на символни връзки като твърди" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Не може да се извлича -- файлът продължава с друг том" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Неочаквано дълъг заглавен запис" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Непознат файлов тип „%c“, извлича се като обикновен файл" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Текущият %s е по-нов или със същата възраст" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Не можа да се направи резервно копие на този файл" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Бе невъзможно %s да се преименува на %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Каталогът бе преименуват от %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Каталогът бе преименуван" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Каталогът е нов" @@ -1150,35 +1157,35 @@ msgstr "%s: Изтрива се %s\n" msgid "%s: Cannot remove" msgstr "%s: Не може да се изтрие" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Пропуска се" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "блок %s: ** Блок от знаци NUL **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "блок %s: ** Край на файла **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "блок %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Интервали в заглавен запис вместо числова стойност на %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1186,141 +1193,143 @@ msgstr "" "е допълнение до две" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Осмичната стойност %.*s в архива е извън диапазона за %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Архивът съдържа архаични заглавни записи по модул 64 (6 битови)" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" "Архивът е подписан с низ по модул 64 %s, който е е извън диапазона за %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Стойността по модул 256 в архива е извън диапазона %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Архивът съдържа %.*s, вместо това се очаква числова стойност на %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Стойността %s в архива е извън допустимия диапазон за %s (%s..%s)" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " връзка към %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " непознат файлов тип %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Дълга връзка--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Дълго име--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Заглавен запис на тома--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Продължава при байт %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Създава се каталог:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Не може да се смени работният каталог" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Преименува се %s на %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Не може да се преименува на %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Преименува се %s обратно на %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Не може да се запази работният каталог" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Не може да се смени работният каталог" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Файлът бе изтрит преди да бъде прочетен" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Файлът бе изтрит преди да бъде прочетен" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "породен процес" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "междупроцесен канал" -#: src/names.c:601 +#: src/names.c:594 #, fuzzy msgid "Pattern matching characters used in file names" msgstr "Във файловите имена са използвани „*“ и „?“. Моля," -#: src/names.c:603 +#: src/names.c:596 #, fuzzy msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "използвайте --wildcards, за да позволите съпоставяне с образци," -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Не е открит в архива" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Необходимо срещане не е открито в архива" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Архивът не е етикетиран да отговаря на %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1346,7 +1355,7 @@ msgstr "" "Непознат начин за извеждане на спец. знаци „%s“. Използвайте „%s --quoting-" "style=help“, за да получите списък." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1365,7 +1374,7 @@ msgstr "" "tar\n" " tar -xf архив.tar # Извлича от архив.tar всички файлове\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1387,79 +1396,79 @@ msgstr "" "иначе\n" " never, simple винаги да се правят прости резервни копия\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Вид основно действие:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "изрежда съдържанието на архив" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "извлича файлове от архива" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "създава нов архив" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "намира разликите между архива и файловата система" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "добавя файлове в края на архив" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "добавя само файлове, по-нови от копието в архива" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "прибавя tar-файлове към архива" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "трие файлове от архива (не при магнитни ленти!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "проверява етикета на тома и завършва" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Модификатори на действието:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "работи ефективно с разредени файлове" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "ГОЛЯМ[.МАЛЪК]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "определя версията на формата разредени файлове (влече --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "със стар формат ГНУ за инкрементално архивиране" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "с новия формат на ГНУ за инкрем. архивиране" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "при нечитаеми файлове не завършва с грешка" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1471,122 +1480,122 @@ msgstr "" "list и когато списъкът от файлове е зададен или на командния ред, или с " "опция -T. Ако не е посочен N, се подразбира 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "архивът е с произволен достъп" -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "архивът е с произволен достъп" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Регулиране заместването на файлове:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "след записа опитва да провери архива" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "изтрива файловете след като ги добави в архива" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "при извличане не замества съществуващи файлове" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "не замества съществуващи файлове, ако са по-нови от копията им в архива" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "при извличане замества съществуващи файлове" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "изтрива всеки файл преди да извлича върху него" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "изпразва йерархията преди извличане на каталог" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "запазва метаданните на съществуващи каталози" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "при извличане замества метаданните на съществуващи каталози (подразбира се)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Избор на изходен поток:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "извлича файловете на стандартния изход" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "КОМАНДА" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "подава с канал всеки извлечен файл към КОМАНДА" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "игнорира кода на завършване на породени процеси" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "счита за грешка всеки ненулев код на завършване на породен процес" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Подход спрямо файловите атрибути:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "прави ИМЕ да е собственик на добавените файлове" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "прави ИМЕ да бъде групата на добавените файлове" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "ДАТА-ИЛИ-ФАЙЛ" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "прави времето на промяна на добавяни файлове като ДАТА-ИЛИ-ФАЙЛ" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "ПРОМЕНИ" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "модифицира режима за достъп на добавени файлове" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "МЕТОД" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1596,33 +1605,33 @@ msgstr "" "времената след четене (при МЕТОД=„replace“, подразбира се), или не променя " "имената изобщо (МЕТОД=„system“)" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "не извлича времето на промяна на файловете" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "опитва да възстановява собствеността на файловете" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "извлича файловете от ваше име" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "използва числа вместо имена за потребител и група" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "възстановява точно (без umask) режима на достъп (подразбира се при " "привилегирован потребител)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1630,15 +1639,15 @@ msgstr "" "прилага umask на потребителя при извличане на файлове (подразбира се при " "обикновен потребител)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "файловете за извличане са сортирани според архива" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "същото като едновременно -p и -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1646,139 +1655,139 @@ msgstr "" "забавя настройката на времето на промяна и режима за достъп на извличаните " "каталози докато извличането завърши" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "отменя ефекта на --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Избор на устройство и смяна:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "АРХИВ" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "използва архивния файл или устройство АРХИВ" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "архивният файл е локален дори при двуеточие" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "използва посочената КОМАНДА вместо rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "използва посочената КОМАНДА вместо rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "посочва устройство и гъстота" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "създава/извежда/извлича многотомен архив" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "смяна на лентата след запис на 1024 x N байта" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "изпълнява скрипт в края на всяка лента (влече -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "ползва от и обновява във ФАЙЛ номера на тома" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Блокуване на устройството:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "БЛОКОВЕ" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "БЛОКОВЕ x 512 байта в секунда" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "прави N-байтови записи, кратно на 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "пренебрегва блоковете от нули и продължава" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "преформира при четене блоковете (канали 4.2BSD)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Избор на архивен формат:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "ФОРМАТ" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "създава архив с посочения формат" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "ФОРМАТ е някой от следните:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "стар формат tar, V7" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "формат на ГНУ при tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "формат на версия 1.13.x на tar на ГНУ" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "формат POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "формат POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "същото като pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "същото като --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "същото като --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "ключдума[[:]=стойност][,ключдума[[:]=стойност]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "управляващи ключови думи за pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "ТЕКСТ" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1786,176 +1795,176 @@ msgstr "" "създава архив с име на том ТЕКСТ; при извеждане или извличане сравнява името " "на тома с ТЕКСТ" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Противоречащи си опции за компресиране" -#: src/tar.c:615 +#: src/tar.c:616 #, fuzzy msgid "use archive suffix to determine the compression program" msgstr "Не може да се пише към компресиращата програма" -#: src/tar.c:617 +#: src/tar.c:618 #, fuzzy msgid "do not use archive suffix to determine the compression program" msgstr "Не може да се пише към компресиращата програма" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "ПРОГ" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "прекарва архива през ПРОГ (трябва да приема -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Избор на локален файл:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "добавя посочения ФАЙЛ към архива (полезно е, ако името му започва с минус)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "КАТ" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "работи в каталога КАТ" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "взема имената за извличане или създаване от ФАЙЛ" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T чете имена, завършващи с нулев байт" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "декодира „\\“ във файловите имена на -T (подразб.)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "не декодира „\\“ във файловите имена на -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "ОБРАЗЕЦ" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "без файловете, отговарящи на ОБРАЗЕЦ" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "пропуска файловете, отговарящи на образци в ФАЙЛ" -#: src/tar.c:657 +#: src/tar.c:658 #, fuzzy msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "без каталози, обозначени като кеширащи" -#: src/tar.c:660 +#: src/tar.c:661 #, fuzzy msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "без каталози, обозначени като кеширащи" -#: src/tar.c:663 +#: src/tar.c:664 #, fuzzy msgid "exclude directories containing CACHEDIR.TAG" msgstr "без каталози, обозначени като кеширащи" -#: src/tar.c:665 +#: src/tar.c:666 #, fuzzy msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "без каталози, обозначени като кеширащи" -#: src/tar.c:668 +#: src/tar.c:669 #, fuzzy msgid "exclude everything under directories containing FILE" msgstr "без каталози, обозначени като кеширащи" -#: src/tar.c:670 +#: src/tar.c:671 #, fuzzy msgid "exclude directories containing FILE" msgstr "без каталози, обозначени като кеширащи" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "без автоматично влизане в подкаталозите" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "работи в рамките на локалната файлова система" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "влиза рекурсивно в подкаталозите (подразбира се)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "не маха „/“ в началото на файлови имена" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "следва симв. връзки; архивира сочените файлове" -#: src/tar.c:686 +#: src/tar.c:687 #, fuzzy msgid "follow hard links; archive and dump the files they refer to" msgstr "следва симв. връзки; архивира сочените файлове" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "ЧЛЕН-ИМЕ" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "започва от файл с име ЧЛЕН-ИМЕ в архива" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "съхранява само файлове, по-нови от ДАТА-ИЛИ-ФАЙЛ" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "ДАТА" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "сравнява времето само ако данните са променени" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "МЕТОД" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "резервно копира съществуващи файлове с МЕТОД" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "НИЗ" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1964,98 +1973,98 @@ msgstr "" "освен ако не е бил сменен с променливата от обкръжението " "SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Промени на файловите имена:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "при извличане маха N начални каталози от файловите пътеки" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "ИЗРАЗ" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" "преобразува файловите имена, използвайки посочения ИЗРАЗ за замяна на sed" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Съпоставяне с файлови имена (влияе и на включващи, и на изключващи образци):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "пренебрегва разликата между големи/малки букви" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "съпоставянето с образците започва от началото на файловото име" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "съпоставянето започва след кой да е „/“ (подразбира се при изключване)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "отчита се разликата между малки и големи букви (подразбира се)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "ползва „*“ и „?“ (подразбира се за изключване)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "дословно низово сравнение" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "„/“ не пасва с „*“ и „?“" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "„/“ пасва с „*“ и „?“ (подразб. за изключване)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Извеждане на информация:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "подробно изрежда обработените файлове" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 #, fuzzy msgid "warning control" msgstr "Регулиране заместването на файлове:" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "извежда напредъка след всеки N-ти запис (подразбира се 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "съобщава, ако не всички твърди връзки са включени" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "СИГНАЛ" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2066,27 +2075,32 @@ msgstr "" "извежда текущите байтове при получаване на СИГНАЛ. Допустими СИГНАЛи са " "SIGHUP, SIGQUIT, SIGINT, SIGUSR1 и SIGUSR2; имената без SIG също са позволени" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "извежда времената по Гринуич" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "изпраща подробния изход във ФАЙЛ" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "показва номера на блок в архива с всяко съобщение" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "изисква потвърждение за всяко действие" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "показва подразбираното от tar" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2094,32 +2108,32 @@ msgstr "" "при извеждане или извличане изрежда всеки каталог, който се пропуска по " "някаква причина" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "показва преобразуваните файлови имена в архива" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "НАЧИН" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" "начин за цитиране на специални знаци; вж. по-долу за стойностите на НАЧИН" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "работи и със знаците от НИЗ като със специални" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "не работи със знаците от НИЗ като със специални" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Опции за съвместимост:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2127,64 +2141,64 @@ msgstr "" "при създаване е същото като --old-archive; при извличане е същото като --no-" "same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Други опции:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "забранява някои потенциално опасни опции" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Не може да се използва повече от една опция „-Acdtrux“" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Противоречащи си опции за компресиране" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Непознато име на сигнал: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Не е открит еталлонният файл за дата" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Използва се %s вместо непознатия файлов формат за дата %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Опция %s: Датата „%s“ се разглежда като %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: файловият списък вече е прочетен" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: файловото име съдържа нулев байт" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "прекарва архива през gzip" -#: src/tar.c:1290 +#: src/tar.c:1296 #, fuzzy msgid "Valid arguments for the --quoting-style option are:" msgstr "Правилни аргументи за опциите --quoting-style са:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2192,170 +2206,170 @@ msgstr "" "\n" "*Този* tar подразбира следното:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Неправилен фактор за блокуване" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Неправилна дължина на лента" -#: src/tar.c:1511 +#: src/tar.c:1529 #, fuzzy msgid "Invalid incremental level value" msgstr "Грешен инкрементален файлов формат" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Повече от една ограничителна дата" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Неправилна версия на формат разредени файлове" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' не се поддържа на тази платформа" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "стойността на --checkpoint не е цяло число" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Неправилна група" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "На опция е подаден неправилен режим" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Неправилно число" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Неправилен собственик" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Неправилен размер на запис" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Размерът на запис трябва да е кратен на %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Неправилен брой елементи" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Позволява се само една опция --to-command" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Лошо образуван аргумент за гъстота: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Непозната гъстота: „%c“" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Опциите „-[0-7][lmh]“ не се поддържат от *този* tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[ФАЙЛ]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Старата опция „%c“ изисква аргумент." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "без списък файлове опцията --occurrence е безсмислена" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "не може да се използва --occurrence при пожелания начин на работа" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Използването на много архивни файлове изисква опция „-M“" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Не може да се съчетават --listed-incremental с --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 #, fuzzy msgid "--level is meaningless without --listed-incremental" msgstr "без списък файлове опцията --occurrence е безсмислена" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Етикетът на тома е твърде дълъг (не повече от %lu байт)" msgstr[1] "%s: Етикетът на тома е твърде дълъг (не повече от %lu байта)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Не може да се проверяват многотомни архиви" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Не може да се проверяват компресирани архиви" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Не може да се използват многотомни компресирани архиви" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Не може да се съединяват компресирани архиви" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" "опцията --pax-option може да се използва само при архиви във формат POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Страхлив отказ да се създава празен архив" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Опциите „-Aru“ са несъвместими с „-f -“" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Трябва да посочите поне една от опциите „-Acdtrux“" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2367,88 +2381,88 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Файлът намаля с %s байт" msgstr[1] "%s: Файлът намаля с %s байта" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Ключовата дума %s е непозната или все още не е реализирана" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Записано е време извън допустимия диапазон" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Образецът %s не може да се използва" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Ключовата дума %s не може да се отмени" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Лошо формиран разширен заглавен запис: не е посочена дължина" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Дължината на разширен заглавен запис е извън допустимия диапазон" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Дължината %*s на разширен заглавен запис е извън допустимия диапазон" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Лошо формиран разширен заглавен запис: липсва интервал след дължината" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Лошо формиран разширен заглавен запис: липсва знак за равенство" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Лошо формиран разширен заглавен запис: липсва знак за нов ред" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" "Пренебрегва се непознатата ключова дума „%s“ за разширен заглавен запис" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" -"Генерираната двойка <ключова дума, стойност> е твърде дълга (ключова дума=%" -"s, дължина=%s)" +"Генерираната двойка <ключова дума, стойност> е твърде дълга (ключова дума=" +"%s, дължина=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Разширеният заглавен запис %s=%s е извън диапазона %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Неправилно формиран разширен заглавен запис: неправилен %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Неправилно формиран разширен заглавен запис: прекомерен %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Лошо формиран разширен заглавен запис: неправилен %s; очаква се разделител %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2490,7 +2504,7 @@ msgstr "Контролна точка при запис %u" msgid "Read checkpoint %u" msgstr "Контролна точка при четене %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2498,73 +2512,73 @@ msgstr "" "genfile борави с файловете с данни за тестовия пакет GNU paxutils.\n" "ОПЦИИТЕ са:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Опции за създаването на файл:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "РАЗМЕР" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Създава файл с посочения РАЗМЕР" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Запис във файл ИМЕ вместо на стандартния изход" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Чете файловите имена от ФАЙЛ" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T чете имена, завършващи с нулев байт" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Попълва файла с посочения ОБРАЗЕЦ. ОБРАЗЕЦ може да бъде „default“ или „zeros“" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Размер на блок за разреден файл" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Генерира разреден файл. Останалата част от командния ред дава карта на файла." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 #, fuzzy msgid "Seek to the given offset before writing data" msgstr "след записа опитва да провери архива" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Опции за файлови статистики:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Извежда съдържанието на структурата stat за всеки файл. По подразбиране " "ФОРМАТ е: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Опции за синхронизирано изпълнение:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [ОПЦИЯ...]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 #, fuzzy msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " @@ -2573,21 +2587,21 @@ msgstr "" "Изпълнява посочената КОМАНДА. Полезно с --checkpoint и някоя от --cut, --" "append, --touch" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "Изпълнява посоченото действие (вж. по-долу) до достигането на контролна " "точка N" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Посочва дата за следващата опция --touch" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Извежда изпълнените контролни точки и кода на завършване на КОМАНДА" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2595,7 +2609,7 @@ msgstr "" "Синхронизирано изпълнение на действията. Те се изпълняват когато се достигне " "контролната точка с номер, посочен с --checkpoint." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2603,149 +2617,163 @@ msgstr "" "Отсича ФАЙЛ до размера, определен с предхождаща опция --length (подразбира " "се 0)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "Добавя РАЗМЕР байтове към ФАЙЛ. РАЗМЕРът се определя от предхождаща опция --" "length." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Обновява времето на достъп и промяна на FILE" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Изпълнява КОМАНДА" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Неправилен размер: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Номер извън допустимия диапазон: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Отрицателен размер: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "не успя stat(%s)" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Грешка при анализа на число до „%s“" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Непознат формат за дата" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[АРГУМ...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "Не може да се отвори „%s“" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Не може да се изпълни %s" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "името на файла съдържа нулев байт" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "не може да се създават разредени файлове на стандартния изход, използвайте " "опцията --file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "неправилна маска (до „%s“)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Непознато поле „%s“" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "не може да се смени времето на „%s“" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "Не може да се отвори „%s“" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Командата завърши успешно\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Командата завърши с код %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Командата бе прекратена със сигнал %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Командата бе спряна със сигнал %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Командата генерира core\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Командата бе прекратена\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat изисква файлови имена" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Не може да се запази работният каталог" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "Бе невъзможно %s да се преименува на %s" + +#~ msgid "suppress this warning." +#~ msgstr "или --no-wildcards, за да не се извежда това предупреждение." + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: неправилна опция -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Чете се %s\n" + #~ msgid "" #~ "\n" #~ "Report bugs to <%s>.\n" @@ -2753,15 +2781,6 @@ msgstr "--stat изисква файлови имена" #~ "\n" #~ "Съобщавайте за програмни грешки на <%s>.\n" -#~ msgid "Reading %s\n" -#~ msgstr "Чете се %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Грешката е непоправима: край на изпълнението" - -#~ msgid "suppress this warning." -#~ msgstr "или --no-wildcards, за да не се извежда това предупреждение." - #~ msgid "filter the archive through bzip2" #~ msgstr "прекарва архива през bzip2" @@ -2813,6 +2832,9 @@ msgstr "--stat изисква файлови имена" #~ msgid "Premature end of file" #~ msgstr "Преждевременен край на файла" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Грешката е непоправима: край на изпълнението" + #~ msgid "block size" #~ msgstr "блоковият размер" diff --git a/po/ca.gmo b/po/ca.gmo new file mode 100644 index 0000000000000000000000000000000000000000..dc894349aea03ae84ed3c40ca8d29896cfd3388d GIT binary patch literal 59646 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 literal 0 HcmV?d00001 diff --git a/po/ca.po b/po/ca.po new file mode 100644 index 0000000..bc30fa8 --- /dev/null +++ b/po/ca.po @@ -0,0 +1,2767 @@ +# Catalan translation for tar. +# Copyright (C) 2010 Free Software Foundation, Inc. +# This file is distributed under the same license as the tar package. +# Àngel Mompó , 2010. +#: src/create.c:1550 +msgid "" +msgstr "" +"Project-Id-Version: tar-1.23.90\n" +"Report-Msgid-Bugs-To: bug-tar@gnu.org\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-18 20:14+0200\n" +"Last-Translator: Àngel Mompó \n" +"Language-Team: Catalan \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#: gnu/argmatch.c:135 +#, c-format +msgid "invalid argument %s for %s" +msgstr "el paràmetre %s no és vàlid per %s" + +#: gnu/argmatch.c:136 +#, c-format +msgid "ambiguous argument %s for %s" +msgstr "el paràmetre %s és ambigu per %s" + +#: gnu/argmatch.c:155 +#, c-format +msgid "Valid arguments are:" +msgstr "Els paràmetres vàlids són:" + +#: gnu/argp-help.c:149 +#, c-format +msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" +msgstr "ARGP_HELP_FMT: el valor de %s és més petit o igual que %s" + +#: gnu/argp-help.c:222 +#, c-format +msgid "%.*s: ARGP_HELP_FMT parameter requires a value" +msgstr "%.*s: El paràmetre ARGP_HELP_FMT necessita un valor" + +#: gnu/argp-help.c:228 +#, c-format +msgid "%.*s: ARGP_HELP_FMT parameter must be positive" +msgstr "%.*s: El paràmetre ARGP_HELP_FMT ha de ser positiu" + +#: gnu/argp-help.c:237 +#, c-format +msgid "%.*s: Unknown ARGP_HELP_FMT parameter" +msgstr "%.*s: Paràmetre ARGP_HELP_FMT desconegut" + +#: gnu/argp-help.c:249 +#, c-format +msgid "Garbage in ARGP_HELP_FMT: %s" +msgstr "Hi ha brossa a ARGP_HELP_FMT: %s" + +#: gnu/argp-help.c:1246 +msgid "" +"Mandatory or optional arguments to long options are also mandatory or " +"optional for any corresponding short options." +msgstr "" +"Els paràmetres obligatoris o opcionals per les opcions llargues també ho són " +"per les corresponents opcions curtes." + +#: gnu/argp-help.c:1639 +msgid "Usage:" +msgstr "Ús:" + +#: gnu/argp-help.c:1643 +msgid " or: " +msgstr " o: " + +#: gnu/argp-help.c:1655 +msgid " [OPTION...]" +msgstr " [OPCIÓ...]" + +#: gnu/argp-help.c:1682 +#, c-format +msgid "Try `%s --help' or `%s --usage' for more information.\n" +msgstr "Proveu «%s --help» o «%s --usage» per més informació.\n" + +#: gnu/argp-help.c:1710 +#, c-format +msgid "Report bugs to %s.\n" +msgstr "Informeu dels errors de programació a %s.\n" + +#: gnu/argp-help.c:1929 gnu/error.c:183 +msgid "Unknown system error" +msgstr "Error de sistema desconegut" + +#: gnu/argp-parse.c:83 +msgid "give this help list" +msgstr "dóna aquesta llista d'ajuda" + +#: gnu/argp-parse.c:84 +msgid "give a short usage message" +msgstr "dóna un missatge curt sobre utilització" + +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 +msgid "NAME" +msgstr "NOM" + +#: gnu/argp-parse.c:85 +msgid "set the program name" +msgstr "definiu el nom del programa" + +#: gnu/argp-parse.c:86 +msgid "SECS" +msgstr "SEGS" + +#: gnu/argp-parse.c:87 +msgid "hang for SECS seconds (default 3600)" +msgstr "es penja durant SECS segons (per defecte 3600)" + +#: gnu/argp-parse.c:144 +msgid "print program version" +msgstr "mostra la versió del programa" + +#: gnu/argp-parse.c:160 +#, c-format +msgid "(PROGRAM ERROR) No version known!?" +msgstr "(ERROR DE PROGRAMA) Versió desconeguda!?" + +#: gnu/argp-parse.c:613 +#, c-format +msgid "%s: Too many arguments\n" +msgstr "%s: Massa paràmetres\n" + +#: gnu/argp-parse.c:756 +msgid "(PROGRAM ERROR) Option should have been recognized!?" +msgstr "(ERROR DE PROGRAMA) Hauria de conèixer l'opció!?" + +#: gnu/closeout.c:114 +msgid "write error" +msgstr "error d'escriptura" + +#: gnu/getopt.c:529 gnu/getopt.c:545 +#, c-format +msgid "%s: option '%s' is ambiguous\n" +msgstr "%s: l'opció «%s» és ambigua\n" + +#: gnu/getopt.c:578 gnu/getopt.c:582 +#, c-format +msgid "%s: option '--%s' doesn't allow an argument\n" +msgstr "%s: l'opció «--%s» no permet cap paràmetre\n" + +#: gnu/getopt.c:591 gnu/getopt.c:596 +#, c-format +msgid "%s: option '%c%s' doesn't allow an argument\n" +msgstr "%s: l'opció «%c%s» no permet cap paràmetre\n" + +#: gnu/getopt.c:639 gnu/getopt.c:658 +#, c-format +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: l'opció «--%s» necessita un paràmetre\n" + +#: gnu/getopt.c:696 gnu/getopt.c:699 +#, c-format +msgid "%s: unrecognized option '--%s'\n" +msgstr "%s: opció no reconeguda «--%s»\n" + +#: gnu/getopt.c:707 gnu/getopt.c:710 +#, c-format +msgid "%s: unrecognized option '%c%s'\n" +msgstr "%s: opció no reconeguda «%c%s»\n" + +#: gnu/getopt.c:759 gnu/getopt.c:762 +#, c-format +msgid "%s: invalid option -- '%c'\n" +msgstr "%s: opció invàlida -- «%c»\n" + +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 +#, c-format +msgid "%s: option requires an argument -- '%c'\n" +msgstr "%s: l'opció necessita un paràmetre -- «%c»\n" + +#: gnu/getopt.c:885 gnu/getopt.c:901 +#, c-format +msgid "%s: option '-W %s' is ambiguous\n" +msgstr "%s: l'opció «-W %s» és ambigua\n" + +#: gnu/getopt.c:925 gnu/getopt.c:943 +#, c-format +msgid "%s: option '-W %s' doesn't allow an argument\n" +msgstr "%s: l'opció «-W %s» no permet cap paràmetre\n" + +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: l'opció «-W %s» necessita un paràmetre\n" + +#: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 +msgid "memory exhausted" +msgstr "memòria exhaurida" + +#: gnu/openat-die.c:36 +#, c-format +msgid "unable to record current working directory" +msgstr "No es pot desar el directori de treball actual" + +#: gnu/openat-die.c:54 +#, c-format +msgid "failed to return to initial working directory" +msgstr "No es pot tornar al directori de treball inicial" + +#. TRANSLATORS: +#. Get translations for open and closing quotation marks. +#. +#. The message catalog should translate "`" to a left +#. quotation mark suitable for the locale, and similarly for +#. "'". If the catalog has no translation, +#. locale_quoting_style quotes `like this', and +#. clocale_quoting_style quotes "like this". +#. +#. For example, an American English Unicode locale should +#. translate "`" to U+201C (LEFT DOUBLE QUOTATION MARK), and +#. should translate "'" to U+201D (RIGHT DOUBLE QUOTATION +#. MARK). A British English Unicode locale should instead +#. translate these to U+2018 (LEFT SINGLE QUOTATION MARK) +#. and U+2019 (RIGHT SINGLE QUOTATION MARK), respectively. +#. +#. If you don't know what to put here, please see +#. +#. and use glyphs suitable for your language. +#: gnu/quotearg.c:274 +msgid "`" +msgstr "«" + +#: gnu/quotearg.c:275 +msgid "'" +msgstr "»" + +#. TRANSLATORS: A regular expression testing for an affirmative answer +#. (english: "yes"). Testing the first character may be sufficient. +#. Take care to consider upper and lower case. +#. To enquire the regular expression that your system uses for this +#. purpose, you can use the command +#. locale -k LC_MESSAGES | grep '^yesexpr=' +#: gnu/rpmatch.c:149 +msgid "^[yY]" +msgstr "^[sS]" + +#. TRANSLATORS: A regular expression testing for a negative answer +#. (english: "no"). Testing the first character may be sufficient. +#. Take care to consider upper and lower case. +#. To enquire the regular expression that your system uses for this +#. purpose, you can use the command +#. locale -k LC_MESSAGES | grep '^noexpr=' +#: gnu/rpmatch.c:162 +msgid "^[nN]" +msgstr "^[nN]" + +#: gnu/version-etc.c:76 +#, c-format +msgid "Packaged by %s (%s)\n" +msgstr "Empaquetat per %s (%s)\n" + +#: gnu/version-etc.c:79 +#, c-format +msgid "Packaged by %s\n" +msgstr "Empaquetat per %s\n" + +#. TRANSLATORS: Translate "(C)" to the copyright symbol +#. (C-in-a-circle), if this symbol is available in the user's +#. locale. Otherwise, do not translate "(C)"; leave it as-is. +#: gnu/version-etc.c:86 +msgid "(C)" +msgstr "(C)" + +#: gnu/version-etc.c:88 +msgid "" +"\n" +"License GPLv3+: GNU GPL version 3 or later .\n" +"This is free software: you are free to change and redistribute it.\n" +"There is NO WARRANTY, to the extent permitted by law.\n" +"\n" +msgstr "" +"\n" +"Llicència GPLV3+: GNU GPL versió 3 o posterior \n" +"Això és programari lliure: podeu modificar-lo i redistribuir-lo si voleu.\n" +"No hi ha CAP GARANTIA, en la mesura que ho permeti la llei.\n" + +#. TRANSLATORS: %s denotes an author name. +#: gnu/version-etc.c:104 +#, c-format +msgid "Written by %s.\n" +msgstr "Escrit per %s. \n" + +#. TRANSLATORS: Each %s denotes an author name. +#: gnu/version-etc.c:108 +#, c-format +msgid "Written by %s and %s.\n" +msgstr "Escrit per %s i %s. \n" + +#. TRANSLATORS: Each %s denotes an author name. +#: gnu/version-etc.c:112 +#, c-format +msgid "Written by %s, %s, and %s.\n" +msgstr "Escrit per %s, %s, i %s. \n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: gnu/version-etc.c:119 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"and %s.\n" +msgstr "" +"Escrit per %s, %s, %s,\n" +"i %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: gnu/version-etc.c:126 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, and %s.\n" +msgstr "" +"Escrit per %s, %s, %s,\n" +"%s, i %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: gnu/version-etc.c:133 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, and %s.\n" +msgstr "" +"Escrit per %s, %s, %s,\n" +"%s, %s, i %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: gnu/version-etc.c:141 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, and %s.\n" +msgstr "" +"Escrit per %s, %s, %s,\n" +"%s, %s, %s, i %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: gnu/version-etc.c:149 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"and %s.\n" +msgstr "" +"Escrit per %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"i %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: gnu/version-etc.c:158 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, and %s.\n" +msgstr "" +"Escrit per %s,·%s,·%s \n" +"%s,·%s,·%s,·%s,\n" +"%s,·and·%s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: gnu/version-etc.c:169 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, %s, and others.\n" +msgstr "" +"Escrit per %s,·%s,·%s,\n" +"%s,·%s,·%s,·%s,\n" +"%s,·%s,·i d'altres.\n" + +#. TRANSLATORS: The placeholder indicates the bug-reporting address +#. for this package. Please add _another line_ saying +#. "Report translation bugs to <...>\n" with the address for translation +#. bugs (typically your translation team's web or email address). +#: gnu/version-etc.c:247 +#, c-format +msgid "" +"\n" +"Report bugs to: %s\n" +msgstr "" +"\n" +"Informeu dels errors a <%s>.\n" + +#: gnu/version-etc.c:249 +#, c-format +msgid "Report %s bugs to: %s\n" +msgstr "Informeu %s errors a: %s\n" + +#: gnu/version-etc.c:253 +#, c-format +msgid "%s home page: <%s>\n" +msgstr "%s pàgina inicial <%s>\n" + +#: gnu/version-etc.c:255 +#, c-format +msgid "%s home page: \n" +msgstr "%s pàgina inicial: \n" + +#: gnu/version-etc.c:258 +msgid "General help using GNU software: \n" +msgstr "" +"Ajuda general per quan es fa servir programari de GNU: \n" + +#. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. +#. Directly translating this to another language will not work, first because +#. %s itself is not translated. +#. Translate it as `%s: Function %s failed'. +#: lib/paxerror.c:58 lib/paxerror.c:71 +#, c-format +msgid "%s: Cannot %s" +msgstr "%s: No es pot %s" + +#. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. +#. Directly translating this to another language will not work, first because +#. %s itself is not translated. +#. Translate it as `%s: Function %s failed'. +#: lib/paxerror.c:84 +#, c-format +msgid "%s: Warning: Cannot %s" +msgstr "%s: Avís: No es pot %s" + +#: lib/paxerror.c:93 +#, c-format +msgid "%s: Cannot change mode to %s" +msgstr "%s: No es pot canviar el mode a %s" + +#: lib/paxerror.c:101 +#, c-format +msgid "%s: Cannot change ownership to uid %lu, gid %lu" +msgstr "%s: No es pot canviar la titularitat a uid %lu, gid %lu" + +#: lib/paxerror.c:127 +#, c-format +msgid "%s: Cannot hard link to %s" +msgstr "%s: No es pot crear l'enllaç dur amb %s" + +#: lib/paxerror.c:179 lib/paxerror.c:211 +#, c-format +msgid "%s: Read error at byte %s, while reading %lu byte" +msgid_plural "%s: Read error at byte %s, while reading %lu bytes" +msgstr[0] "%s: Error de lectura al byte %s, quan s'estava llegint %lu byte" +msgstr[1] "%s: Error de lectura al byte %s, quan s'estaven llegint %lu bytes" + +#: lib/paxerror.c:192 +#, c-format +msgid "%s: Warning: Read error at byte %s, while reading %lu byte" +msgid_plural "%s: Warning: Read error at byte %s, while reading %lu bytes" +msgstr[0] "" +"%s: Avís: Error de lectura al byte %s, quan s'estava llegint %lu byte" +msgstr[1] "%s: Error de lectura al byte %s, quan s'estaven llegint %lu bytes" + +#: lib/paxerror.c:259 +#, c-format +msgid "%s: Cannot seek to %s" +msgstr "%s: No es pot buscar a %s" + +#: lib/paxerror.c:275 +#, c-format +msgid "%s: Warning: Cannot seek to %s" +msgstr "%s: Avís: No es pot buscar a %s" + +#: lib/paxerror.c:284 +#, c-format +msgid "%s: Cannot create symlink to %s" +msgstr "%s: No es pot crear l'enllaç simbòlic a %s" + +#: lib/paxerror.c:349 +#, c-format +msgid "%s: Wrote only %lu of %lu byte" +msgid_plural "%s: Wrote only %lu of %lu bytes" +msgstr[0] "%s: S'ha escrit només %lu de %lu byte" +msgstr[1] "%s: S'han escrit només %lu de %lu bytes" + +#: lib/paxnames.c:155 +#, c-format +msgid "Removing leading `%s' from member names" +msgstr "Es treuen les primeres «%s» dels noms dels membres" + +#: lib/paxnames.c:156 +#, c-format +msgid "Removing leading `%s' from hard link targets" +msgstr "Es treuen les primeres «%s» dels objectius dels enllaços durs" + +#: lib/paxnames.c:169 +msgid "Substituting `.' for empty member name" +msgstr "Se substitueixen «.» per noms buits de membres" + +#: lib/paxnames.c:170 +msgid "Substituting `.' for empty hard link target" +msgstr "Se substitueixen «.» per objectius buits d'enllaços durs" + +#: lib/rtapelib.c:299 +#, c-format +msgid "exec/tcp: Service not available" +msgstr "exec/tcp: El servei no està disponible" + +#: lib/rtapelib.c:303 +#, c-format +msgid "stdin" +msgstr "stdin" + +#: lib/rtapelib.c:306 +#, c-format +msgid "stdout" +msgstr "stdout" + +#: lib/rtapelib.c:429 +#, c-format +msgid "Cannot connect to %s: resolve failed" +msgstr "No es pot connectar amb %s: no s'ha pogut resoldre" + +#: lib/rtapelib.c:515 +#, c-format +msgid "Cannot execute remote shell" +msgstr "No es pot executar un interpret d'ordres remot" + +#: rmt/rmt.c:432 +msgid "Seek direction out of range" +msgstr "La direcció de cerca està fora de rang" + +#: rmt/rmt.c:438 +msgid "Invalid seek direction" +msgstr "La direcció de cerca no és vàlida" + +#: rmt/rmt.c:446 +msgid "Invalid seek offset" +msgstr "L'òfset de cerca no és vàlid" + +#: rmt/rmt.c:452 +msgid "Seek offset out of range" +msgstr "L'òfset de cerca està fora de rang" + +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 +msgid "Invalid byte count" +msgstr "La mida en bytes no és vàlida" + +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 +msgid "Byte count out of range" +msgstr "La mida en bytes està fora de rang" + +#: rmt/rmt.c:558 +msgid "Premature eof" +msgstr "Final del fitxer prematur" + +#: rmt/rmt.c:601 +msgid "Invalid operation code" +msgstr "El codi de l'operació no és vàlid" + +#: rmt/rmt.c:636 rmt/rmt.c:680 +msgid "Operation not supported" +msgstr "No se suporta la operació" + +#: rmt/rmt.c:664 +msgid "Unexpected arguments" +msgstr "Arguments inesperats" + +#: rmt/rmt.c:689 +msgid "Manipulate a tape drive, accepting commands from a remote process" +msgstr "Manipula una unitat de cinta, acceptant comandes d'un procés remot" + +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 +msgid "NUMBER" +msgstr "NÚMERO" + +#: rmt/rmt.c:697 +msgid "set debug level" +msgstr "estableix el nivell de depuració" + +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 +msgid "FILE" +msgstr "FITXER" + +#: rmt/rmt.c:699 +msgid "set debug output file name" +msgstr "estableix el nom del fitxer de sortida de la depuració" + +#: rmt/rmt.c:715 rmt/rmt.c:783 +#, c-format +msgid "cannot open %s" +msgstr "no es pot obrir %s" + +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 +#, c-format +msgid "too many arguments" +msgstr "massa arguments" + +#: rmt/rmt.c:822 +msgid "Garbage command" +msgstr "Ordre escombraria" + +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 +msgid "This does not look like a tar archive" +msgstr "No sembla un arxiu tar" + +#: src/buffer.c:450 src/buffer.c:459 +msgid "Total bytes written" +msgstr "Bytes totals escrits" + +#: src/buffer.c:457 src/buffer.c:471 +msgid "Total bytes read" +msgstr "Bytes totals llegits" + +#: src/buffer.c:461 +#, c-format +msgid "Total bytes deleted: %s\n" +msgstr "Bytes totals esborrats: %s\n" + +#: src/buffer.c:550 +msgid "(pipe)" +msgstr "(conducte)" + +#: src/buffer.c:573 +msgid "Invalid value for record_size" +msgstr "El valor de record_size no és vàlid" + +#: src/buffer.c:576 +msgid "No archive name given" +msgstr "No s'ha donat el nom de l'arxiu" + +#: src/buffer.c:618 +msgid "Cannot verify stdin/stdout archive" +msgstr "No es pot verificar l'arxiu stdin/stdout" + +#: src/buffer.c:632 +#, c-format +msgid "Archive is compressed. Use %s option" +msgstr "L'arxiu està comprimit. Feu servir l'opció %s" + +#: src/buffer.c:689 src/tar.c:2448 +msgid "Cannot update compressed archives" +msgstr "No es poden actualitzar els arxius comprimits" + +#: src/buffer.c:782 +msgid "At beginning of tape, quitting now" +msgstr "Al principi de la cinta, se surt" + +#: src/buffer.c:788 +msgid "Too many errors, quitting" +msgstr "Massa errors, se surt" + +#: src/buffer.c:821 +#, c-format +msgid "Record size = %lu block" +msgid_plural "Record size = %lu blocks" +msgstr[0] "Mida del registre = %lu bloc" +msgstr[1] "Mida del registre = %lu blocs" + +#: src/buffer.c:842 +#, c-format +msgid "Unaligned block (%lu byte) in archive" +msgid_plural "Unaligned block (%lu bytes) in archive" +msgstr[0] "Bloc desalineat(byte %lu) a l'arxiu" +msgstr[1] "Bloc desalineat(bytes %lu) a l'arxiu" + +#: src/buffer.c:919 +msgid "Cannot backspace archive file; it may be unreadable without -i" +msgstr "" +"No es pot tornar enrere al fitxer d'arxiu; potser no es pot llegir sense -i" + +#: src/buffer.c:951 +msgid "rmtlseek not stopped at a record boundary" +msgstr "rmtlseek no s'ha aturat als límits d'un registre " + +#: src/buffer.c:1002 +#, c-format +msgid "%s: contains invalid volume number" +msgstr "%s: conté un número de volum invàlid" + +#: src/buffer.c:1037 +msgid "Volume number overflow" +msgstr "Desbordament del número de volum" + +#: src/buffer.c:1052 +#, c-format +msgid "Prepare volume #%d for %s and hit return: " +msgstr "Prepareu el volum #%d per %s i premeu retorn: " + +#: src/buffer.c:1058 +msgid "EOF where user reply was expected" +msgstr "Final del fitxer on s'esperava una resposta de l'usuari" + +#: src/buffer.c:1063 src/buffer.c:1095 +msgid "WARNING: Archive is incomplete" +msgstr "AVÍS: L'arxiu és incomplet" + +#: src/buffer.c:1077 +#, c-format +msgid "" +" n name Give a new file name for the next (and subsequent) volume(s)\n" +" q Abort tar\n" +" y or newline Continue operation\n" +msgstr "" +" n nom Dona el nom d'un fitxer nou pel següents (i següents) volum" +"(s)\n" +" q Interromp tar\n" +" y Continua l'operació\n" + +#: src/buffer.c:1082 +#, c-format +msgid " ! Spawn a subshell\n" +msgstr " ! Engendra un interpret d'ordres\n" + +#: src/buffer.c:1083 +#, c-format +msgid " ? Print this list\n" +msgstr " ? Mostra aquesta ajuda\n" + +#: src/buffer.c:1090 +msgid "No new volume; exiting.\n" +msgstr "No hi ha cap volum nou; se surt.\n" + +#: src/buffer.c:1123 +msgid "File name not specified. Try again.\n" +msgstr "No s'ha especificat cap nom de fitxer. Torneu-ho a provar.\n" + +#: src/buffer.c:1136 +#, c-format +msgid "Invalid input. Type ? for help.\n" +msgstr "Entrada invàlida. Tecleja ? per mostrar l'ajuda.\n" + +#: src/buffer.c:1187 +#, c-format +msgid "%s command failed" +msgstr "L'ordre %s ha fallat" + +#: src/buffer.c:1368 +#, c-format +msgid "%s is possibly continued on this volume: header contains truncated name" +msgstr "" +"%s possiblement continua en aquest volum: la capçalera conté un nom truncat" + +#: src/buffer.c:1372 +#, c-format +msgid "%s is not continued on this volume" +msgstr "%s no continua a aquest volum" + +#: src/buffer.c:1386 +#, c-format +msgid "%s is the wrong size (%s != %s + %s)" +msgstr "%s té una mida equivocada (%s != %s + %s)" + +#: src/buffer.c:1401 +#, c-format +msgid "This volume is out of sequence (%s - %s != %s)" +msgstr "Aquest volum és fora de la seqüència (%s - %s != %s)" + +#: src/buffer.c:1479 src/buffer.c:1505 +#, c-format +msgid "Archive not labeled to match %s" +msgstr "L'arxiu no està etiquetat per coincidir amb %s" + +#: src/buffer.c:1509 +#, c-format +msgid "Volume %s does not match %s" +msgstr "El Volum %s no coincideix amb %s" + +#: src/buffer.c:1603 +#, c-format +msgid "" +"%s: file name too long to be stored in a GNU multivolume header, truncated" +msgstr "" +"%s: El nom del fitxer és massa llarg per ser desat en una capçalera " +"multivolum GNU. S'ha truncat" + +#: src/buffer.c:1794 +msgid "write did not end on a block boundary" +msgstr "l'escriptura no ha acabat al límit d'un bloc" + +#: src/compare.c:95 +#, c-format +msgid "Could only read %lu of %lu byte" +msgid_plural "Could only read %lu of %lu bytes" +msgstr[0] "Només es pot llegir %lu de %lu byte" +msgstr[1] "Només es poden llegir %lu de %lu bytes" + +#: src/compare.c:105 src/compare.c:382 +msgid "Contents differ" +msgstr "El contingut no coincideix" + +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 +msgid "Unexpected EOF in archive" +msgstr "Final de l'arxiu inesperat" + +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 +msgid "File type differs" +msgstr "El tipus de fitxer no coincideix" + +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 +msgid "Mode differs" +msgstr "El mode no coincideix" + +#: src/compare.c:205 +msgid "Uid differs" +msgstr "L'identificador d'usuari no coincideix" + +#: src/compare.c:207 +msgid "Gid differs" +msgstr "L'identificador de grup d'usuaris no coincideix" + +#: src/compare.c:211 +msgid "Mod time differs" +msgstr "La data de modificació no coincideix" + +#: src/compare.c:215 src/compare.c:414 +msgid "Size differs" +msgstr "La mida no coincideix" + +#: src/compare.c:263 +#, c-format +msgid "Not linked to %s" +msgstr "No s'ha enllaçat amb %s" + +#: src/compare.c:287 +msgid "Symlink differs" +msgstr "L'enllaç tou no coincideix" + +#: src/compare.c:316 +msgid "Device number differs" +msgstr "El número de dispositiu no coincideix" + +#: src/compare.c:456 +#, c-format +msgid "Verify " +msgstr "Verifiqueu " + +#: src/compare.c:463 +#, c-format +msgid "%s: Unknown file type `%c', diffed as normal file" +msgstr "" +"%s: Tipus de fitxer desconegut `%c', s'usa diff com si es tractés d'un " +"fitxer normal" + +#: src/compare.c:518 +msgid "Archive contains file names with leading prefixes removed." +msgstr "L'arxiu conté noms de fitxers amb els prefixes inicials esborrats." + +#: src/compare.c:520 +msgid "Verification may fail to locate original files." +msgstr "Pot ser que la verificació no pugui trobar els fitxers originals." + +#: src/compare.c:593 +#, c-format +msgid "VERIFY FAILURE: %d invalid header detected" +msgid_plural "VERIFY FAILURE: %d invalid headers detected" +msgstr[0] "HA FALLAT LA VERIFICACIÓ: %d s'ha detectat una capçalera invàlida" +msgstr[1] "HA FALLAT LA VERIFICACIÓ: %d s'han detectat capçaleres invàlides" + +#: src/compare.c:611 src/list.c:161 +#, c-format +msgid "A lone zero block at %s" +msgstr "Un sol bloc zero a %s" + +#: src/create.c:72 +#, c-format +msgid "%s: contains a cache directory tag %s; %s" +msgstr "%s: conté una etiqueta de directori de memòria cau %s; %s" + +#: src/create.c:261 +#, c-format +msgid "value %s out of %s range %s..%s; substituting %s" +msgstr "el valor %s està fora del rang%s %s..%s; es substitueix per %s" + +#: src/create.c:267 +#, c-format +msgid "value %s out of %s range %s..%s" +msgstr "el valor %s està fora del rang %s %s..%s" + +#: src/create.c:327 +msgid "Generating negative octal headers" +msgstr "S'estan generant les capçaleres octals negatives" + +#: src/create.c:611 src/create.c:674 +#, c-format +msgid "%s: file name is too long (max %d); not dumped" +msgstr "%s: el nom del fitxer és massa llarg (màx %d); no s'aboca" + +#: src/create.c:621 +#, c-format +msgid "%s: file name is too long (cannot be split); not dumped" +msgstr "%s: el nom del fitxer és massa llarg (no es pot dividir); no s'aboca" + +#: src/create.c:648 +#, c-format +msgid "%s: link name is too long; not dumped" +msgstr "%s: el nom de l'enllaç és massa llarg; no s'aboca" + +#: src/create.c:1062 +#, c-format +msgid "%s: File shrank by %s byte; padding with zeros" +msgid_plural "%s: File shrank by %s bytes; padding with zeros" +msgstr[0] "%s: El fitxer s'encongeix %s byte; s'omple amb zero" +msgstr[1] "%s: El fitxer s'encongeix %s bytes; s'omple amb zeros" + +#: src/create.c:1158 +#, c-format +msgid "%s: file is on a different filesystem; not dumped" +msgstr "%s: el fitxer es troba a un sistema de fitxers diferent; no s'aboca" + +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 +msgid "contents not dumped" +msgstr "els continguts no s'aboquen" + +#: src/create.c:1416 +#, c-format +msgid "%s: Unknown file type; file ignored" +msgstr "%s: Tipus de fitxer desconegut; el fitxer s'ignora" + +#: src/create.c:1527 +#, c-format +msgid "Missing links to %s." +msgstr "Falten els enllaços a %s." + +#: src/create.c:1688 +#, c-format +msgid "%s: file is unchanged; not dumped" +msgstr "%s: el fitxer no ha canviat; no s'aboca" + +#: src/create.c:1697 +#, c-format +msgid "%s: file is the archive; not dumped" +msgstr "%s: el fitxer és l'arxiu; no s'aboca" + +#: src/create.c:1721 src/incremen.c:575 +msgid "directory not dumped" +msgstr "el directori no s'aboca" + +#: src/create.c:1793 +#, c-format +msgid "%s: file changed as we read it" +msgstr "%s: el fitxer ha canviat mentre es llegia" + +#: src/create.c:1855 +#, c-format +msgid "%s: socket ignored" +msgstr "%s: sòcol ignorat" + +#: src/create.c:1861 +#, c-format +msgid "%s: door ignored" +msgstr "%s: porta ignorada" + +#: src/delete.c:217 src/list.c:198 src/update.c:203 +msgid "Skipping to next header" +msgstr "Es salta fins a la propera capçalera" + +#: src/delete.c:283 +msgid "Deleting non-header from archive" +msgstr "S'esborra la no-capçalera de l'arxiu" + +#: src/extract.c:277 +#, c-format +msgid "%s: implausibly old time stamp %s" +msgstr "%s: marca horària inversemblantment antiga %s" + +#: src/extract.c:295 +#, c-format +msgid "%s: time stamp %s is %s s in the future" +msgstr "%s: la marca horària %s pertany %s s al futur" + +#: src/extract.c:475 +#, c-format +msgid "%s: Unexpected inconsistency when making directory" +msgstr "%s: Inconsistència inesperada en crear el directori" + +#: src/extract.c:709 +#, c-format +msgid "%s: Directory renamed before its status could be extracted" +msgstr "" +"%s: S'ha canviat el nom del directori abans de poder extreure'n l'estat" + +#: src/extract.c:863 +msgid "Extracting contiguous files as regular files" +msgstr "Els fitxers contigus s'extreuen com fitxers normals" + +#: src/extract.c:1183 +msgid "Attempting extraction of symbolic links as hard links" +msgstr "Es prova d'extreure els enllaços simbòlics com enllaços durs" + +#: src/extract.c:1339 +#, c-format +msgid "%s: Cannot extract -- file is continued from another volume" +msgstr "%s: No espot extreure -- el fitxer continua des d'un altre volum" + +#: src/extract.c:1346 src/list.c:1117 +msgid "Unexpected long name header" +msgstr "Nom de la capçalera inesperadament llarg" + +#: src/extract.c:1353 +#, c-format +msgid "%s: Unknown file type `%c', extracted as normal file" +msgstr "%s: Tipus de fitxer «%c» desconegut, s'extreu com un fitxer normal" + +#: src/extract.c:1379 +#, c-format +msgid "Current %s is newer or same age" +msgstr "L'actual %s és igual d'antic o més nou" + +#: src/extract.c:1431 +#, c-format +msgid "%s: Was unable to backup this file" +msgstr "%s: No es pot fer la còpia de seguretat d'aquest fitxer" + +#: src/extract.c:1568 +#, c-format +msgid "Cannot rename %s to %s" +msgstr "No es pot canviar el nom de %s a %s" + +#: src/incremen.c:474 src/incremen.c:518 +#, c-format +msgid "%s: Directory has been renamed from %s" +msgstr "%s: El directori ha canviat de nom a partir de %s" + +#: src/incremen.c:486 +#, c-format +msgid "%s: Directory has been renamed" +msgstr "%s: El directori ha canviat de nom" + +#: src/incremen.c:531 +#, c-format +msgid "%s: Directory is new" +msgstr "%s: El directori és nou" + +#: src/incremen.c:956 src/incremen.c:973 +msgid "Invalid time stamp" +msgstr "Marca horària invàlida" + +#: src/incremen.c:1012 +msgid "Invalid modification time (seconds)" +msgstr "Modificació invalida del temps (segons)" + +#: src/incremen.c:1027 +msgid "Invalid modification time (nanoseconds)" +msgstr "Modificació invàlida del temps (nanosegons)" + +#: src/incremen.c:1047 +msgid "Invalid device number" +msgstr "Número de dispositiu invàlid" + +#: src/incremen.c:1062 +msgid "Invalid inode number" +msgstr "Número de node d'identificació invàlid" + +#: src/incremen.c:1113 src/incremen.c:1150 +msgid "Field too long while reading snapshot file" +msgstr "Camp massa llarg en llegir el fitxer d'instantània" + +#: src/incremen.c:1120 src/incremen.c:1158 +msgid "Read error in snapshot file" +msgstr "Error de lectura del fitxer d'instantània" + +#: src/incremen.c:1122 src/incremen.c:1162 src/incremen.c:1214 +#: src/incremen.c:1272 +msgid "Unexpected EOF in snapshot file" +msgstr "Final de l'arxiu d'instantània inesperat" + +#: src/incremen.c:1129 src/incremen.c:1169 +msgid "Unexpected field value in snapshot file" +msgstr "Valor de camp inesperat del fitxer d'instantània" + +#: src/incremen.c:1264 +msgid "Missing record terminator" +msgstr "Falta el terminador del registre" + +#: src/incremen.c:1325 src/incremen.c:1328 +msgid "Bad incremental file format" +msgstr "Format del fitxer incremental erroni" + +#: src/incremen.c:1347 +#, c-format +msgid "Unsupported incremental format version: %" +msgstr "No se suporta la versió del format incremental: %" + +#: src/incremen.c:1502 +#, c-format +msgid "Malformed dumpdir: expected '%c' but found %#3o" +msgstr "Directori d'abocament mal format: s'esperava «%c» i s'ha trobat %#3o" + +#: src/incremen.c:1512 +msgid "Malformed dumpdir: 'X' duplicated" +msgstr "Directori d'abocament mal format: «X» duplicada" + +#: src/incremen.c:1525 +msgid "Malformed dumpdir: empty name in 'R'" +msgstr "Directori d'abocament mal format: nom buit a «R»" + +#: src/incremen.c:1538 +msgid "Malformed dumpdir: 'T' not preceeded by 'R'" +msgstr "Directori d'abocament mal format: «T» no està  precedit de «R»" + +#: src/incremen.c:1544 +msgid "Malformed dumpdir: empty name in 'T'" +msgstr "Directori d'abocament mal format: nom buit a «T»" + +#: src/incremen.c:1564 +#, c-format +msgid "Malformed dumpdir: expected '%c' but found end of data" +msgstr "" +"Directori d'abocament mal format: s'esperava «%c» però s'ha trobat el final " +"de les dades" + +#: src/incremen.c:1571 +msgid "Malformed dumpdir: 'X' never used" +msgstr "Directori d'abocament mal format: no s'ha fet servir «X»" + +#: src/incremen.c:1615 +#, c-format +msgid "Cannot create temporary directory using template %s" +msgstr "No es pot crear el directori temporal fent servir la plantilla %s" + +#: src/incremen.c:1677 +#, c-format +msgid "%s: Not purging directory: unable to stat" +msgstr "%s: No es purga el directori: no se'n pot saber l'estat" + +#: src/incremen.c:1690 +#, c-format +msgid "%s: directory is on a different device: not purging" +msgstr "%s: el directori és en un dispositiu diferent: no es purga" + +#: src/incremen.c:1698 +#, c-format +msgid "%s: Deleting %s\n" +msgstr "%s: S'elimina %s\n" + +#: src/incremen.c:1703 +#, c-format +msgid "%s: Cannot remove" +msgstr "%s: No es pot esborrar" + +#: src/list.c:130 +#, c-format +msgid "%s: Omitting" +msgstr "%s: S'ometen" + +#: src/list.c:146 +#, c-format +msgid "block %s: ** Block of NULs **\n" +msgstr "bloc %s: ** Bloc de NULs **\n" + +#: src/list.c:172 +#, c-format +msgid "block %s: ** End of File **\n" +msgstr "bloc %s: ** Final del Fitxer **\n" + +#: src/list.c:195 src/list.c:1089 src/list.c:1352 +#, c-format +msgid "block %s: " +msgstr "bloc %s: " + +#. TRANSLATORS: %s is type of the value (gid_t, uid_t, +#. etc.) +#: src/list.c:704 +#, c-format +msgid "Blanks in header where numeric %s value expected" +msgstr "Capçalera amb blancs on hi hauria d'haver un valor numèric %s" + +#. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) +#: src/list.c:759 +#, c-format +msgid "Archive octal value %.*s is out of %s range; assuming two's complement" +msgstr "" +"El valor octal de l'arxiu %.*s està fora del rang %s; s'assumeix el " +"complement a dos" + +#. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) +#: src/list.c:770 +#, c-format +msgid "Archive octal value %.*s is out of %s range" +msgstr "El valor octal de l'arxiu %.*s està fora del rang %s" + +#: src/list.c:791 +msgid "Archive contains obsolescent base-64 headers" +msgstr "L'arxiu conté capçaleres amb base 64 que estan esdevenint obsoletes" + +#: src/list.c:805 +#, c-format +msgid "Archive signed base-64 string %s is out of %s range" +msgstr "La cadena de signatura %s amb base 64 de l'arxiu està fora del rang %s" + +#: src/list.c:836 +#, c-format +msgid "Archive base-256 value is out of %s range" +msgstr "El valor amb base 256 de l'arxiu està fora del rang %s " + +#. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) +#: src/list.c:865 +#, c-format +msgid "Archive contains %.*s where numeric %s value expected" +msgstr "L'arxiu conté %.*s on hi hauria d'haver un valor numèric de tipus %s" + +#. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) +#: src/list.c:887 +#, c-format +msgid "Archive value %s is out of %s range %s..%s" +msgstr "El valor %s de l'arxiu està fora del rang %s %s..%s" + +#: src/list.c:1253 +#, c-format +msgid " link to %s\n" +msgstr " enllaç cap a %s\n" + +#: src/list.c:1261 +#, c-format +msgid " unknown file type %s\n" +msgstr " tipus de fitxer desconegut %s\n" + +#: src/list.c:1279 +#, c-format +msgid "--Long Link--\n" +msgstr "--Enllaç llarg--\n" + +#: src/list.c:1283 +#, c-format +msgid "--Long Name--\n" +msgstr "--Nom Llarg--\n" + +#: src/list.c:1287 +#, c-format +msgid "--Volume Header--\n" +msgstr "--Capçalera del volum--\n" + +#: src/list.c:1295 +#, c-format +msgid "--Continued at byte %s--\n" +msgstr "--Continua al byte %s--\n" + +#: src/list.c:1357 +msgid "Creating directory:" +msgstr "Es crea el directori:" + +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "No es pot canviar el directori de treball" + +#: src/misc.c:571 +#, c-format +msgid "Renaming %s to %s\n" +msgstr "Es canvia el nom %s per %s\n" + +#: src/misc.c:580 src/misc.c:599 +#, c-format +msgid "%s: Cannot rename to %s" +msgstr "%s: No es pot canviar el nom a %s" + +#: src/misc.c:604 +#, c-format +msgid "Renaming %s back to %s\n" +msgstr "Es torna a canviar el nom %s a %s\n" + +#: src/misc.c:851 +#, c-format +msgid "%s: File removed before we read it" +msgstr "%s: El fitxer s'ha esborrat abans de poder-lo llegir" + +#: src/misc.c:866 +#, c-format +msgid "%s: Directory removed before we read it" +msgstr "%s: El directori s'ha esborrat abans de poder-lo llegir" + +#: src/misc.c:887 +msgid "child process" +msgstr "procés descendent" + +#: src/misc.c:896 +msgid "interprocess channel" +msgstr "canal d'intercomunicació" + +#: src/names.c:594 +msgid "Pattern matching characters used in file names" +msgstr "" +"Caràcters de patró de coincidència que es fan servir en noms de fitxers" + +#: src/names.c:596 +msgid "" +"Use --wildcards to enable pattern matching, or --no-wildcards to suppress " +"this warning" +msgstr "" +"Feu servir --wildcards per habilitar els patrons de coincidència, o --no-" +"wildcars per eliminar aquest avís." + +#: src/names.c:614 src/names.c:630 +#, c-format +msgid "%s: Not found in archive" +msgstr "%s: No s'ha trobat a l'arxiu" + +#: src/names.c:615 +#, c-format +msgid "%s: Required occurrence not found in archive" +msgstr "%s: No s'ha trobat cap coincidència a l'arxiu" + +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "L'etiqueta de l'arxiu no coincideix" + +#: src/names.c:953 +msgid "" +"Using -C option inside file list is not allowed with --listed-incremental" +msgstr "" +"No podeu fer servir la opció -C als llistats de fitxer amb --listed-" +"incremental" + +#: src/names.c:959 +msgid "Only one -C option is allowed with --listed-incremental" +msgstr "Només podeu fer servit una opció -C amb --listed-incemental" + +#: src/tar.c:81 +#, c-format +msgid "Options `-%s' and `-%s' both want standard input" +msgstr "Ambdues opcions «-%s» i «-%s» necessiten la sortida estàndard" + +#: src/tar.c:158 +#, c-format +msgid "%s: Invalid archive format" +msgstr "%s: Format de fitxer invàlid" + +#: src/tar.c:182 +msgid "GNU features wanted on incompatible archive format" +msgstr "" +"El format de l'arxiu és incompatible perquè requereix característiques de GNU" + +#: src/tar.c:250 +#, c-format +msgid "" +"Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." +msgstr "" +"Estil de citació desconegut «%s». Feu servir «%s --quoting-style=help» per " +"obtenir-ne una llista." + +#: src/tar.c:348 +msgid "" +"GNU `tar' saves many files together into a single tape or disk archive, and " +"can restore individual files from the archive.\n" +"\n" +"Examples:\n" +" tar -cf archive.tar foo bar # Create archive.tar from files foo and bar.\n" +" tar -tvf archive.tar # List all files in archive.tar verbosely.\n" +" tar -xf archive.tar # Extract all files from archive.tar.\n" +msgstr "" +"GNU `tar' desa molts fitxers agrupats en un sol arxiu de cinta o de disc, i " +"pot recuperar fitxers individuals de l'arxiu.\n" +"\n" +"Exemples:\n" +" tar -cf arxiu.tar foo bar # Crea l'arxiu.tar dels fitxers foo i bar.\n" +" tar -tvf arxiu.tar # Fa una llista detallada dels fitxers que hi " +"ha a l'arxiu.tar.\n" +" tar -xf arxiu.tar # Extreu tots els fitxers de l'arxiu.tar.\n" + +#: src/tar.c:357 +msgid "" +"The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" +"The version control may be set with --backup or VERSION_CONTROL, values " +"are:\n" +"\n" +" none, off never make backups\n" +" t, numbered make numbered backups\n" +" nil, existing numbered if numbered backups exist, simple otherwise\n" +" never, simple always make simple backups\n" +msgstr "" +"El sufix de les còpies de seguretat és «~», a no ser que s'especifiqui amb --" +"suffix o SIMPLE_BACKUP_SUFFIX.\n" +"El control de versions pot ser especificat amb --backup or VERSION_CONTROL, " +"els valors possibles son:\n" +"\n" +" none, off no facis mai còpies de seguretat\n" +" t, numbered fes còpies de seguretat numerades\n" +" nil, existing numerades si existeixen còpies de seguretat numerades, si " +"no simples\n" +" never, simple fes sempre còpies de seguretat simples\n" + +#: src/tar.c:387 +msgid "Main operation mode:" +msgstr "Mode d'operació principal:" + +#: src/tar.c:390 +msgid "list the contents of an archive" +msgstr "Llista els continguts d'un arxiu" + +#: src/tar.c:392 +msgid "extract files from an archive" +msgstr "extreu fitxers d'un arxiu" + +#: src/tar.c:395 +msgid "create a new archive" +msgstr "crea un arxiu nou" + +#: src/tar.c:397 +msgid "find differences between archive and file system" +msgstr "cerca diferències entre un arxiu i el sistema de fitxers" + +#: src/tar.c:400 +msgid "append files to the end of an archive" +msgstr "afegeix fitxers al final d'un arxiu" + +#: src/tar.c:402 +msgid "only append files newer than copy in archive" +msgstr "només afegeix els fitxers més nous que les còpies dins l'arxiu" + +#: src/tar.c:404 +msgid "append tar files to an archive" +msgstr "afegeix fitxers tar a un arxiu" + +#: src/tar.c:407 +msgid "delete from the archive (not on mag tapes!)" +msgstr "esborra de l'arxiu (excepte en cintes magnètiques!)" + +#: src/tar.c:409 +msgid "test the archive volume label and exit" +msgstr "prova l'etiqueta de volum de l'arxiu i surt" + +#: src/tar.c:414 +msgid "Operation modifiers:" +msgstr "Modificadors d'operació:" + +#: src/tar.c:417 +msgid "handle sparse files efficiently" +msgstr "tracta fitxers dispersos de manera eficient" + +#: src/tar.c:418 +msgid "MAJOR[.MINOR]" +msgstr "MAJOR[.MENOR]" + +#: src/tar.c:419 +msgid "set version of the sparse format to use (implies --sparse)" +msgstr "" +"estableix la versió del format de dispersió que cal fer servir (implica --" +"sparse)" + +#: src/tar.c:421 +msgid "handle old GNU-format incremental backup" +msgstr "tracta l'antic format incremental GNU de còpies de seguretat" + +#: src/tar.c:423 +msgid "handle new GNU-format incremental backup" +msgstr "tracta el nou format de còpies de seguretat incrementals de GNU" + +#: src/tar.c:425 +msgid "dump level for created listed-incremental archive" +msgstr "nivell de bolcat per l'arxiu llistat-incremental creat" + +#: src/tar.c:427 +msgid "do not exit with nonzero on unreadable files" +msgstr "" +"no surtis si l'estat és diferent de zero quan trobis fitxers il·legibles " + +#: src/tar.c:429 +msgid "" +"process only the NUMBERth occurrence of each file in the archive; this " +"option is valid only in conjunction with one of the subcommands --delete, --" +"diff, --extract or --list and when a list of files is given either on the " +"command line or via the -T option; NUMBER defaults to 1" +msgstr "" +"processa només la ENÈssima aparició de cada fitxer a l'arxiu; aquesta opció " +"només és vàlid amb una de les següents subcomandes --delete, --diff, --" +"extract o --list i quan es dona una llista de fitxers ja sigui a la línia de " +"comandes com amb l'opció -T; ENA val 1 per defecte" + +#: src/tar.c:435 +msgid "archive is seekable" +msgstr "l'arxiu pot buscar-se" + +#: src/tar.c:437 +msgid "archive is not seekable" +msgstr "L'arxiu no pot buscar-se" + +#: src/tar.c:439 +msgid "do not check device numbers when creating incremental archives" +msgstr "no comprovis el número de dispositiu quan creis arxius incrementals" + +#: src/tar.c:442 +msgid "check device numbers when creating incremental archives (default)" +msgstr "" +"comprova el número de dispositiu quan creis arxius incrementals (per defecte)" + +#: src/tar.c:448 +msgid "Overwrite control:" +msgstr "Control de sobreescriptura:" + +#: src/tar.c:451 +msgid "attempt to verify the archive after writing it" +msgstr "intenta verificar l'arxiu després d'escriure'l" + +#: src/tar.c:453 +msgid "remove files after adding them to the archive" +msgstr "eliminar els fitxers després d'afegir-los a l'arxiu" + +#: src/tar.c:455 +msgid "don't replace existing files when extracting" +msgstr "no reemplacis els fitxers existents quan els extreguis" + +#: src/tar.c:457 +msgid "don't replace existing files that are newer than their archive copies" +msgstr "" +"no reemplacis els fitxers existents que siguin més nous que les còpies de " +"l'arxiu" + +#: src/tar.c:459 +msgid "overwrite existing files when extracting" +msgstr "sobreescriu els fitxers existents quan els extreguis" + +#: src/tar.c:461 +msgid "remove each file prior to extracting over it" +msgstr "elimina cada fitxer abans d'extreure-hi a sobre" + +#: src/tar.c:463 +msgid "empty hierarchies prior to extracting directory" +msgstr "buida les jerarquies abans d'extreure el directori" + +#: src/tar.c:465 +msgid "preserve metadata of existing directories" +msgstr "conserva les metadades dels directoris existents" + +#: src/tar.c:467 +msgid "overwrite metadata of existing directories when extracting (default)" +msgstr "" +"sobreescriu les metadades dels directoris existents quan s'extreguin (per " +"defecte)" + +#: src/tar.c:473 +msgid "Select output stream:" +msgstr "Selecciona la sortida del flux de dades:" + +#: src/tar.c:476 +msgid "extract files to standard output" +msgstr "extreu els fitxers a la sortida estàndard" + +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 +msgid "COMMAND" +msgstr "COMANDA" + +#: src/tar.c:478 +msgid "pipe extracted files to another program" +msgstr "condueix els fitxers extrets a un altre programa" + +#: src/tar.c:480 +msgid "ignore exit codes of children" +msgstr "ignora els codis de sortida dels processos fill" + +#: src/tar.c:482 +msgid "treat non-zero exit codes of children as error" +msgstr "" +"tracta els codis de sortida dels processos fills diferents de zero com a " +"error" + +#: src/tar.c:487 +msgid "Handling of file attributes:" +msgstr "Gestió dels atributs del fitxer:" + +#: src/tar.c:490 +msgid "force NAME as owner for added files" +msgstr "força NOM coma propietari dels fitxers afegits" + +#: src/tar.c:492 +msgid "force NAME as group for added files" +msgstr "força NOM com a grup pels fitxers afegits" + +#: src/tar.c:493 src/tar.c:690 +msgid "DATE-OR-FILE" +msgstr "DATA-O-FITXER" + +#: src/tar.c:494 +msgid "set mtime for added files from DATE-OR-FILE" +msgstr "estableix mtime pels fitxers afegits des de DATA-O-FITXER" + +#: src/tar.c:495 +msgid "CHANGES" +msgstr "CANVIS" + +#: src/tar.c:496 +msgid "force (symbolic) mode CHANGES for added files" +msgstr "força CANVIS de mode (simbòlic) als fitxers que s'afegeixin" + +#: src/tar.c:498 +msgid "METHOD" +msgstr "MÈTODE" + +#: src/tar.c:499 +msgid "" +"preserve access times on dumped files, either by restoring the times after " +"reading (METHOD='replace'; default) or by not setting the times in the first " +"place (METHOD='system')" +msgstr "" +"conserva les hores d'accés dels fitxers bolcats, ja sigui restaurant les " +"hores després de llegir-los (MÈTODE='replace'; per defecte) o no posant " +"primer les hores(MÈTODE='system')" + +#: src/tar.c:503 +msgid "don't extract file modified time" +msgstr "no extreguis la data de modificació dels fitxers" + +#: src/tar.c:505 +msgid "" +"try extracting files with the same ownership as exists in the archive " +"(default for superuser)" +msgstr "" +"intenta extreure els fitxers amb el mateix propietari que existeix a l'arxiu " +"(per defecte pel superusuari)" + +#: src/tar.c:507 +msgid "extract files as yourself (default for ordinary users)" +msgstr "" +"extreu el fitxer com a tu mateix com a propietari (per defecte pels usuaris " +"ordinaris" + +#: src/tar.c:509 +msgid "always use numbers for user/group names" +msgstr "fes servir sempre números pels noms de usuari/grup" + +#: src/tar.c:511 +msgid "extract information about file permissions (default for superuser)" +msgstr "" +"extreu la informació dels permisos del fitxer (per defecte per al " +"superusuari)" + +#: src/tar.c:515 +msgid "" +"apply the user's umask when extracting permissions from the archive (default " +"for ordinary users)" +msgstr "" +"fes servir els permisos especificats per l'usuari qua s'extreguin permisos " +"de l'arxiu (per defecte per usuaris normals)" + +#: src/tar.c:517 +msgid "sort names to extract to match archive" +msgstr "ordena els noms a extreure per que coincideixin amb els de l'arxiu" + +#: src/tar.c:520 +msgid "same as both -p and -s" +msgstr "el mateix que per -p i -s" + +#: src/tar.c:522 +msgid "" +"delay setting modification times and permissions of extracted directories " +"until the end of extraction" +msgstr "" +"no modifiquis els temps i els permisos dels directoris extrets fins que " +"s'acabi l'extracció" + +#: src/tar.c:525 +msgid "cancel the effect of --delay-directory-restore option" +msgstr "cancel·la l'efecte de l'opció --delay-directory-restore" + +#: src/tar.c:530 +msgid "Device selection and switching:" +msgstr "Selecció i canvi de dispositiu:" + +#: src/tar.c:532 +msgid "ARCHIVE" +msgstr "ARXIU" + +#: src/tar.c:533 +msgid "use archive file or device ARCHIVE" +msgstr "fes servir el fitxer o dispositiu ARXIU" + +#: src/tar.c:535 +msgid "archive file is local even if it has a colon" +msgstr "l'arxiu és local encara que tingui dos punts" + +#: src/tar.c:537 +msgid "use given rmt COMMAND instead of rmt" +msgstr "fes servir la COMANDA rmt en comtes de rmt" + +#: src/tar.c:539 +msgid "use remote COMMAND instead of rsh" +msgstr "fes servir la COMANDA remota en comptes de rsh" + +#: src/tar.c:543 +msgid "specify drive and density" +msgstr "especifica la unitat i la densitat" + +#: src/tar.c:557 +msgid "create/list/extract multi-volume archive" +msgstr "crea/llista/extreu arxius de múltiples volums" + +#: src/tar.c:559 +msgid "change tape after writing NUMBER x 1024 bytes" +msgstr "canvia la cinta després d'escriure NÚMERO x 1024 bytes" + +#: src/tar.c:561 +msgid "run script at end of each tape (implies -M)" +msgstr "executa seqüència al final de cada cinta (implica -M)" + +#: src/tar.c:564 +msgid "use/update the volume number in FILE" +msgstr "fes servir/actualitza el número de volum del FITXER" + +#: src/tar.c:569 +msgid "Device blocking:" +msgstr "Blocs als dispositius:" + +#: src/tar.c:571 +msgid "BLOCKS" +msgstr "BLOCS" + +#: src/tar.c:572 +msgid "BLOCKS x 512 bytes per record" +msgstr "BLOCS x 512 bytes per registre" + +#: src/tar.c:574 +msgid "NUMBER of bytes per record, multiple of 512" +msgstr "NÚMERO de bytes per registre, múltiple de 512" + +#: src/tar.c:576 +msgid "ignore zeroed blocks in archive (means EOF)" +msgstr "ignora els blocs posats a zero de l'arxiu (volen dir fi del fitxer)" + +#: src/tar.c:578 +msgid "reblock as we read (for 4.2BSD pipes)" +msgstr "refés els blocs mentre els llegeixes (per conductes de 4.2BSD)" + +#: src/tar.c:583 +msgid "Archive format selection:" +msgstr "Selecció del format de l'arxiu: " + +#: src/tar.c:585 tests/genfile.c:153 +msgid "FORMAT" +msgstr "FORMAT" + +#: src/tar.c:586 +msgid "create archive of the given format" +msgstr "crea un arxiu del format especificat" + +#: src/tar.c:588 +msgid "FORMAT is one of the following:" +msgstr "El FORMAT és un dels següents" + +#: src/tar.c:589 +msgid "old V7 tar format" +msgstr "format tar de l'antiga versió 7" + +#: src/tar.c:592 +msgid "GNU format as per tar <= 1.12" +msgstr "format GNU tar <= 1.12" + +#: src/tar.c:594 +msgid "GNU tar 1.13.x format" +msgstr "format GNU tar 1.13.x" + +#: src/tar.c:596 +msgid "POSIX 1003.1-1988 (ustar) format" +msgstr "format POSIX 1003.1-1988 (ustar)" + +#: src/tar.c:598 +msgid "POSIX 1003.1-2001 (pax) format" +msgstr "format POSIX 1003.1-2001 (pax)" + +#: src/tar.c:599 +msgid "same as pax" +msgstr "el mateix que pax" + +#: src/tar.c:602 +msgid "same as --format=v7" +msgstr "el mateix que --format=v7" + +#: src/tar.c:605 +msgid "same as --format=posix" +msgstr "el mateix que --format=posix" + +#: src/tar.c:606 +msgid "keyword[[:]=value][,keyword[[:]=value]]..." +msgstr "paraula clau[[:]=valor][,paraula clau[[:]=valor]]..." + +#: src/tar.c:607 +msgid "control pax keywords" +msgstr "controla les paraules clau de pax" + +#: src/tar.c:608 +msgid "TEXT" +msgstr "TEXT" + +#: src/tar.c:609 +msgid "" +"create archive with volume name TEXT; at list/extract time, use TEXT as a " +"globbing pattern for volume name" +msgstr "" +"crea l'arxiu amb el nom de volum TEXT. Quan es llista/s'extreu, utilitza " +"TEXT com a patró global de noms de volum" + +#: src/tar.c:614 +msgid "Compression options:" +msgstr "Opcions de compressió:" + +#: src/tar.c:616 +msgid "use archive suffix to determine the compression program" +msgstr "utilitza el sufix de l'arxiu per determinar el programa de compressió" + +#: src/tar.c:618 +msgid "do not use archive suffix to determine the compression program" +msgstr "" +"no fa servir el sufix de l'arxiu per determinar el programa de compressió" + +#: src/tar.c:620 +msgid "PROG" +msgstr "PROGRAMA" + +#: src/tar.c:621 +msgid "filter through PROG (must accept -d)" +msgstr "filtra mitjançant PROGRAMA (ha d'acceptar -d)" + +#: src/tar.c:637 +msgid "Local file selection:" +msgstr "Selecció de fixter local:" + +#: src/tar.c:640 +msgid "add given FILE to the archive (useful if its name starts with a dash)" +msgstr "afegeix el FITXER a l'arxiu (útil si el nom comença per un guió)" + +#: src/tar.c:641 +msgid "DIR" +msgstr "DIRECTORI" + +#: src/tar.c:642 +msgid "change to directory DIR" +msgstr "Canvia al directori DIRECTORI" + +#: src/tar.c:644 +msgid "get names to extract or create from FILE" +msgstr "obté els noms que cal extreure u crear del FITXER" + +#: src/tar.c:646 +msgid "-T reads null-terminated names, disable -C" +msgstr "-T llegeix els noms acabats en nul, desactivar-ho amb -C" + +#: src/tar.c:648 +msgid "disable the effect of the previous --null option" +msgstr "deshabilita l'efecte del la opció --null prèvia" + +#: src/tar.c:650 +msgid "unquote filenames read with -T (default)" +msgstr "treu les cometes dels noms dels fitxers llegits amb -T (per defecte)" + +#: src/tar.c:652 +msgid "do not unquote filenames read with -T" +msgstr "no treguis les cometes dels noms dels fitxers llegits amb -T" + +#: src/tar.c:653 tests/genfile.c:136 +msgid "PATTERN" +msgstr "PATRÓ" + +#: src/tar.c:654 +msgid "exclude files, given as a PATTERN" +msgstr "exclou els fitxers que es donen com un PATRÓ" + +#: src/tar.c:656 +msgid "exclude patterns listed in FILE" +msgstr "exclou els patrons que es llisten al FITXER" + +#: src/tar.c:658 +msgid "" +"exclude contents of directories containing CACHEDIR.TAG, except for the tag " +"file itself" +msgstr "" +"exclou el contingut dels directoris que continguin CACHEDIR.TAG, excepte el " +"propi fitxer d'etiquetes" + +#: src/tar.c:661 +msgid "exclude everything under directories containing CACHEDIR.TAG" +msgstr "exclou tot el que estigui als directoris que continguin CACHEDIR.TAG" + +#: src/tar.c:664 +msgid "exclude directories containing CACHEDIR.TAG" +msgstr "exclou els directoris que continguin CACHEDIR.TAG " + +#: src/tar.c:666 +msgid "exclude contents of directories containing FILE, except for FILE itself" +msgstr "" +"exclou el contingut dels directoris que contenen el FITXER, excepte el " +"FITXER mateix" + +#: src/tar.c:669 +msgid "exclude everything under directories containing FILE" +msgstr "exclou tot el que hi hagi al directori que contingui el FITXER" + +#: src/tar.c:671 +msgid "exclude directories containing FILE" +msgstr "exclou els directoris que continguin el FITXER" + +#: src/tar.c:673 +msgid "exclude version control system directories" +msgstr "exclou els directoris del sistema de control de versions" + +#: src/tar.c:675 +msgid "exclude backup and lock files" +msgstr "exclou els fitxers de còpia de seguretat i de blocat" + +#: src/tar.c:677 +msgid "avoid descending automatically in directories" +msgstr "no baixa automàticament als directoris" + +#: src/tar.c:679 +msgid "stay in local file system when creating archive" +msgstr "queda't al sistema de fitxers local quan creïs l'arxiu" + +#: src/tar.c:681 +msgid "recurse into directories (default)" +msgstr "incloure els subdirectoris (per defecte)" + +#: src/tar.c:683 +msgid "don't strip leading `/'s from file names" +msgstr "no treguis les primeres «/» dels noms dels fitxers" + +#: src/tar.c:685 +msgid "follow symlinks; archive and dump the files they point to" +msgstr "" +"segueix els enllaços simbòlics; arxiva i aboca els fitxers als quals apunten" + +#: src/tar.c:687 +msgid "follow hard links; archive and dump the files they refer to" +msgstr "" +"segueix els enllaços durs; arxiva i aboca els fitxers als quals es refereix" + +#: src/tar.c:688 +msgid "MEMBER-NAME" +msgstr "NOM-DEL-MEMBRE" + +#: src/tar.c:689 +msgid "begin at member MEMBER-NAME in the archive" +msgstr "comença al membre NOM-DEL MEMBRE de l'arxiu" + +#: src/tar.c:691 +msgid "only store files newer than DATE-OR-FILE" +msgstr "desa només els fitxers més nous que DATA-O-FITXER" + +#: src/tar.c:693 +msgid "DATE" +msgstr "DATA" + +#: src/tar.c:694 +msgid "compare date and time when data changed only" +msgstr "compara la data i l'hora només quan les dades hagin canviat" + +#: src/tar.c:695 +msgid "CONTROL" +msgstr "CONTROL" + +#: src/tar.c:696 +msgid "backup before removal, choose version CONTROL" +msgstr "" +"fes una còpia de seguretat abans d'esborrar, tria el CONTROL de versions" + +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 +msgid "STRING" +msgstr "CADENA" + +#: src/tar.c:698 +msgid "" +"backup before removal, override usual suffix ('~' unless overridden by " +"environment variable SIMPLE_BACKUP_SUFFIX)" +msgstr "" +"fa una còpia de seguretat abans d'esborrar, substitueix el sufix usual («~» " +"si no s'ha definit la variable d'entorn SIMPLE_BACKUP_SUFFIX)" + +#: src/tar.c:703 +msgid "File name transformations:" +msgstr "Transformacions del nom del fitxer:" + +#: src/tar.c:705 +msgid "strip NUMBER leading components from file names on extraction" +msgstr "" +"treu NÚMERO components de la capçalera dels noms dels fitxers quan extreu" + +#: src/tar.c:707 +msgid "EXPRESSION" +msgstr "EXPRESSIÓ" + +#: src/tar.c:708 +msgid "use sed replace EXPRESSION to transform file names" +msgstr "" +"fes servir l'EXPRESSIÓ de substitució sed per transformar els noms dels " +"fitxers" + +#: src/tar.c:714 +msgid "File name matching options (affect both exclude and include patterns):" +msgstr "" +"opcions de concordança de nom de fitxer (afecta tant als patrons de inclusió " +"com als d'exclusió):" + +#: src/tar.c:717 +msgid "ignore case" +msgstr "ignora diferències majúscules/minúscules" + +#: src/tar.c:719 +msgid "patterns match file name start" +msgstr "comprova els patrons del començament del nom del fitxer" + +#: src/tar.c:721 +msgid "patterns match after any `/' (default for exclusion)" +msgstr "" +"comprova els patrons després de qualsevol «/» (per defecte a les exclusions) " + +#: src/tar.c:723 +msgid "case sensitive matching (default)" +msgstr "comprova diferències majúscules/minúscules (per defecte)" + +#: src/tar.c:725 +msgid "use wildcards (default for exclusion)" +msgstr "fa servir comodins (per defecte a les exclusions)" + +#: src/tar.c:727 +msgid "verbatim string matching" +msgstr "concordància exacte a les cadenes" + +#: src/tar.c:729 +msgid "wildcards do not match `/'" +msgstr "els comodins no han de concordar amb «/»" + +#: src/tar.c:731 +msgid "wildcards match `/' (default for exclusion)" +msgstr "els comodins han de concordar amb «/» (per defecte a les exclusions)" + +#: src/tar.c:736 +msgid "Informative output:" +msgstr "Sortida informativa:" + +#: src/tar.c:739 +msgid "verbosely list files processed" +msgstr "llista els fitxers processats detalladament" + +#: src/tar.c:740 +msgid "KEYWORD" +msgstr "PARAULA CLAU" + +#: src/tar.c:741 +msgid "warning control" +msgstr "control d'avisos" + +#: src/tar.c:743 +msgid "display progress messages every NUMBERth record (default 10)" +msgstr "mostra els missatges de progres cada NÚMERO registres (per defecte 10)" + +#: src/tar.c:745 +msgid "ACTION" +msgstr "ACCIÓ" + +#: src/tar.c:746 +msgid "execute ACTION on each checkpoint" +msgstr "executa ACCIÓ a cada punt de comprovació" + +#: src/tar.c:749 +msgid "print a message if not all links are dumped" +msgstr "mostra un missatge si no s'aboquen tots els enllaços" + +#: src/tar.c:750 +msgid "SIGNAL" +msgstr "SENYAL" + +#: src/tar.c:751 +msgid "" +"print total bytes after processing the archive; with an argument - print " +"total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " +"SIGQUIT, SIGINT, SIGUSR1 and SIGUSR2; the names without SIG prefix are also " +"accepted" +msgstr "" +"mostra els bytes totals després de processar l'arxiu. Amb un argument - " +"mostra els bytes totals quan es rep el SENYAL. Els senyals permesos són: " +"SIGHUP, SIGQUIT, SIGINT, SIGUSR1 i SIGUSR2. També s'accepta els noms sense " +"el prefix SIG" + +#: src/tar.c:756 +msgid "print file modification times in UTC" +msgstr "mostra l'hora de modificació del fitxer en UTC" + +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "Mostra l'hora del fitxer amb alta precisió" + +#: src/tar.c:760 +msgid "send verbose output to FILE" +msgstr "envia la sortida detallada al FITXER" + +#: src/tar.c:762 +msgid "show block number within archive with each message" +msgstr "mostra el número de bloc de dins l'arxiu a cada missatge" + +#: src/tar.c:764 +msgid "ask for confirmation for every action" +msgstr "demana la confirmació per cada acció" + +#: src/tar.c:767 +msgid "show tar defaults" +msgstr "mostra els valors per defecte de tar" + +#: src/tar.c:769 +msgid "" +"when listing or extracting, list each directory that does not match search " +"criteria" +msgstr "" +"quan es llisti o s'extregui, llista tots els directoris que no es " +"corresponguin amb el criteri de cerca" + +#: src/tar.c:771 +msgid "show file or archive names after transformation" +msgstr "mostra el nom del fitxer o de l'arxiu després de la transformació" + +#: src/tar.c:774 +msgid "STYLE" +msgstr "ESTIL" + +#: src/tar.c:775 +msgid "set name quoting style; see below for valid STYLE values" +msgstr "" +"estableix el nom de l'estil de citació; vegeu més avall una llista de valors " +"vàlids per ESTIL" + +#: src/tar.c:777 +msgid "additionally quote characters from STRING" +msgstr "més caràcters de cometes des de CADENA" + +#: src/tar.c:779 +msgid "disable quoting for characters from STRING" +msgstr "deshabilita els caràcters de cometa de la CADENA" + +#: src/tar.c:784 +msgid "Compatibility options:" +msgstr "Opcions de compatibilitat:" + +#: src/tar.c:787 +msgid "" +"when creating, same as --old-archive; when extracting, same as --no-same-" +"owner" +msgstr "" +"quan es crea, el mateix que --old-archive; quan s'extreu, el mateix que --no-" +"same-owner" + +#: src/tar.c:792 +msgid "Other options:" +msgstr "Altres opcions:" + +#: src/tar.c:795 +msgid "disable use of some potentially harmful options" +msgstr "desactiva l'ús de certes opcions potencialment perjudicials" + +#: src/tar.c:930 +msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" +msgstr "No podeu especificar més d'un «-Acdtrux» o d'opció «--test-label»" + +#: src/tar.c:940 +msgid "Conflicting compression options" +msgstr "Opcions de compressió conflictives" + +#: src/tar.c:996 +#, c-format +msgid "Unknown signal name: %s" +msgstr "Nom del senyal desconegut: %s" + +#: src/tar.c:1020 +msgid "Date sample file not found" +msgstr "No s'ha trobat el fitxer de mostra de la data" + +#: src/tar.c:1028 +#, c-format +msgid "Substituting %s for unknown date format %s" +msgstr "S'està substituint %s pel format de data desconegut %s" + +#: src/tar.c:1057 +#, c-format +msgid "Option %s: Treating date `%s' as %s" +msgstr "Opció %s: S'està tractant la data «%s» com a %s" + +#: src/tar.c:1135 +#, c-format +msgid "%s: file list already read" +msgstr "%s: la llista de fitxers ja s'ha llegit" + +#: src/tar.c:1201 +#, c-format +msgid "%s: file name read contains nul character" +msgstr "%s: la lectura del nom del fixter conté un caràcter nul" + +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 +#, c-format +msgid "filter the archive through %s" +msgstr "filtra l'arxiu a mitjançant %s" + +#: src/tar.c:1296 +msgid "Valid arguments for the --quoting-style option are:" +msgstr "Les opcions vàlides per la opció --quoting-style són:" + +#: src/tar.c:1300 +msgid "" +"\n" +"*This* tar defaults to:\n" +msgstr "" +"\n" +"*Aquest* tar va per defecte en:\n" + +#: src/tar.c:1402 +msgid "Invalid blocking factor" +msgstr "Factor de blocs invàlid" + +#: src/tar.c:1515 +msgid "Invalid tape length" +msgstr "Longitud de la cinta invàlida" + +#: src/tar.c:1529 +msgid "Invalid incremental level value" +msgstr "valor invàlid del nivell d'increment" + +#: src/tar.c:1575 +msgid "More than one threshold date" +msgstr "Més d'una data del llindar" + +#: src/tar.c:1630 src/tar.c:1633 +msgid "Invalid sparse version value" +msgstr "valor de la versió de la opció de dispersió invalid" + +#: src/tar.c:1718 +msgid "--atime-preserve='system' is not supported on this platform" +msgstr "No es permet l'ús de --atime-preserve=«system» en aquesta plataforma" + +#: src/tar.c:1743 +msgid "--checkpoint value is not an integer" +msgstr "El valor --checkpoint no és un enter" + +#: src/tar.c:1848 +msgid "Invalid group" +msgstr "Grup invàlid" + +#: src/tar.c:1855 +msgid "Invalid mode given on option" +msgstr "Mode invàlid donat a les opcions" + +#: src/tar.c:1912 +msgid "Invalid number" +msgstr "Número invàlid" + +#: src/tar.c:1934 +msgid "Invalid owner" +msgstr "Propietari invàlid" + +#: src/tar.c:1964 +msgid "" +"The --preserve option is deprecated, use --preserve-permissions --preserve-" +"order instead" +msgstr "" +"La opció --preserve es obsoleta, en comptes d'això feu servir --preserve-" +"permissions --preserve-order" + +#: src/tar.c:1975 +msgid "Invalid record size" +msgstr "Mida del registre invàlida" + +#: src/tar.c:1978 +#, c-format +msgid "Record size must be a multiple of %d." +msgstr "La mida del registre ha de ser múltiple de %d." + +#: src/tar.c:2019 +msgid "Invalid number of elements" +msgstr "Nombre d'elements invàlid" + +#: src/tar.c:2039 +msgid "Only one --to-command option allowed" +msgstr "Només es permet una opció --to-command" + +#: src/tar.c:2119 +#, c-format +msgid "Malformed density argument: %s" +msgstr "Argument de densitat mal format: %s" + +#: src/tar.c:2145 +#, c-format +msgid "Unknown density: `%c'" +msgstr "Densitat desconeguda: «%c»" + +#: src/tar.c:2162 +#, c-format +msgid "Options `-[0-7][lmh]' not supported by *this* tar" +msgstr "Opcions «-[0-7][lmh]» no suportades per *aquest* tar" + +#: src/tar.c:2175 +msgid "[FILE]..." +msgstr "[FITXER]..." + +#: src/tar.c:2293 +#, c-format +msgid "Old option `%c' requires an argument." +msgstr "L'opció antiga «%c» requereix un argument." + +#: src/tar.c:2374 +msgid "--occurrence is meaningless without a file list" +msgstr "--occurrence no te sentit sense una llista de fitxers" + +#: src/tar.c:2380 +msgid "--occurrence cannot be used in the requested operation mode" +msgstr "--occurrence no es pot utilitzar en el mode d'operació que ha requerit" + +#: src/tar.c:2398 +msgid "Multiple archive files require `-M' option" +msgstr "Per a múltiples arxius de fitxers es requereix l'opció «-M»" + +#: src/tar.c:2403 +msgid "Cannot combine --listed-incremental with --newer" +msgstr "No es pot combinar --listed-incremental amb --newer" + +#: src/tar.c:2406 +msgid "--level is meaningless without --listed-incremental" +msgstr "--level no té sentit sense --listed-incremental" + +#: src/tar.c:2423 +#, c-format +msgid "%s: Volume label is too long (limit is %lu byte)" +msgid_plural "%s: Volume label is too long (limit is %lu bytes)" +msgstr[0] "%s: l'etiqueta del volum és massa llarga (el limit és %lu byte)" +msgstr[1] "%s: l'etiqueta del volum és massa llarga (el limit és %lu bytes)" + +#: src/tar.c:2436 +msgid "Cannot verify multi-volume archives" +msgstr "No es poden verificar els arxius multi-volum" + +#: src/tar.c:2438 +msgid "Cannot verify compressed archives" +msgstr "No es poden verificar els arxius comprimits" + +#: src/tar.c:2444 +msgid "Cannot use multi-volume compressed archives" +msgstr "No es poden utilitzar arxius comprimits multi-volum" + +#: src/tar.c:2450 +msgid "Cannot concatenate compressed archives" +msgstr "No es poden concatenar arxius comprimits" + +#: src/tar.c:2462 +msgid "--pax-option can be used only on POSIX archives" +msgstr "--pax-option només es pot utilitzar en arxius POSIX" + +#: src/tar.c:2492 +msgid "Volume length cannot be less than record size" +msgstr "La llargada del volum no pot ser inferior que la mida del registre" + +#: src/tar.c:2495 +msgid "--preserve-order is not compatible with --listed-incremental" +msgstr "--preserve-order no és compatible amb --listed-incremental" + +#: src/tar.c:2506 +msgid "Cowardly refusing to create an empty archive" +msgstr "S'està refusant covardament crear un arxiu buit" + +#: src/tar.c:2532 +msgid "Options `-Aru' are incompatible with `-f -'" +msgstr "Les opcions «-Aru» son incompatibles amb «-f -»" + +#: src/tar.c:2621 +msgid "You must specify one of the `-Acdtrux' or `--test-label' options" +msgstr "Heu d'especificar una opció «-Acdtrux» o «--test-label»" + +#: src/tar.c:2675 +#, c-format +msgid "Exiting with failure status due to previous errors" +msgstr "Se surt amb estat de fallida degut a errors prèvis" + +#: src/update.c:86 +#, c-format +msgid "%s: File shrank by %s byte" +msgid_plural "%s: File shrank by %s bytes" +msgstr[0] "%s: El fitxer s'encongeix %s byte" +msgstr[1] "%s: El fitxer s'encongeix %s bytes" + +#: src/xheader.c:164 +#, c-format +msgid "Keyword %s is unknown or not yet implemented" +msgstr "La paraula clau %s és desconeguda o encara no s'ha implementat" + +#: src/xheader.c:174 +msgid "Time stamp is out of allowed range" +msgstr "La marca horària està fora del rang permés" + +#: src/xheader.c:205 +#, c-format +msgid "Pattern %s cannot be used" +msgstr "No s'ha pogut utilitzar el patró %s " + +#: src/xheader.c:219 +#, c-format +msgid "Keyword %s cannot be overridden" +msgstr "No s'ha pogut sobreescriure la paraula clau %s" + +#: src/xheader.c:542 +msgid "Malformed extended header: missing length" +msgstr "Capçalera estesa mal formada: falta la longitud" + +#: src/xheader.c:550 +msgid "Extended header length is out of allowed range" +msgstr "Longitud de la capçalera estesa està fora del rang permès" + +#: src/xheader.c:557 +#, c-format +msgid "Extended header length %*s is out of range" +msgstr "La longitud de la capçalera estesa %*s està fora de rang" + +#: src/xheader.c:569 +msgid "Malformed extended header: missing blank after length" +msgstr "Capçalera estesa mal formada: falta l'espai després de la longitud" + +#: src/xheader.c:577 +msgid "Malformed extended header: missing equal sign" +msgstr "Capçalera estesa mal formada: falta el signe igual" + +#: src/xheader.c:583 +msgid "Malformed extended header: missing newline" +msgstr "Capçalera estesa mal formada: falta el salt de línia" + +#: src/xheader.c:621 +#, c-format +msgid "Ignoring unknown extended header keyword `%s'" +msgstr "S'ignora la paraula clau desconeguda de la capçalera estesa «%s»" + +#: src/xheader.c:831 +#, c-format +msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" +msgstr "" +"La paraula clau/parella de valors generada és massa llarga (paraula clau=%s, " +"longitud=%s)" + +#. TRANSLATORS: The first %s is the pax extended header keyword +#. (atime, gid, etc.). +#: src/xheader.c:863 +#, c-format +msgid "Extended header %s=%s is out of range %s..%s" +msgstr "La capçalera estesa %s=%s està fora del rang %s..%s" + +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 +#, c-format +msgid "Malformed extended header: invalid %s=%s" +msgstr "Capçalera estesa mal formada: %s=%s invàlid" + +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 +#, c-format +msgid "Malformed extended header: excess %s=%s" +msgstr "Capçalera estesa mal formada: excedeix %s=%s" + +#: src/xheader.c:1379 +#, c-format +msgid "Malformed extended header: invalid %s: unexpected delimiter %c" +msgstr "Capçalera estesa mal formada: %s invàlid, delimitador %c inesperat" + +#: src/xheader.c:1389 +#, c-format +msgid "Malformed extended header: invalid %s: odd number of values" +msgstr "Capçalera estesa mal formada: %s invàlid: nombre de valors incorrecte" + +#: src/checkpoint.c:107 +#, c-format +msgid "%s: not a valid timeout" +msgstr "%s: no és un temps d'espera vàlid" + +#: src/checkpoint.c:112 +#, c-format +msgid "%s: unknown checkpoint action" +msgstr "%s: acció del punt de comprovació desconegut" + +#: src/checkpoint.c:132 +msgid "write" +msgstr "escriu" + +#: src/checkpoint.c:132 +msgid "read" +msgstr "llegeix" + +#. TRANSLATORS: This is a ``checkpoint of write operation'', +#. *not* ``Writing a checkpoint''. +#. E.g. in Spanish ``Punto de comprobaci@'on de escritura'', +#. *not* ``Escribiendo un punto de comprobaci@'on'' +#: src/checkpoint.c:222 +#, c-format +msgid "Write checkpoint %u" +msgstr "Punt de comprovació d'escriptura %u" + +#. TRANSLATORS: This is a ``checkpoint of read operation'', +#. *not* ``Reading a checkpoint''. +#. E.g. in Spanish ``Punto de comprobaci@'on de lectura'', +#. *not* ``Leyendo un punto de comprobaci@'on'' +#: src/checkpoint.c:228 +#, c-format +msgid "Read checkpoint %u" +msgstr "Punt de comprovació de lectura %u" + +#: tests/genfile.c:111 +msgid "" +"genfile manipulates data files for GNU paxutils test suite.\n" +"OPTIONS are:\n" +msgstr "" +"genfile manipula els fitxers de dades al conjunt de programes de proves GNU " +"paxutils.\n" +"Les OPCIONS són:\n" + +#: tests/genfile.c:127 +msgid "File creation options:" +msgstr "Opcions de creació de fitxers:" + +#: tests/genfile.c:128 tests/genfile.c:139 +msgid "SIZE" +msgstr "MIDA" + +#: tests/genfile.c:129 +msgid "Create file of the given SIZE" +msgstr "Crea un fitxer de la MIDA indicada" + +#: tests/genfile.c:131 +msgid "Write to file NAME, instead of standard output" +msgstr "Escriu al fitxer amb NOM, en comptes de la sortida estàndard" + +#: tests/genfile.c:133 +msgid "Read file names from FILE" +msgstr "Llegeix els noms dels fitxers del FITXER" + +#: tests/genfile.c:135 +msgid "-T reads null-terminated names" +msgstr "-T llegeix els noms acabats en nul" + +#: tests/genfile.c:137 +msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" +msgstr "" +"Omple el fitxer amb el PATRÓ indicat. El PATRÓ és «per defecte» o «zeros»" + +#: tests/genfile.c:140 +msgid "Size of a block for sparse file" +msgstr "Mida d'un bloc per fitxer dispers" + +#: tests/genfile.c:142 +msgid "Generate sparse file. Rest of the command line gives the file map." +msgstr "" +"Genera un fitxer dispers. La resta de la línia de comandes indica el mapa " +"del fitxer" + +#: tests/genfile.c:144 +msgid "OFFSET" +msgstr "ÒFSET" + +#: tests/genfile.c:145 +msgid "Seek to the given offset before writing data" +msgstr "Cerca l'òfset donat abans d'escriure les dades" + +#: tests/genfile.c:151 +msgid "File statistics options:" +msgstr "Opcions de les estadístiques dels fitxers:" + +#: tests/genfile.c:154 +msgid "Print contents of struct stat for each given file. Default FORMAT is: " +msgstr "" +"Mostra el contingut de l'estructura stat per cadascun dels fitxers indicats. " +"El FORMAT per defecte és:" + +#: tests/genfile.c:161 +msgid "Synchronous execution options:" +msgstr "Opcions d'execució sincrónica:" + +#: tests/genfile.c:163 +msgid "OPTION" +msgstr "OPCIÓ" + +#: tests/genfile.c:164 +msgid "" +"Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " +"--unlink" +msgstr "" +"Executa ARGS. Útil amb --checkpoint i i una entre --cut, --append, --touch, " +"--unlink" + +#: tests/genfile.c:167 +msgid "Perform given action (see below) upon reaching checkpoint NUMBER" +msgstr "" +"Realitzar les accions donades (mirar avall) quan s'arrivi al punt de " +"comprovació NÚMERO" + +#: tests/genfile.c:170 +msgid "Set date for next --touch option" +msgstr "Defineix la data per a la següent opció --touch" + +#: tests/genfile.c:173 +msgid "Display executed checkpoints and exit status of COMMAND" +msgstr "" +"Mostra els punts de comprovació executats i l'estat de sortida de la COMANDA" + +#: tests/genfile.c:178 +msgid "" +"Synchronous execution actions. These are executed when checkpoint number " +"given by --checkpoint option is reached." +msgstr "" +"Accions d'execució sincrónica. Aquestes son executades quan s'arriba al " +"númerode punts de comprovació donat per --checkpoint" + +#: tests/genfile.c:181 +msgid "" +"Truncate FILE to the size specified by previous --length option (or 0, if it " +"is not given)" +msgstr "" +"Talla el FITXER a la mida especificada amb la opció --length prèvia (o 0, si " +"no s'ha especificat)" + +#: tests/genfile.c:185 +msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." +msgstr "" +"Afegeix MIDA bytes al FITXER. MIDA s'ha especificat amb la opció --length " +"prèvia." + +#: tests/genfile.c:188 +msgid "Update the access and modification times of FILE" +msgstr "Actualitza les hores d'accés i modificació del FITXER" + +#: tests/genfile.c:191 +msgid "Execute COMMAND" +msgstr "Executa COMANDA" + +#: tests/genfile.c:194 +msgid "Unlink FILE" +msgstr "Desfés l'enllaç del FITXER" + +#: tests/genfile.c:244 +#, c-format +msgid "Invalid size: %s" +msgstr "Mida invàlida: %s" + +#: tests/genfile.c:249 +#, c-format +msgid "Number out of allowed range: %s" +msgstr "Número fora de l'abast permés: %s" + +#: tests/genfile.c:252 +#, c-format +msgid "Negative size: %s" +msgstr "Mida negativa: %s" + +#: tests/genfile.c:265 tests/genfile.c:567 +#, c-format +msgid "stat(%s) failed" +msgstr "Ha fallat la petició d'stat(%s)" + +#: tests/genfile.c:268 +#, c-format +msgid "requested file length %lu, actual %lu" +msgstr "mida del fitxer sol·licitada %lu, actual %lu" + +#: tests/genfile.c:272 +#, c-format +msgid "created file is not sparse" +msgstr "el fitxer creat no és dispers" + +#: tests/genfile.c:361 +#, c-format +msgid "Error parsing number near `%s'" +msgstr "Error en analitzar el número prop de «%s»" + +#: tests/genfile.c:367 +#, c-format +msgid "Unknown date format" +msgstr "Format de data desconegut" + +#: tests/genfile.c:391 +msgid "[ARGS...]" +msgstr "[ARGS...]" + +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 +#, c-format +msgid "cannot open `%s'" +msgstr "no es pot obrir «%s»" + +#: tests/genfile.c:434 +msgid "cannot seek" +msgstr "no es pot cercar" + +#: tests/genfile.c:451 +#, c-format +msgid "file name contains null character" +msgstr "el nom del fitxer conté un caràcter nul" + +#: tests/genfile.c:516 +#, c-format +msgid "cannot generate sparse files on standard output, use --file option" +msgstr "" +"no es pot generar fitxers dispersos a la sortida estàndard, empreu la opció " +"--file" + +#: tests/genfile.c:594 +#, c-format +msgid "incorrect mask (near `%s')" +msgstr "màscara incorrecta (prop de «%s»)" + +#: tests/genfile.c:600 tests/genfile.c:633 +#, c-format +msgid "Unknown field `%s'" +msgstr "Camp desconegut «%s»" + +#: tests/genfile.c:660 +#, c-format +msgid "cannot set time on `%s'" +msgstr "no es pot definir el temps de «%s»" + +#: tests/genfile.c:699 +#, c-format +msgid "cannot unlink `%s'" +msgstr "no es pot desfer l'enllaç «%s»" + +#: tests/genfile.c:825 +#, c-format +msgid "Command exited successfully\n" +msgstr "La comanda ha finalitzat amb èxit\n" + +#: tests/genfile.c:827 +#, c-format +msgid "Command failed with status %d\n" +msgstr "La comanda ha fallat amb estat %d\n" + +#: tests/genfile.c:831 +#, c-format +msgid "Command terminated on signal %d\n" +msgstr "La comanda ha finalitzat amb la senyal %d\n" + +#: tests/genfile.c:833 +#, c-format +msgid "Command stopped on signal %d\n" +msgstr "La comanda ha parat amb la senyal %d\n" + +#: tests/genfile.c:836 +#, c-format +msgid "Command dumped core\n" +msgstr "La comanda ha abocat l'ànima\n" + +#: tests/genfile.c:839 +#, c-format +msgid "Command terminated\n" +msgstr "Comanda finalitzada\n" + +#: tests/genfile.c:871 +#, c-format +msgid "--stat requires file names" +msgstr "--stat requereix noms de fitxers" + +#~ msgid "Cannot save working directory" +#~ msgstr "No es pot desar al directori de treball" diff --git a/po/cs.gmo b/po/cs.gmo index 37ef3696f88c8c960c0ffafd95a4a09c06105aa0..d971826821cda7f298975a0a3793c89d5fafacdd 100644 GIT binary patch delta 12561 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 H<4gP>t;1`e delta 12029 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 WQIxgok8(vv4)qEtYV%{;a{mqKrKns0 diff --git a/po/cs.po b/po/cs.po index c32f0a4..7c0b796 100644 --- a/po/cs.po +++ b/po/cs.po @@ -12,14 +12,16 @@ # tape → páska (rod ženský, vzor žena; ne pásek) # seek offset → pozice posunu (pásky) # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22.91\n" +"Project-Id-Version: tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2010-02-16 20:38+0100\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-12 20:02+0200\n" "Last-Translator: Petr Pisar \n" "Language-Team: Czech \n" +"Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" @@ -97,7 +99,7 @@ msgstr "" "Chyby v programu oznamujte na adrese %s (anglicky), připomínky k překladu na " "adrese (česky).\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Neznámá systémová chyba" @@ -110,8 +112,8 @@ msgid "give a short usage message" msgstr "vypíše stručný návod na použití" # JMÉNO jako v přísluÅ¡né položce nápovědy -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "JMÉNO" @@ -149,56 +151,61 @@ msgstr "(CHYBA PROGRAMU) Přepínač by měl být znám!?" msgid "write error" msgstr "chyba zápisu" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: přepínač „%s“ není jednoznačný\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: přepínač „--%s“ musí být zadán bez argumentu\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: přepínač „%c%s“ musí být zadán bez argumentu\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: přepínač „%s“ vyžaduje argument\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: přepínač „--%s“ vyžaduje argument\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: nerozpoznaný přepínač „--%s“\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: nerozpoznaný přepínač „%c%s“\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: neplatný přepínač -- „%c“\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: přepínač vyžaduje argument -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: přepínač „-W %s“ není jednoznačný\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: přepínač „-W %s“ musí být zadán bez argumentu\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: přepínač „-W %s“ vyžaduje argument\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "paměť vyčerpána" @@ -550,144 +557,144 @@ msgstr "stdout" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "K %s se nelze připojit: selhal překlad" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Vzdálený shell není možné spustit" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Směr posunu je mimo rozsah" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "Chybný směr posunu" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "Neplatná pozice posunu" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Pozice posunu je je mimo rozsah" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "Neplatný počet bajtů" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "Počet bajtů je mimo rozsah" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "Předčasný konec souboru" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "Neplatní kód operace" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "Operace není podporována" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "Neočekávané argumenty" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "Ovládá páskovou jednotku přijímaje příkazy ze vzdáleného procesu" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "ČÍSLO" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "nastaví úroveň ladění" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "SOUBOR" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "nastaví název souboru pro výstup ladění" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "„%s“ nelze otevřít" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "příliÅ¡ mnoho argumentů" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Neznámý příkaz" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Toto pravděpodobně není tar archiv" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Celkem zapsáno bajtů" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Celkem přečteno bajtů" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Celkem smazáno bajtů: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(roura)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Chybná hodnota pro velikost záznamu" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Název archivu nebyl zadán" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Stdin/Stdout archiv nelze ověřit" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Archiv je komprimován. Použijte přepínač %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Komprimovaný archiv nelze aktualizovat" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Páska na začátku, končím" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "PříliÅ¡ mnoho chyb, končím" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" @@ -695,7 +702,7 @@ msgstr[0] "Velikost záznamu = %'lu blok" msgstr[1] "Velikost záznamu = %'lu bloky" msgstr[2] "Velikost záznamu = %'lu bloků" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" @@ -703,37 +710,37 @@ msgstr[0] "Nezarovnaný blok (%'lu bajt) v archivu" msgstr[1] "Nezarovnaný blok (%'lu bajty) v archivu" msgstr[2] "Nezarovnaný blok (%'lu bajtů) v archivu" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "V archivu se nelze vrátit, bez -i může být nečitelný" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek se nezastavil na hranici záznamu" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: obsahuje neplatné číslo svazku" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "U čísla svazku nastalo přetečení" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Připravte svazek #%d pro archiv %s a stiskněte return:" -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Místo uživatelské odpovědi byl zadán konec souboru" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "VAROVÁNÍ: Archiv je nekompletní" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -744,65 +751,65 @@ msgstr "" " q Ukončit program tar\n" " y nebo odřádkování Pokračovat v operaci\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Vytvořit podshell\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Vypsat tuto nápovědu\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Není nový svazek; končím.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Název souboru nebyl zadán. Zkuste to znovu.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Neplatný vstup. Nápovědu obdržíte napsáním „?“ (otazníku).\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "příkaz %s selhal" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s možná pokračuje na tomto svazku: hlavička obsahuje zkrácený název" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s nepokračuje na tomto svazku" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s je Å¡patné délky (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Tento svazek není je mimo pořadí (%s − %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Pro vyhodnocení vzorku %s musí být archiv pojmenován" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Svazek %s neodpovídá vzorku %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -810,7 +817,7 @@ msgstr "" "%s: název souboru je příliÅ¡ dlouhý, aby byl uložen do vícesvazkové hlavičky " "GNU, bude zkrácen" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "zápis neskončil na konci hranice bloku" @@ -822,20 +829,20 @@ msgstr[0] "Bylo možné načíst pouze %'lu z %'lu bajtu" msgstr[1] "Bylo možné načíst pouze %'lu z %'lu bajtů" msgstr[2] "Bylo možné načíst pouze %'lu z %'lu bajtů" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Obsahy se liší" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Neočekávaný konec archivu" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Typ souboru se liší" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Práva se liší" @@ -851,42 +858,42 @@ msgstr "GID se liší" msgid "Mod time differs" msgstr "Čas poslední modifikace se liší" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Velikost se liší" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Není odkazem na %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symbolický odkaz se liší" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Číslo zařízení se liší" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Ověřuji " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Neznámý typ souboru „%c“, porovnáván jako normální soubor" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Archiv obsahuje názvy souborů, kterým byly odstraněny předpony." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Při kontrole může selhat nalezení původních souborů." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" @@ -894,46 +901,46 @@ msgstr[0] "SELHÁNÍ KONTROLY: zjiÅ¡těna %d chybná hlavička" msgstr[1] "SELHÁNÍ KONTROLY: zjiÅ¡těny %d chybné hlavičky" msgstr[2] "SELHÁNÍ KONTROLY: zjiÅ¡těno %d chybných hlaviček" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Osiřelý nulový blok na pozici %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: obsahuje značku keÅ¡e adresáře %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "hodnota %s typu %s je mimo rozsah %s..%s; nahrazuji za %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "hodnota %s typu %s je mimo rozsah %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Generuji záporné osmičkové hlavičky" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: název souboru je příliÅ¡ dlouhý (max. %d); nezpracován" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: název souboru je příliÅ¡ dlouhý (nelze jej rozdělit); nezpracován" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: název odkazu je příliÅ¡ dlouhý; nezpracován" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" @@ -941,55 +948,55 @@ msgstr[0] "%s: Soubor je kratší o %s bajt; Doplňuji nulami." msgstr[1] "%s: Soubor je kratší o %s bajty; Doplňuji nulami." msgstr[2] "%s: Soubor je kratší o %s bajtů; Doplňuji nulami." -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: soubor je na jiném souborovém systému; nearchivován" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "obsah nezpracován" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Neznámý typ souboru; soubor ignorován" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." msgstr "Chybí odkazy na %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: soubor není změněn; neaktualizován" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: soubor je archiv; nearchivován" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "adresář nezpracován" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: soubor byl během čtení změněn" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: soket ignorován" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: dveře ignorovány" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Přeskakuji na další hlavičku" @@ -997,74 +1004,74 @@ msgstr "Přeskakuji na další hlavičku" msgid "Deleting non-header from archive" msgstr "Z archivu je mazáno to, co není hlavička" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: nemožně stará časová značka %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: časová značka %s je %s s v budoucnosti" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Neočekávaná inkonzistence, při vytváření adresáře" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Adresář byl přejmenován dříve, než bylo možné získat jeho stav" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Souvisle uložené soubory rozbaluji jako obyčejné soubory" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Zkouším rozbalit symbolické odkazy jako pevné odkazy" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Nelze rozbalit – soubor je pokračováním jiného svazku" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Neočekávaná hlavička dlouhého názvu" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Neznámý typ souboru „%c“, rozbalen jako normální soubor" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Současný soubor %s je novější nebo stejně starý" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Tento soubor nebylo možné zálohovat" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "%s nelze přejmenovat na %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Adresář byl přejmenován z %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Adresář byl přejmenován" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Adresář je nový" @@ -1174,179 +1181,181 @@ msgstr "%s: Mažu %s\n" msgid "%s: Cannot remove" msgstr "%s: Nelze smazat" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Vynechávám" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blok %s: ** Blok NUL **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blok %s: ** Konec souboru **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Mezery v hlavičce na místě, kde je očekávána číselná hodnota typu %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" "Osmičková hodnota %.*s typu %s je mimo rozsah; přiřazuji dvojkový complement" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Osmičková hodnota %.*s typu %s je mimo rozsah" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Archiv obsahuje zastaralé base-64 hlavičky" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Base-64 řetězec %s je mimo rozsah typu %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Hodnota base-256 je mimo rozsah typu %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Archiv obsahuje %.*s tam, kde je očekávána číselná hodnota typu %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Hodnota %s typu %s je mimo rozsah %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " odkaz na %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " neznámý souborový typ %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Dlouhý odkaz--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Dlouhý název--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Hlavička svazku--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Pokračováno od %s bajtu--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Vytvářím adresář:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Pracovní adresář nelze změnit" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Přejmenovávám %s na %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: nelze přejmenovat na %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Přejmenovávám %s zpět na %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Pracovní adresář nelze uchovat" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Pracovní adresář nelze změnit" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Soubor smazán dříve než mohl být přečten" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Adresář smazán dříve než mohl být přečten" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "potomek" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "meziprocesový kanál" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "V názvech souborů se nachází žolíkové znaky. Prosím," +msgstr "V názvech souborů se nachází žolíkové znaky" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" -msgstr "porovnávání proti žolíkových znaků zapněte pomocí --wildcards," +msgstr "" +"Porovnávání proti žolíkových znaků zapněte pomocí --wildcards, nebo varování " +"potlačte prostřednictvím --no-wildcards" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: V archivu nenalezen" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Požadovaný výskyt nebyl v archivu nalezen" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Název archivu se neodpovídá" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" "Použití přepínače -C uvnitř seznamu souborů není spolu s --listed-" "incremental dovoleno" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" -msgstr "S --listed-incremental je dovelen pouze jediný přepínač -C" +msgstr "S --listed-incremental je dovolen pouze jediný přepínač -C" #: src/tar.c:81 #, c-format @@ -1370,7 +1379,7 @@ msgstr "" "Neznámý styl citování „%s“. Seznam stylů lze získat příkazem „%s --quoting-" "style=help“." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1389,7 +1398,7 @@ msgstr "" "tar.\n" " tar -xf archiv.tar # Rozbalí vÅ¡echny soubory z archiv.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1411,79 +1420,79 @@ msgstr "" " existují, jinak tvoří jednoduché\n" " never, simple tvoří vždy jednoduché záložní kopie souborů\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Hlavní operační režim:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "vypíše obsah archivu" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "vybalí soubory z archivu" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "vytvoří nový archiv" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "hledá rozdíly mezi archivem a systémem souborů" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "připojí soubory na konec archivu" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "připojí jen takové soubory, které jsou novější nežli kopie v archivu" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "připojí k archivu tarové soubory" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "smaže z archivu (ne na magnetických páskách!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "otestuje jmenovku archivního svazku a skončí" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Operační modifikátory:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "zachází s řídkými soubory efektivně" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "HLAVNÍ[.VEDLEJŠÍ]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "nastaví verzi řídkého formátu (implikuje --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "zpracuje přírůstkové zálohy starého formátu GNU" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "zpracuje přírůstkové zálohy nového formátu GNU" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "úroveň výpisu pro vytvářený archiv s přírůstkovým seznamem" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "neskoční nenulovým kódem při nečitelných souborech" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1495,121 +1504,121 @@ msgstr "" "--list a jen když je zadán seznam souborů na příkazovém řádku nebo přes " "přepínač -T; implicitní ČÍSLO je 1" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "v archivu se lze posunovat" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "v archivu se lze posunovat" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "při vytváření přírůstkových archivů se nekontrolují čísla zařízení" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "při vytváření přírůstkových archivů se kontrolují čísla zařízení (implicitní)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Ovládání přepisování:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "pokusí se zkontrolovat archiv po té, co bude zapsán" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "odstraní soubory po té, co budou přidány do archivu" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "při rozbalovaní nenahrazuje existující soubory" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "nenahrazuje existující soubory, které jsou novější než jejich archivní kopie" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "při rozbalování existující soubory přepisuje" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "před vybalením každého souboru jej odstraní" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "před vybalením adresáře vytvoří prázdnou hierarchii" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "zachovává metadata existujících adresářů" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "při rozbalování přepisuje metadata existujících adresářů (implicitní)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Výběr výstupního proudu:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "soubory vybaluje na standardní výstup" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "PŘÍKAZ" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "vybalené soubory poÅ¡le rourou jinému programu" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "ignoruje návratový kód potomků" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "nenulový návratový kód potomků považuje za chybu" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Zacházení s atributy souborů:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "vynutí JMÉNO jako vlastníka vkládaných souborů" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "vynutí JMÉNO jako skupinu vkládaných souborů" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATUM_NEBO_SOUBOR" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "nastaví čas změny obsahu vkládaných souborů podle DATA_NEBO_SOUBORU" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "ZMĚNY" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "vynutí (symbolický) mód ZMĚN (přístupová práva) vkládaným souborům" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METODA" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1619,11 +1628,11 @@ msgstr "" "(METODA=„REPLACE“; implicitní), nebo nenastavením časů v prvním pořadí " "(METODA=„system“)" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "nevybaluje čas změny obsahu souboru" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" @@ -1631,19 +1640,19 @@ msgstr "" "pokusí se vybalit soubory se stejným vlastníkem jako je uveden v archivu " "(výchozí pro superuživatele)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "rozbaluje soubory pod vaší identitou (výchozí pro běžného uživatele)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "pro jména uživatel/skupin vždy použije čísla" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "vybaluje informace o právech souborů (implicitní pro superuživatele)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1651,15 +1660,15 @@ msgstr "" "při vybalování práv z archivu použije uživatelovu umask (implicitní pro " "běžné uživatele)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "při rozbalování seřadí názvy tak, aby odpovídaly pořadí v archivu" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "stejné jako -p -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1667,139 +1676,139 @@ msgstr "" "pozdrží nastavení časů modifikace a práv rozbalovaných adresářů až do " "dokončení rozbalování" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "zruší účinek přepínače --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Výběr a přepínání zařízení:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIV" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "pro archiv požije soubor zařízení ARCHIV" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "soubor archivu je místní, i když obsahuje dvojtečku" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "namísto příkazu rmt použije PŘÍKAZ" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "namísto rsh použije PŘÍKAZ" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "určuje mechaniku a hustotu" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "vytvoří/vypíše/rozbalí vícesvazkový archiv" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "po zapsaní ČÍSLO × 1024 bajtů vymění pásku" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "na konci každé pásky spustí skript (implikuje -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "použije/aktualizuje číslo svazku v SOUBORU" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Bloky zařízení:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOKY" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOKÅ® × 512 bajtů na záznam" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "ČÍSLO bajtů na záznam, násobek 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "v archivu ignoruje vynulované bloky (znamená EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "předělat bloky v průběhu čtení (pro roury na BSD 4.2)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Výběr formátu archivu:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMÁT" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "vytvoří archiv daného formátu" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMÁT je jeden z následujících:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "starý formát taru V7" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "formát taru GNU <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "formát taru GNU 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "formát POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "formát POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "stejné jako pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "stejné jako --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "stejné jako --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "klíčové_slovo[[:]=hodnota][,klíčové_slovo[[:]=hodnota]]…" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "řídicí klíčová slova paxu" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEXT" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1807,77 +1816,77 @@ msgstr "" "vytvoří archiv s názvem svazku TEXT; při výpisu/rozbalení použije TEXT jako " "vzor se zástupnými symboly pro název svazku" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Přepínače komprese:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "kompresní program určí podle přípony archivu" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "kompresní program neurčí podle přípony archivu" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROGRAM" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "archiv protáhne PROGRAMEM (musí znát -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Výběr místního souboru:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "zadaný SOUBOR přidá do archivu (užitečné, začíná-li jeho název spojovníkem)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "ADRESÁŘ" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "změní adresář na ADRESÁŘ" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "seznam jmen souborů na rozbalení nebo zabalení získá ze SOUBORU" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T čte názvy zakončené nulovým znakem, vypne -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "zruší účinek předchozího přepínače --null" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" "odčiní citování (escapování) názvů souboru načtených přes -T (implicitní)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "nezruší citování (escapování) názvů souboru načtených přes -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "VZOR" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "vynechá soubory, které odpovídají VZORU" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "vynechá soubory vyjmenované v SOUBORU" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1885,95 +1894,95 @@ msgstr "" "vynechá obsah adresářů obsahujících CACHEADR.ZNAČKA, kromě souboru značky " "samotného" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "vynechá vÅ¡e pod adresáři obsahujícími CACHEADR.ZNAČKA" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "vynechá adresáře obsahující CACHEADR.ZNAČKA" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "vynechá obsah adresářů obsahujících SOUBOR, vyjma SOUBORU samotného" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "vynechá vÅ¡e pod adresáři obsahujícími SOUBOR" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "vynechá adresáře obsahující SOUBOR" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "vynechá adresáře systému správy verzí" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "vynechá soubory záloh a zámků" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "zabrání automatickému sestupu do adresářů" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "při tvorbě archivu se zdrží v místním systému souborů" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "sestupuje rekurzivně do adresářů (implicitní)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "neodstraní z názvů souborů úvodní „/“" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "následuje symbolické odkazy; archivuje a vybaluje soubory, na které je " "odkazováno" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" "následuje pevné odkazy; archivuje a vybaluje soubory, na které je odkazováno" # část cesty (adresář) -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "SLOŽKA_NÁZVU" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "začne v archivu na složce SLOŽKA_NÁZVU" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "ukládá jen soubory novější než DATUM_NEBO_SOUBOR" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATUM" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "při změně dat porovná datum i čas" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "STRATEGIE" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "před odstraněním vytvoří záložní kopii za použití STRATEGIE" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "ŘETĚZEC" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1981,97 +1990,97 @@ msgstr "" "před odstraněním vytvoří záložní kopii, potlačí obvyklou příponu („~“, není-" "li uvedeno jinak v proměnné prostředí SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Transformace názvů souborů:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "při rozbalování odřízne ČÍSLO úvodních složek z názvů souborů" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "VÝRAZ" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "názvy souborů transformuje pomocí nahrazovacího VÝRAZU sedu" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Přepínače řídicí výběr souborů podle názvu (ovlivňuje vzory jak pro " "vyloučení, tak pro zahrnutí)" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "ignoruje velikost písmen" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "vzory se testují název souboru od začátku" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "vzory se testují po každém „/“ (implicitní u vyloučení)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "testování je citlivé na velikost (implicitní)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "použije žolíkové znaky (implicitní u vyloučení)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "testuje se přesný řetězec" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "žolíkové znaky nezahrnují „/“" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "žolíkové znaky zahrnují „/“ (implicitní u vyloučení)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Informativní výstup:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "vypisuje zpracovávané soubory" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "KLÍČOVÉ_SLOVO" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "řídí varování" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "zobrazuje zprávy o postupu každých ČÍSLO. záznam (implicitně 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "AKCE" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "v každém kontrolním bodu vykoná AKCI" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "hlásí, že nebyly zpracovány vÅ¡echny odkazy" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SIGNÁL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2082,27 +2091,31 @@ msgstr "" "hlášení, až bude doručen SIGNÁL; Povolené signály jsou SIGHUP, SIGQUIT, " "SIGINT, SIGUSR1 a SIGUSR2; názvy bez předpony SIG jsou rovněž přípustné" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "časy změn obsahu souborů vypisuje v UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "časy souborů vypisuje v plném znění" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "informativní výstup poÅ¡le do SOUBORU" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "každou zprávu opatří číslem bloku uvnitř archivu" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "na každou akcí žádá potvrzení" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "zobrazí implicitní argumenty taru" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2110,31 +2123,31 @@ msgstr "" "při vypisování nebo rozbalování zobrazí každý adresář, který neodpovídá " "vyhledávacím podmínkám" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "zobrazuje názvy souborů a archivů po transformaci" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STYL" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "nastaví styl citování názvů; platné hodnoty STYLÅ® nalezte níže" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "cituje navíc znaky z ŘETĚZCE" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "zakáže citování znaků z ŘETĚZCE" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Přepínače pro kompatibilitu" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2142,63 +2155,63 @@ msgstr "" "při vytváření archivu má stejný význam jako --old-archive, při rozbalování " "jako --no-same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Další přepínače:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "zakáže použití některých potenciálně nebezpečných přepínačů" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "" "Nemůže být zadán více jak jeden přepínač z „-Acdtrux“ nebo „--test-label“" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Odporující si kompresní přepínače" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Neznámý název signálu: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Soubor, ze kterého se má vzít datum a čas, nebyl nalezen" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Datum neznámého formátu %2$s nahrazuji %1$s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Přepínač %s: S datem „%s“ bude zacházeno jako s %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: seznam souborů již načten" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: načtený název souboru obsahuje nulový znak" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "archiv protáhne skrze filtr %s" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "Pro přepínač --quoting-style jsou platné argumenty:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2206,51 +2219,51 @@ msgstr "" "\n" "Implicitní přepínače *tohoto* taru:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Neplatný počet bajtů na záznam" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Neplatná délka pásky" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "Chybná hodnota úrovně přírůstku" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Více než jedeno počáteční datum" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Neplatná hodnota verze řídkého formátu" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' není na této platformě podporován" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "hodnota --checkpoint není celé číslo" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "Neplatná skupina" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Zadána chybná práva" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Neplatné číslo" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Neplatný vlastník" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2258,68 +2271,68 @@ msgstr "" "Přepínač --preserve je zastaralý, místo něj používejte --preserve-" "permissions --preserve-order" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Chybná velikost záznamu" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Velikost záznamu musí být násobek %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Neplatný počet prvků" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Povolen je jen jeden přepínač --to-command" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Neplatný argument hustoty: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Neznámá hustota: „%c“" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Přepínače „-[0-7][lmh]“ nejsou *tímto* tarem podporovány" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[SOUBOR]…" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Přepínač „%c“ vyžaduje argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "bez seznamu souborů nemá --occurrence smysl" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence nelze v požadovaném režimu operace použít" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Více archivačních souborů vyžaduje přepínač „-M“" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "--listed-incremental a --newer nelze kombinovat" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "--level bez --listed-incremental postrádá smysl" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2327,47 +2340,47 @@ msgstr[0] "%s: Název svazku je příliÅ¡ dlouhý (limit je %'lu bajt)" msgstr[1] "%s: Název svazku je příliÅ¡ dlouhý (limit je %'lu bajty)" msgstr[2] "%s: Název svazku je příliÅ¡ dlouhý (limit je %'lu bajtů)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Vícesvazkový archiv není možné ověřit" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Komprimovaný archiv nelze ověřit" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Vícesvazkový komprimovaný archiv nelze vytvořit" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Komprimované archivy nelze zřetězit" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "Přepínač --pax-option lze použít jen na posixových archivech" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Délka svazku nemůže být kratší než délka záznamu" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order není slučitelný s --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Vytvoření prázdného archivu odmítnuto." -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Přepínače „-Aru“ jsou neslučitelné s přepínačem „-f -“" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Musíte zadat jeden z přepínačů „-Acdtrux“ nebo „--test-label“" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Končí se chybovým kódem, protože byly zaznamenány chyby" @@ -2380,85 +2393,85 @@ msgstr[0] "%s: Soubor zkrácen o %s bajt" msgstr[1] "%s: Soubor zkrácen o %s bajty" msgstr[2] "%s: Soubor zkrácen o %s bajtů" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Klíčové slovo %s není známo nebo jeÅ¡tě nebylo implementováno" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "Časový údaj je mimo povolený rozsah" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Vzor %s nelze použít" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Klíčové slovo %s nelze přebít" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Chybná rozšířená hlavička: chybí délka" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Délka rozšířené hlavičky je mimo povolený rozsah" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Délka rozšířené hlavičky %*s je mimo rozsah" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Chybná rozšířená hlavička: po délce chybí bílé místo" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Chybná rozšířená hlavička: chybí znak rovná se" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Chybná rozšířená hlavička: chybí odřádkování" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Ignoruje se neznámé klíčové slovo „%s“ rozšířené hlavičky" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" -"Utvořená dvojice klíčové slovo / hodnota je příliÅ¡ dlouhá (klíčové slovo = %" -"s, délka %s)" +"Utvořená dvojice klíčové slovo / hodnota je příliÅ¡ dlouhá (klíčové slovo = " +"%s, délka %s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "%s=%s v rozšířené hlavičce je mimo rozsah %s–%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Chybná rozšířená hlavička: %s=%s není platné" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Chybná rozšířená hlavička: nadbytečná %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "Chybná rozšířená hlavička: neplatný %s: neočekávaný oddělovač %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Chybná rozšířená hlavička: neplatný %s: lichý počet hodnot" @@ -2499,7 +2512,7 @@ msgstr "Kontrolní bod zápisu %u" msgid "Read checkpoint %u" msgstr "Kontrolní bod čtení %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2507,69 +2520,69 @@ msgstr "" "genfile pracuje s datovými soubory testovacího balíku GNU paxutils.\n" "PŘEPÍNAČE jsou:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Přepínače tvorby souboru:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "VELIKOST" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Vytvoří soubor zadané VELIKOSTI" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Místo na standardní výstup píše do souboru JMÉNO" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Názvy souborů čte ze SOUBORU" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T čte názvy zakončené nulovými znaky" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Vyplní soubor zadaným VZOREM. VZOR je „default“ (výchozí) nebo „zeros“ (nuly)" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Velikost bloku pro řídké soubory" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "Vytvoří řídký soubor. Zbytek příkazové řádku definuje mapu souboru." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "POZICE" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Před zápisem dat se přesune na zadanou POZICI" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Přepínače statistiky souboru:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "U každého zadaného souboru vypíše obsah struktury stat. Implicitní FORMÁT je:" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Přepínače synchronního vykonávání:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "PŘEPÍNAČ" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" @@ -2577,19 +2590,19 @@ msgstr "" "Provede ARGUMENTY. Užitečné s --checkpoint a jedním z --cut, --append, --" "touch, --unlink" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "Provede zadanou akci (vizte níže) při dosažení kontrolního bodu ČÍSLO" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Nastaví datum pro následující přepínač --touch" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Zobrazuje prováděné kontrolní body a návratové kódy PŘÍKAZU" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2597,7 +2610,7 @@ msgstr "" "Synchronní vykonávání akcí. Tyto budou provedeny, když bude dosaženo číslo " "kontrolního bodu zadaného přepínačem --checkpoint." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2605,144 +2618,147 @@ msgstr "" "Zkrátí SOUBOR na velikost zadanou předchozím přepínačem --length (nebo na 0, " "není-li uveden)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "K SOUBORU připojí VELIKOST bajtů. VELIKOST se zadává předcházejícím " "přepínačem --length." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Aktualizuje časy přístupu a změny obsahu SOUBORU" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Vykoná PŘÍKAZ" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "Smaže (unlink) SOUBOR" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Neplatná velikost: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Číslo je mimo povolený rozsah: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Záporná velikost: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) selhalo" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "požadovaná délka souboru %'lu, aktuální %'lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "vytvořený soubor není řídký" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Chyba při rozebírání čísla poblíž „%s“" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Neznámý formát data" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGUMENT…]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "„%s“ nelze otevřít" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "v souboru se nelze pohybovat" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "název souboru obsahuje nulový znak" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "na standardní výstup nelze generovat řídké soubory, použijte přepínač --file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "nesprávná maska (poblíž „%s“)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Neznámá položka „%s“" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "Souboru „%s“ nelze nastavit čas" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "„%s“ nelze odstranit (unlink)" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Příkaz skončil úspěšně\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Příkaz selhal s kódem %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Příkaz skončil signálem %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Příkaz pozastaven signálem %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Příkaz skončil výpisem obrazu paměti\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Příkaz ukončen\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat potřebuje název souboru" +#~ msgid "Cannot save working directory" +#~ msgstr "Pracovní adresář nelze uchovat" + #~ msgid "Cannot resolve hostname %s" #~ msgstr "Název počítače %s nelze přeložit" diff --git a/po/da.gmo b/po/da.gmo index d9befddb41ebb8d09552c8890fd239b56bdd9ff8..68547aaceb6b01b2a7a758f6010da7f1d0a69082 100644 GIT binary patch literal 55982 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 WLR1uAmJ=A_DMzr$7oLTrV*Wo2P3 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, 2001. -# Keld Jørn Simonsen , 2000-2001,2009. # +# Claus Hindsgaul , 2001. +# Keld Jørn Simonsen , 2000-2001,2009,2010. +# Keld Simonsen , 2010. +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: GNU tar 1.22\n" +"Project-Id-Version: GNU tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2009-05-26 13:57+0200\n" -"Last-Translator: Keld Jørn Simonsen \n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-09-26 09:18+0200\n" +"Last-Translator: Keld Simonsen \n" "Language-Team: Danish \n" +"Language: da\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-1\n" +"Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 1.0\n" #: gnu/argmatch.c:135 #, c-format @@ -35,33 +39,35 @@ msgstr "Gyldige argumenter er:" #: gnu/argp-help.c:149 #, c-format msgid "ARGP_HELP_FMT: %s value is less than or equal to %s" -msgstr "" +msgstr "ARGP_HELP_FMT: %s værdi er mindre eller lig med %s" #: gnu/argp-help.c:222 #, c-format msgid "%.*s: ARGP_HELP_FMT parameter requires a value" -msgstr "" +msgstr "%.*s: Parameter for ARGP_HELP_FMT kræver en værdi" #: gnu/argp-help.c:228 #, c-format msgid "%.*s: ARGP_HELP_FMT parameter must be positive" -msgstr "" +msgstr "%.*s: Parameter fra ARGP_HELP_FMT skal være positiv." #: gnu/argp-help.c:237 #, c-format msgid "%.*s: Unknown ARGP_HELP_FMT parameter" -msgstr "" +msgstr "%.*s: Ukendt ARGP_HELP_FMT-parameter" #: gnu/argp-help.c:249 #, c-format msgid "Garbage in ARGP_HELP_FMT: %s" -msgstr "" +msgstr "Skidt i ARGP_HELP_FMT: %s" #: gnu/argp-help.c:1246 msgid "" "Mandatory or optional arguments to long options are also mandatory or " "optional for any corresponding short options." msgstr "" +"Obligatoriske eller valgfri argumenter til lange flag er også obligatoriske " +"eller valgfri for alle tilsvarende korte flag." #: gnu/argp-help.c:1639 msgid "Usage:" @@ -73,7 +79,7 @@ msgstr " eller: " #: gnu/argp-help.c:1655 msgid " [OPTION...]" -msgstr " [FLAG...}" +msgstr " [FLAG...]" #: gnu/argp-help.c:1682 #, c-format @@ -85,43 +91,43 @@ msgstr "Pr msgid "Report bugs to %s.\n" msgstr "Rapportér fejl til %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Ukendt systemfejl" #: gnu/argp-parse.c:83 msgid "give this help list" -msgstr "" +msgstr "vis denne hjælpetekst" #: gnu/argp-parse.c:84 msgid "give a short usage message" -msgstr "" +msgstr "vis en kort hjælpemeddelelse" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" -msgstr "" +msgstr "NAVN" #: gnu/argp-parse.c:85 msgid "set the program name" -msgstr "" +msgstr "angiv progravnavnet" #: gnu/argp-parse.c:86 msgid "SECS" -msgstr "" +msgstr "SEK" #: gnu/argp-parse.c:87 msgid "hang for SECS seconds (default 3600)" -msgstr "" +msgstr "vent i SEK sekunder (standardværdi 3600)" #: gnu/argp-parse.c:144 msgid "print program version" -msgstr "" +msgstr "vis programversion" #: gnu/argp-parse.c:160 #, c-format msgid "(PROGRAM ERROR) No version known!?" -msgstr "" +msgstr "(PROGRAMFEJL) Ingen version kendt!?" #: gnu/argp-parse.c:613 #, c-format @@ -130,75 +136,80 @@ msgstr "%s: For mange argumenter\n" #: gnu/argp-parse.c:756 msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "" +msgstr "(PROGRAMFEJL) Flag burde være genkendt!?" #: gnu/closeout.c:114 msgid "write error" msgstr "skrivefejl" -#: gnu/getopt.c:531 gnu/getopt.c:547 -#, fuzzy, c-format +#: gnu/getopt.c:529 gnu/getopt.c:545 +#, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: flag '%s' er flertydigt\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 -#, fuzzy, c-format +#: gnu/getopt.c:578 gnu/getopt.c:582 +#, c-format msgid "%s: option '--%s' doesn't allow an argument\n" -msgstr "%s: flag '%s' tillader ikke et argument\n" +msgstr "%s: flag '--%s' tillader ikke et argument\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 -#, fuzzy, c-format +#: gnu/getopt.c:591 gnu/getopt.c:596 +#, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: flag '%c%s' tillader ikke et argument\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 -#, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: flag '%s' kræver et argument\n" +#: gnu/getopt.c:639 gnu/getopt.c:658 +#, c-format +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: flag '--%s' kræver et argument\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 -#, fuzzy, c-format +#: gnu/getopt.c:696 gnu/getopt.c:699 +#, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: ukendt flag '--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 -#, fuzzy, c-format +#: gnu/getopt.c:707 gnu/getopt.c:710 +#, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: ukendt flag '%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 -#, fuzzy, c-format +#: gnu/getopt.c:759 gnu/getopt.c:762 +#, c-format msgid "%s: invalid option -- '%c'\n" -msgstr "%s: ugyldigt flag -- %c\n" +msgstr "%s: ugyldigt flag -- '%c'\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 -#, fuzzy, c-format +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 +#, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: flag kræver et argument -- %c\n" +msgstr "%s: flag kræver et argument -- '%c'\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 -#, fuzzy, c-format +#: gnu/getopt.c:885 gnu/getopt.c:901 +#, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: flag '-W %s' er flertydigt\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 -#, fuzzy, c-format +#: gnu/getopt.c:925 gnu/getopt.c:943 +#, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: flag '-W %s' tillader ikke et argument\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: flag '-W %s' kræver et argument\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "hovedlager opbrugt" #: gnu/openat-die.c:36 -#, fuzzy, c-format +#, c-format msgid "unable to record current working directory" -msgstr "Kan ikke ændre arbejdskatalog" +msgstr "Kan ikke notere nuværende arbejdskatalog" #: gnu/openat-die.c:54 -#, fuzzy, c-format +#, c-format msgid "failed to return to initial working directory" -msgstr "Kan ikke gemme arbejdskatalog" +msgstr "Kan ikke gå tilbage til oprindeligt arbejdskatalog" #. TRANSLATORS: #. Get translations for open and closing quotation marks. @@ -250,19 +261,19 @@ msgstr "^[nN]" #: gnu/version-etc.c:76 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "" +msgstr "Pakket af %s (%s)\n" #: gnu/version-etc.c:79 #, c-format msgid "Packaged by %s\n" -msgstr "" +msgstr "Pakket af %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's #. locale. Otherwise, do not translate "(C)"; leave it as-is. #: gnu/version-etc.c:86 msgid "(C)" -msgstr "" +msgstr "©" #: gnu/version-etc.c:88 msgid "" @@ -273,24 +284,29 @@ msgid "" "There is NO WARRANTY, to the extent permitted by law.\n" "\n" msgstr "" +"\n" +"Licens GPLv3+: GNU GPL version 3 eller senere .\n" +"Dette program er frit programmel. Du kan ændre og distribuere det.\n" +"Der er ikke NOGEN SOM HELST GARANTI, i det omfang som lov tillader.\n" #. TRANSLATORS: %s denotes an author name. #: gnu/version-etc.c:104 -#, fuzzy, c-format +#, c-format msgid "Written by %s.\n" -msgstr "Skrevet af François Pinard " +msgstr "Skrevet af %s.\n" #. TRANSLATORS: Each %s denotes an author name. #: gnu/version-etc.c:108 -#, fuzzy, c-format +#, c-format msgid "Written by %s and %s.\n" -msgstr "Skrevet af François Pinard " +msgstr "Skrevet af %s og %s.\n" #. TRANSLATORS: Each %s denotes an author name. #: gnu/version-etc.c:112 -#, fuzzy, c-format +#, c-format msgid "Written by %s, %s, and %s.\n" -msgstr "Skrevet af François Pinard " +msgstr "Skrevet af %s, %s og %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -301,6 +317,8 @@ msgid "" "Written by %s, %s, %s,\n" "and %s.\n" msgstr "" +"Skrevet af %s, %s, %s\n" +"og %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -311,6 +329,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, and %s.\n" msgstr "" +"Skrevet af %s, %s, %s,\n" +"%s og %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -321,6 +341,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, and %s.\n" msgstr "" +"Skrevet af %s, %s, %s,\n" +"%s, %s og %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -331,6 +353,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, %s, and %s.\n" msgstr "" +"Skrevet af %s, %s, %s,\n" +"%s, %s, %s og %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -342,6 +366,9 @@ msgid "" "%s, %s, %s, %s,\n" "and %s.\n" msgstr "" +"Skrevet af %s, %s, %s,\n" +"%s, %s, %s, %s\n" +"og %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -353,6 +380,9 @@ msgid "" "%s, %s, %s, %s,\n" "%s, and %s.\n" msgstr "" +"Skrevet af %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s og %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -364,38 +394,42 @@ msgid "" "%s, %s, %s, %s,\n" "%s, %s, and others.\n" msgstr "" +"Skrevet af %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, %s og andre.\n" #. TRANSLATORS: The placeholder indicates the bug-reporting address #. for this package. Please add _another line_ saying #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: gnu/version-etc.c:247 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Report bugs to: %s\n" -msgstr "Rapportér fejl til %s.\n" +msgstr "" +"\n" +"Rapportér fejl til: %s\n" #: gnu/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report %s bugs to: %s\n" -msgstr "" -"\n" -"Rapportér fejl til .\n" +msgstr "Rapportér %s fejl til: %s\n" #: gnu/version-etc.c:253 #, c-format msgid "%s home page: <%s>\n" -msgstr "" +msgstr "%s hjemmeside: <%s>\n" #: gnu/version-etc.c:255 #, c-format msgid "%s home page: \n" -msgstr "" +msgstr "%s hjemmeside: .\n" #: gnu/version-etc.c:258 msgid "General help using GNU software: \n" msgstr "" +"Generel brugerhjælp for GNU-programmel: .\n" #. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. #. Directly translating this to another language will not work, first because @@ -404,7 +438,7 @@ msgstr "" #: lib/paxerror.c:58 lib/paxerror.c:71 #, c-format msgid "%s: Cannot %s" -msgstr "%s: Kan ikke %s" +msgstr "%s: Funktionen %s fejlede" #. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. #. Directly translating this to another language will not work, first because @@ -434,15 +468,15 @@ msgstr "%s: Kan ikke oprette l #, c-format msgid "%s: Read error at byte %s, while reading %lu byte" msgid_plural "%s: Read error at byte %s, while reading %lu bytes" -msgstr[0] "%s: Læsefejl ved byte %s, ved læsning af %lu byte" -msgstr[1] "%s: Læsefejl ved byte %s, ved læsning af %lu byte" +msgstr[0] "%s: Læsefejl ved byte %s ved læsning af %lu byte" +msgstr[1] "%s: Læsefejl ved byte %s ved læsning af %lu byte" #: lib/paxerror.c:192 #, c-format msgid "%s: Warning: Read error at byte %s, while reading %lu byte" msgid_plural "%s: Warning: Read error at byte %s, while reading %lu bytes" -msgstr[0] "%s: Advarsel: Læsefejl ved byte %s, ved læsning af %lu byte" -msgstr[1] "%s: Advarsel: Læsefejl ved byte %s, ved læsning af %lu byte" +msgstr[0] "%s: Advarsel: Læsefejl ved byte %s ved læsning af %lu byte" +msgstr[1] "%s: Advarsel: Læsefejl ved byte %s ved læsning af %lu byte" #: lib/paxerror.c:259 #, c-format @@ -474,16 +508,15 @@ msgstr "Fjerner indledende '%s' fra medlemsnavne" #: lib/paxnames.c:156 #, c-format msgid "Removing leading `%s' from hard link targets" -msgstr "Fjerner indledende '%s' fra absolutte lænkemål" +msgstr "Fjerner indledende '%s' fra hårde lænkemål" #: lib/paxnames.c:169 -#, fuzzy msgid "Substituting `.' for empty member name" -msgstr "Fjerner indledende '%.*s' fra medlemsnavne" +msgstr "Erstatter tomme navne i arkivet med \".\"" #: lib/paxnames.c:170 msgid "Substituting `.' for empty hard link target" -msgstr "" +msgstr "Erstatter tomt mål for hård lænke med \".\"" #: lib/rtapelib.c:299 #, c-format @@ -503,296 +536,291 @@ msgstr "standard-ud" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Kan ikke opkoble til %s: navneopslag mislykkedes" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" -msgstr "Kan ikke eksekvere fjern skal" +msgstr "Kan ikke eksekvere fjern skál" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" -msgstr "Søgeretning uden for område" +msgstr "Søgeretning udenfor interval" -#: rmt/rmt.c:419 -#, fuzzy +#: rmt/rmt.c:438 msgid "Invalid seek direction" -msgstr "Ugyldig modus angivet i flag" +msgstr "Ugyldig søgeretning" -#: rmt/rmt.c:427 -#, fuzzy +#: rmt/rmt.c:446 msgid "Invalid seek offset" -msgstr "Ugyldigt tidsstempel" +msgstr "Ugyldig positioneringsværdi" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" -msgstr "Søgeposition uden for område" +msgstr "Søgeposition udenfor interval" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 -#, fuzzy +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" -msgstr "Ugyldig båndlængde" +msgstr "Ugyldigt byteantal" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 -#, fuzzy +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" -msgstr "Søgeposition uden for område" +msgstr "Byteantal udenfor interval" -#: rmt/rmt.c:539 -#, fuzzy +#: rmt/rmt.c:558 msgid "Premature eof" -msgstr "rmtd: For tidlig filafslutning\n" +msgstr "For tidlig filafslutning" -#: rmt/rmt.c:582 -#, fuzzy +#: rmt/rmt.c:601 msgid "Invalid operation code" -msgstr "%s: ugyldigt flag -- %c\n" +msgstr "Ugyldig operationskode" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" -msgstr "" +msgstr "Operation understøttes ikke" -#: rmt/rmt.c:645 -#, fuzzy +#: rmt/rmt.c:664 msgid "Unexpected arguments" -msgstr "Uventet filslutning i arkivet" +msgstr "Uventede argumenter" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" -msgstr "" +msgstr "Styr en båndstation via accept af kommandoer fra en fjernproces" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" -msgstr "" +msgstr "NUMMER" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" -msgstr "" +msgstr "sæt fejlsøgningsniveau" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" -msgstr "" +msgstr "FIL" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" -msgstr "" +msgstr "sæt fejlsøgningsfilnavn" -#: rmt/rmt.c:696 rmt/rmt.c:764 -#, fuzzy, c-format +#: rmt/rmt.c:715 rmt/rmt.c:783 +#, c-format msgid "cannot open %s" -msgstr "kan ikke ændre ejer (chown) '%s'" +msgstr "kan ikke åbne %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" -msgstr "" +msgstr "for mange argumenter" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Ugyldig kommando" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Dette ligner ikke et tar-arkiv" -#: src/buffer.c:385 src/buffer.c:394 -#, fuzzy +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" -msgstr "Totalt antal byte skrevet: %s (%sB, %sB/s)\n" +msgstr "Totalt antal byte skrevet" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" -msgstr "" +msgstr "Totalt antal byte læst" -#: src/buffer.c:396 -#, fuzzy, c-format +#: src/buffer.c:461 +#, c-format msgid "Total bytes deleted: %s\n" -msgstr "Totalt antal byte skrevet: %s (%sB, %sB/s)\n" +msgstr "Totalt antal byte slettet: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(datakanal)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Ugyldig værdi for record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Arkivnavn er ikke opgivet" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Kan ikke verificere standard-ind/standard-ud arkiver" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" -msgstr "" +msgstr "Arkivet er komprimeret. Brug flaget %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Kan ikke opdatere komprimerede arkiver" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Ved begyndelsen af båndet, afslutter nu" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "For mange fejl, afslutter" -#: src/buffer.c:744 -#, fuzzy, c-format +#: src/buffer.c:821 +#, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" -msgstr[0] "Poststørrelse = %lu blokke" +msgstr[0] "Poststørrelse = %lu blok" msgstr[1] "Poststørrelse = %lu blokke" -#: src/buffer.c:765 -#, fuzzy, c-format +#: src/buffer.c:842 +#, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Ikke-justeret blok (%lu byte) i arkiv" -msgstr[1] "Ikke-justeret blok (%lu byte) i arkiv" +msgstr[1] "Ikke-justerede blokke (%lu byte) i arkiv" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Kunne ikke gå tilbage i arkivfilen. Den kan være ulæselig uden -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" -msgstr "" +msgstr "rmtlseek stoppede ikke på en postgrænse" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: indeholder ugyldigt delarkivs-nummer" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Overløb på delarkiv-nummer" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Klargør delarkiv nummer %d for %s og tryk retur: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Filafslutning hvor svar fra bruger var forventet" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "ADVARSEL: Arkivet er ufuldstændigt" -#: src/buffer.c:1003 -#, fuzzy, c-format +#: src/buffer.c:1077 +#, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" " q Abort tar\n" " y or newline Continue operation\n" msgstr "" -" n [navn] Giv et filnavn for næste (og efterfølgende) delarkiv(er)\n" -" q Afbryd tar\n" -" ! Start en skal\n" -" ? Skriv denne list\n" +" n navn Giv et nyt filnavn for næste (og efterfølgende) " +"delarkiver\n" +" q Afbryd tar\n" +" y eller ny linje Fortsæt handling\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" -msgstr "" +msgstr " ! Start en ny skál\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" -msgstr "" +msgstr " ? Udskriv denne liste\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Intet nyt delarkiv; afslutter.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" -msgstr "" +msgstr "Filnavn ikke angivet, prøv igen.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" -msgstr "" +msgstr "Ugyldigt inddata. Skriv ? for at få hjælp.\n" -#: src/buffer.c:1113 -#, fuzzy, c-format +#: src/buffer.c:1187 +#, c-format msgid "%s command failed" msgstr "'%s'-kommando mislykkedes" -#: src/buffer.c:1294 -#, fuzzy, c-format +#: src/buffer.c:1368 +#, c-format msgid "%s is possibly continued on this volume: header contains truncated name" -msgstr "%s fortsætter ikke i dette delarkiv" +msgstr "" +"%s fortsættes muligvis i dette delarkiv: hoved indeholder afkortet navn" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s fortsætter ikke i dette delarkiv" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s har forkert størrelse (%s != %s + %s)" -#: src/buffer.c:1326 -#, fuzzy, c-format +#: src/buffer.c:1401 +#, c-format msgid "This volume is out of sequence (%s - %s != %s)" -msgstr "Dette delarkiv kommer ude af rækkefølge" +msgstr "Dette delarkiv er ude af rækkefølge (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Arkivet er ikke navngivet til at passe med %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" -msgstr "Volumenet '%s' stemmer ikke overens med %s" +msgstr "Delarkivet '%s' stemmer ikke overens med %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" +"%s: filnavnet er for langt til at gemmes i hovedet på et GNU-flerdelarkiv, " +"afkortes" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" -msgstr "" +msgstr "skrivning stoppede ikke på en blokgrænse" #: src/compare.c:95 -#, fuzzy, c-format +#, c-format msgid "Could only read %lu of %lu byte" msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Kunne kun læse %lu af %lu byte" msgstr[1] "Kunne kun læse %lu af %lu byte" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Indhold er forskelligt" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Uventet filslutning i arkivet" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Filtype er forskellig" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Modus er forskellig" @@ -808,143 +836,143 @@ msgstr "Gruppe-ID er forskellig" msgid "Mod time differs" msgstr "Modificeringstid er forskellig" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Størrelse er forskellig" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Ikke lænket til %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symbolsk lænke er forskellig" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Enhedsnummer er forskellig" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " -msgstr "Verificering " +msgstr "Verificér " -#: src/compare.c:469 -#, fuzzy, c-format +#: src/compare.c:463 +#, c-format msgid "%s: Unknown file type `%c', diffed as normal file" -msgstr "%s: Ukendt filtype '%c', diff-et som en almindelig fil" +msgstr "%s: Ukendt filtype '%c', diff'et som en almindelig fil" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." -msgstr "" +msgstr "Arkivet indeholder filnavne med indledende prefixer borttaget." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." -msgstr "" +msgstr "Verificering kan mislykkes med at finde originalfiler." -#: src/compare.c:599 -#, fuzzy, c-format +#: src/compare.c:593 +#, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" -msgstr[0] "VERIFIKASIONSFEJL: %d ukendte hoveder fundet" -msgstr[1] "VERIFIKASIONSFEJL: %d ukendte hoveder fundet" +msgstr[0] "VERIFICERINGSFEJL: %d ukendt hoved fundet" +msgstr[1] "VERIFICERINGSFEJL: %d ukendte hoveder fundet" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" -msgstr "" +msgstr "En enkeltstående nulblok ved %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" -msgstr "" +msgstr "%s: indeholder et cachekatalog-mærke %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" -msgstr "værdi %s ud af %s område %s..%s; erstatter %s" +msgstr "værdi %s ud af %s interval %s..%s; erstatter %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" -msgstr "værdi %s ud af %s område %s..%s" +msgstr "værdi %s ud af %s interval %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Genererer negative oktale hoveder" -#: src/create.c:624 src/create.c:687 -#, fuzzy, c-format +#: src/create.c:611 src/create.c:674 +#, c-format msgid "%s: file name is too long (max %d); not dumped" -msgstr "%s: file er uændret; ikke lagret" +msgstr "%s: filnavnet er for langt (max %d); ikke arkiveret" -#: src/create.c:634 -#, fuzzy, c-format +#: src/create.c:621 +#, c-format msgid "%s: file name is too long (cannot be split); not dumped" -msgstr "%s: file er uændret; ikke lagret" +msgstr "%s: filnavnet er for langt (kan ikke opdeles); ikke arkiveret" -#: src/create.c:661 -#, fuzzy, c-format +#: src/create.c:648 +#, c-format msgid "%s: link name is too long; not dumped" -msgstr "%s: file er uændret; ikke lagret" +msgstr "%s: lænkenavn er for langt; ikke arkiveret" -#: src/create.c:1078 -#, fuzzy, c-format +#: src/create.c:1062 +#, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" -msgstr[0] "%s: Filen formindsket med %s byte, fylder ud med nuller" +msgstr[0] "%s: Filen formindsket med %s byte, fylder ud med nul" msgstr[1] "%s: Filen formindsket med %s byte, fylder ud med nuller" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" -msgstr "%s: fil er på et andet filesystem. Ikke lagret" +msgstr "%s: fil er på et andet filesystem; ikke arkiveret" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" -msgstr "" +msgstr "indholdet ikke arkiveret" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Ukendt filtype; filen blev ignoreret" -#: src/create.c:1472 -#, fuzzy, c-format +#: src/create.c:1527 +#, c-format msgid "Missing links to %s." -msgstr " lænke til %s\n" +msgstr "Mangler lænke til %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" -msgstr "%s: file er uændret; ikke lagret" +msgstr "%s: fil er uændret; ikke arkiveret" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" -msgstr "%s: fil er det samme som arkivet; ikke lagret" +msgstr "%s: fil er det samme som arkivet; ikke arkiveret" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" -msgstr "" +msgstr "katalog ikke arkiveret" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: Fil ændredes mens vi læste den" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: sokkel ignoreret" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: dør ignoreret" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Hopper til næste hoved" @@ -952,75 +980,74 @@ msgstr "Hopper til n msgid "Deleting non-header from archive" msgstr "Sletter ikke-hoved fra arkivet" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" -msgstr "" +msgstr "%s: usandsynligt gammelt tidsstempel %s" -#: src/extract.c:229 -#, fuzzy, c-format +#: src/extract.c:295 +#, c-format msgid "%s: time stamp %s is %s s in the future" -msgstr "%s: tidsstempel %s er %lu s i fremtiden" +msgstr "%s: tidsstempel %s er %s sekunder ud i fremtiden" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Uventet uoverensstemmelse ved oprettelse af katalog" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" -msgstr "%s: Katalog omdøbt før dets status kunne blive udtrukket" +msgstr "%s: Katalog omdøbt før dets status kunne blive udpakket" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" -msgstr "Udtrækker sammenhængende filer som almindelige filer" +msgstr "Udpakker sammenhængende filer som almindelige filer" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" -msgstr "Forsøger at udtrække symbolske lænker som hårde lænker" +msgstr "Forsøger at udpakke symbolske lænker som hårde lænker" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" -msgstr "%s: Kan ikke udtrække -- filen er fortsat fra et tidligere delarkiv" +msgstr "%s: Kan ikke udpakke -- filen er fortsat fra et andet delarkiv" -#: src/extract.c:1190 src/list.c:1109 -#, fuzzy +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" -msgstr "Uventet filafslutning i ødelagte navne" +msgstr "Uventet langt filnavnshoved" -#: src/extract.c:1197 -#, fuzzy, c-format +#: src/extract.c:1353 +#, c-format msgid "%s: Unknown file type `%c', extracted as normal file" -msgstr "%s: Ukendt filtype '%c', udtrukket som en almindelig fil" +msgstr "%s: Ukendt filtype '%c', udpakket som en almindelig fil" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" -msgstr "" +msgstr "Nuværende %s er nyere eller lige så gammel" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Kunne ikke sikkerhedskopiere denne fil" -#: src/extract.c:1402 -#, fuzzy, c-format +#: src/extract.c:1568 +#, c-format msgid "Cannot rename %s to %s" -msgstr "%s: Kan ikke omdøbe til %s" +msgstr "Kan ikke omdøbe %s til %s" -#: src/incremen.c:482 src/incremen.c:526 -#, fuzzy, c-format +#: src/incremen.c:474 src/incremen.c:518 +#, c-format msgid "%s: Directory has been renamed from %s" -msgstr "%s: Kataloget er blevet omdøbt" +msgstr "%s: Kataloget er blevet omdøbt fra %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Kataloget er blevet omdøbt" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Kataloget er nyt" @@ -1030,13 +1057,12 @@ msgid "Invalid time stamp" msgstr "Ugyldigt tidsstempel" #: src/incremen.c:1012 -#, fuzzy msgid "Invalid modification time (seconds)" -msgstr "Ugyldig modus angivet i flag" +msgstr "Ugyldig modifikationstid (sekunder)" #: src/incremen.c:1027 msgid "Invalid modification time (nanoseconds)" -msgstr "" +msgstr "Ugyldig modifikationstid (nanosekunder)" #: src/incremen.c:1047 msgid "Invalid device number" @@ -1048,79 +1074,80 @@ msgstr "Ugyldigt inode-nummer" #: src/incremen.c:1113 src/incremen.c:1150 msgid "Field too long while reading snapshot file" -msgstr "" +msgstr "Felt for langt da øjebliksfil læstes" #: src/incremen.c:1120 src/incremen.c:1158 msgid "Read error in snapshot file" -msgstr "" +msgstr "Læsefejl i øjebliksfil" #: src/incremen.c:1122 src/incremen.c:1162 src/incremen.c:1214 #: src/incremen.c:1272 -#, fuzzy msgid "Unexpected EOF in snapshot file" -msgstr "Uventet filslutning i arkivet" +msgstr "Uventet filslutning i øjebliksfil" #: src/incremen.c:1129 src/incremen.c:1169 msgid "Unexpected field value in snapshot file" -msgstr "" +msgstr "Uventet feltværdi i øjebliksfil" #: src/incremen.c:1264 msgid "Missing record terminator" -msgstr "" +msgstr "Postafslutning mangler" #: src/incremen.c:1325 src/incremen.c:1328 msgid "Bad incremental file format" -msgstr "" +msgstr "Fejlagtigt inkrementelt filformat" #: src/incremen.c:1347 #, c-format msgid "Unsupported incremental format version: %" msgstr "" +"Formatversion for inkrementel sikkerhedskopiering understøttes ikke: " +"%" #: src/incremen.c:1502 #, c-format msgid "Malformed dumpdir: expected '%c' but found %#3o" -msgstr "" +msgstr "Fejlagtigt dumpkatalog: forventede \"%c\" men fandt %#3o" #: src/incremen.c:1512 msgid "Malformed dumpdir: 'X' duplicated" -msgstr "" +msgstr "Fejlagtigt dumpkatalog: \"X\" duplikeret" #: src/incremen.c:1525 msgid "Malformed dumpdir: empty name in 'R'" -msgstr "" +msgstr "Fejlagtigt dumpkatalog: tomt navn i \"R\"" #: src/incremen.c:1538 msgid "Malformed dumpdir: 'T' not preceeded by 'R'" -msgstr "" +msgstr "Fejlagtigt dumpkatalog: \"T\" foregås ikke af \"R\"" #: src/incremen.c:1544 msgid "Malformed dumpdir: empty name in 'T'" -msgstr "" +msgstr "Fejlagtigt dumpkatalog: tomt navn i \"T\"" #: src/incremen.c:1564 #, c-format msgid "Malformed dumpdir: expected '%c' but found end of data" -msgstr "" +msgstr "Fejlagtigt dumpkatalog: forventede \"%c\" men fandt slut på data" #: src/incremen.c:1571 msgid "Malformed dumpdir: 'X' never used" -msgstr "" +msgstr "Fejlagtigt dumpkatalog: \"X\" bruges aldrig" #: src/incremen.c:1615 -#, fuzzy, c-format +#, c-format msgid "Cannot create temporary directory using template %s" -msgstr "kan ikke oprette kataloget '%s'" +msgstr "kan ikke oprette midlertidigt katalog ved brug af skabelonen %s" #: src/incremen.c:1677 #, c-format msgid "%s: Not purging directory: unable to stat" -msgstr "" +msgstr "%s: Renser ikke katalog: kunne ikke tage status" #: src/incremen.c:1690 -#, fuzzy, c-format +#, c-format msgid "%s: directory is on a different device: not purging" -msgstr "%s: fil er på et andet filesystem. Ikke lagret" +msgstr "%s: fil er på et andet filesystem: sletter ikke" #: src/incremen.c:1698 #, c-format @@ -1132,174 +1159,179 @@ msgstr "%s: Sletter %s\n" msgid "%s: Cannot remove" msgstr "Kan ikke slette %s" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" -msgstr "Udelader %s" +msgstr "%s: Udelader" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" -msgstr "blok %s: ** Blok med NUL-er **\n" +msgstr "blok %s: ** Blok med NULler **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blok %s: ** Slut på fil **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Blank-tegn i hovedet hvor numerisk %s værdi var forventet" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" -msgstr "Arkiv oktal værdi %.*s er udenfor %s område; antager to-komplement" +msgstr "Oktal værdi %.*s i arkiv er udenfor %s interval; antager to-komplement" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" -msgstr "Arkiv oktal værdi %.*s er udenfor %s område" +msgstr "Oktal værdi %.*s i arkiv er udenfor %s interval" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Arkiv indeholder forældede base-64 hoveder" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" -msgstr "Arkiv base-64 streng med fortegn %s er uden for %s område" +msgstr "Base-64 streng med fortegn %s i arkiv er udenfor %s interval" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" -msgstr "Arkiv base-256 værdi er uden for %s område" +msgstr "Base-256 værdi i arkiv er udenfor %s interval" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" -msgstr "Arkiv indeholder %.*s hvor numerisk %s værdi var forventet" +msgstr "Arkiv indeholder %.*s hvor numerisk %s-værdi var forventet" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" -msgstr "Arkiv værdi %s er udenfor %s område %s..%s" +msgstr "Arkiv værdi %s er udenfor %s interval %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " lænke til %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " ukendt filtype %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" -msgstr "" +msgstr "--Lang lænke--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" -msgstr "" +msgstr "--Langt navn--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" -msgstr "--Volumenhoved--\n" +msgstr "--Delarkivhoved--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" -msgstr "--Fortsætter ved byte %s--\n" +msgstr "--Fortsat ved byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Opretter katalog:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Kan ikke ændre arbejdskatalog" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Omdøber %s til %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Kan ikke omdøbe til %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Omdøber %s tilbage til %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Kan ikke gemme arbejdskatalog" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Kan ikke ændre arbejdskatalog" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Fil fjernet før vi læste den" -#: src/misc.c:774 -#, fuzzy, c-format +#: src/misc.c:866 +#, c-format msgid "%s: Directory removed before we read it" -msgstr "%s: Fil fjernet før vi læste den" +msgstr "%s: Katalog fjernet før vi læste det" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "underproces" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "mellemproces-kanal" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "" +msgstr "Mønstermatchningstegn bruges i filnavne" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" +"Brug --wildcards for at aktivere mønstermatchning, eller --no-wildcards for " +"at undertrykke denne advarsel" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" -msgstr "%s: Blev ikke fundet i arkivet" +msgstr "%s: Ikke fundet i arkivet" -#: src/names.c:622 -#, fuzzy, c-format +#: src/names.c:615 +#, c-format msgid "%s: Required occurrence not found in archive" -msgstr "%s: Blev ikke fundet i arkivet" +msgstr "%s: Krævet forekomst blev ikke fundet i arkivet" + +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Arkivetiket stemmer ikke overrens" -#: src/names.c:894 +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" +"At bruge -C-flaget i en filliste er ikke tilladt med --listed-incremental" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" -msgstr "" +msgstr "Kun ét -C-flag er tilladt med --listed-incremental" #: src/tar.c:81 #, c-format @@ -1307,9 +1339,9 @@ msgid "Options `-%s' and `-%s' both want standard input" msgstr "Flagene '-%s' and '-%s' vil begge have standard inddata" #: src/tar.c:158 -#, fuzzy, c-format +#, c-format msgid "%s: Invalid archive format" -msgstr "%s: ugyldig gruppe" +msgstr "%s: ugyldigt arkivformat" #: src/tar.c:182 msgid "GNU features wanted on incompatible archive format" @@ -1320,9 +1352,10 @@ msgstr "GNU-funktioner fors msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" +"Ukendt citeringsstíl \"%s\". Prøv \"%s --quoting-style=help for at få en " +"liste." -#: src/tar.c:347 -#, fuzzy +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1332,16 +1365,15 @@ msgid "" " tar -tvf archive.tar # List all files in archive.tar verbosely.\n" " tar -xf archive.tar # Extract all files from archive.tar.\n" msgstr "" -"\n" -"Brug: %s [OPTION]... [FILE]...\n" +"GNU 'tar' gemmer mange filer sammen i et enkelt disk- eller bånd-arkiv, og " +"kan gendanne individuelle filer fra arkivet.\n" "\n" "Eksempler:\n" -" %s -cf arkiv.tar foo bar # Skab arkiv.tar fra filerne foo og bar.\n" -" %s -tvf arkiv.tar # List alle filer i arkiv.tar udførligt.\n" -" %s -xf arkiv.tar # Udtræk alle filer fra arkiv.tar.\n" +" tar -cf arkiv.tar foo bar # Skab arkiv.tar fra filerne foo og bar.\n" +" tar -tvf arkiv.tar # Vís alle filer i arkiv.tar udførligt.\n" +" tar -xf arkiv.tar # Udpak alle filer fra arkiv.tar.\n" -#: src/tar.c:356 -#, fuzzy +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1352,1879 +1384,1351 @@ msgid "" " nil, existing numbered if numbered backups exist, simple otherwise\n" " never, simple always make simple backups\n" msgstr "" -"\n" "Suffikset for sikkerhedskopiering er '~', med mindre det er sat med --" "suffix\n" -"eller SIMPLE_BACKUP_SUFFIX. Versionskontrol kan sættes med --backup eller\n" -"VERSION_CONTROL. Gyldige værdier er:\n" +"eller SIMPLE_BACKUP_SUFFIX Versionskontrollen kan sættes med --backup " +"eller\n" +"VERSION_CONTROL, værdier er:\n" "\n" +" none, off lav aldrig sikkerhedskopier\n" " t, numbered lav nummererede sikkerhedskopier\n" " nil, existing nummererede, dersom nummererede sikkerhedskopier " "eksisterer,\n" " ellers simple\n" -" never, simple lav simple sikkerhedskopier\n" +" never, simple lav altid simple sikkerhedskopier\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" -msgstr "" +msgstr "Hovedoperationstilstand:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" -msgstr "" +msgstr "vis indholdet af et arkiv" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" -msgstr "" +msgstr "udpak filer fra et arkiv" -#: src/tar.c:394 -#, fuzzy +#: src/tar.c:395 msgid "create a new archive" -msgstr "Uventet filslutning i arkivet" +msgstr "opret et nyt arkiv" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" -msgstr "" +msgstr "find forskelle mellem filsystemet og arkivet" -#: src/tar.c:399 -#, fuzzy +#: src/tar.c:400 msgid "append files to the end of an archive" -msgstr "%d overflødige byte ignoreret ved slutningen på arkiv" +msgstr "tilføj filer til slutningen af et arkiv" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" -msgstr "" +msgstr "tilføj kun filer som er nyere end dem i arkivet" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" -msgstr "" +msgstr "tilføj indholdet i tar-arkivfiler til et arkiv" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" -msgstr "" +msgstr "fjern fra arkivet (ikke på magnetbånd!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" -msgstr "" +msgstr "verificér arkivets delarkivnavn og afslut derefter." -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" -msgstr "" +msgstr "Ændringer til handling:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" -msgstr "" +msgstr "håndtér filer med huller effektivt" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" -msgstr "" +msgstr "ØVRE[.NEDRE]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" +"angiv hvilken formatversion som skal håndtere filer med huller (implicerer --" +"sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" -msgstr "" +msgstr "håndtér det gamle GNU-format for inkrementel sikkerhedskopiering" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" -msgstr "" +msgstr "håndtér det nye GNU-format for inkrementel sikkerhedskopiering" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" -msgstr "" +msgstr "dumpniveau for \"listed-incremental\" arkiv" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" -msgstr "" +msgstr "afslut ikke med fejlslutstatus p.g.a. filer, der ikke kan læses" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" "diff, --extract or --list and when a list of files is given either on the " "command line or via the -T option; NUMBER defaults to 1" msgstr "" +"behandl kun forekomst NUMMER af hver fil i arkivet. Dette flag er kun " +"gyldigt med en af underkommandoerne --delete, --diff, --extract eller --list " +"og når en liste af filer angives enten på kommandolinjen eller med flaget -" +"T. Standardværdi for NUMMER er 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" -msgstr "" +msgstr "arkivet er søgbart" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" -msgstr "" +msgstr "arkivet er ikke søgbart" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" -msgstr "" +msgstr "kontrollér ikke enhedsnumre når inkrementelle arkiver oprettes" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" +"kontrollér enhedsnumre når inkrementelle arkiver oprettes (standardværdi)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" -msgstr "" +msgstr "Kontrollér overskrivning:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" -msgstr "" +msgstr "forsøg at verificere arkivet efter det blev skrevet" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" -msgstr "" +msgstr "fjern filer efter de blev tilføjet til arkivet" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" -msgstr "" +msgstr "erstat ikke eksisterende filer ved udpakning" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" +"erstat ikke eksisterende filer som er nyere end de, som findes i arkivet" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" -msgstr "" +msgstr "overskriv eksisterende filer ved udpakning" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" -msgstr "" +msgstr "fjern hver eksisterende fil inden en ny udpakkes oven i den" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" -msgstr "" +msgstr "tøm kataloghierarkier før udpakning af katalog" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" -msgstr "" +msgstr "bevar eksisterende katalogers metadata" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" +"overskriv metadata for eksisterende kataloger ved udpakning (standardværdi)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" -msgstr "" +msgstr "Vælg uddatastrøm:" -#: src/tar.c:475 -#, fuzzy +#: src/tar.c:476 msgid "extract files to standard output" -msgstr "Fejl ved skrivning til standard uddata" +msgstr "udpak filer til standard-ud" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" -msgstr "" +msgstr "KOMMANDO" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" -msgstr "" +msgstr "udpak filer til standard input til et andet program" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" -msgstr "" +msgstr "ignorér barneprocessers slutstatus" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" -msgstr "" +msgstr "behandl slutstatus fra barneprocesser bortset fra 0 som fejl" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" -msgstr "" +msgstr "Håndtering af filattributter:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" -msgstr "" +msgstr "sæt NAVN som ejer for tilføjede filer" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" -msgstr "" +msgstr "sæt NAVN som gruppe for tilføjede filer" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" -msgstr "" +msgstr "DATO-ELLER-FIL" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" -msgstr "" +msgstr "sæt modificeringstid på tilføjede filer fra DATO-ELLER-FIL" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" -msgstr "" +msgstr "RETTIGHEDER" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" -msgstr "" +msgstr "sæt (symbolske) RETTIGHEDER for tilføjede filer" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" -msgstr "" +msgstr "METODE" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" +"bevar accesstider på arkiverede filer, enten ved at genskabe tiderne efter " +"læsning (METODE=\"replace\", standardværdi) eller ved at ikke sætte tiderne " +"overhovedet (METODE=\"system\")" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" -msgstr "" +msgstr "udpak ikke filers modificeringstid" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" +"forsøg at udpakke filer til samme ejere som i arkivet (standardværdi for " +"superbrugeren)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" +"udpak filer med dig selv som ejer (standardværdi for almindelige brugere)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" -msgstr "" +msgstr "brug altid tal for bruger- og gruppnavn" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" -msgstr "" +msgstr "udpak information om filrettigheder (standardværdi for superbrugeren)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" +"anvend brugerens umask når rettigheder udpakkes fra arkivet (standardværdi " +"for almindelige brugere)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" -msgstr "" +msgstr "sortér navne som skal udpakkes så de passer med arkivet" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" -msgstr "" +msgstr "samme som både -p og -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" +"udsæt sætning af modifikationstider og rettigheder på udpakkede kataloger " +"til slutningen på arkivudpakningen." -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" -msgstr "" +msgstr "fjern effekten af flaget --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" -msgstr "" +msgstr "Enhedsvalg og enhedsskift:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" -msgstr "" +msgstr "ARKIV" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" -msgstr "" +msgstr "brug arkivfil eller enhed ARKIV" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" -msgstr "" +msgstr "arkivfilen er lokal selv om navnet har et kolon" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" -msgstr "" +msgstr "brug KOMMANDO i stedet for rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" -msgstr "" +msgstr "brug ekstern KOMMANDO i stedet for rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" -msgstr "" +msgstr "angiv enhed og densitet" -#: src/tar.c:556 -#, fuzzy +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" -msgstr "Kan ikke verificere arkiv som går over flere delarkiver" +msgstr "opret/vis/udpak et flerdelarkiv" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" -msgstr "" +msgstr "skift bånd efter at NUMMER x 1024 byte er skrevet" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" -msgstr "" +msgstr "kør kommandofil ved slutningen af hvert bånd (flaget -M sættes også)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" -msgstr "" +msgstr "brug/opdatér delarkivnummer i FIL" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" -msgstr "" +msgstr "Blokhåndtering:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" -msgstr "" +msgstr "BLOK" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" -msgstr "" +msgstr "BLOK x 512 byte per post" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" -msgstr "" +msgstr "ANTAL byte per post, deleligt med 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" -msgstr "" +msgstr "ignorér blok med kun nultegn (betyder filslut)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" -msgstr "" +msgstr "lav nye blokke ved læsning (for 4.2BSD-datakanaler)" -#: src/tar.c:582 -#, fuzzy +#: src/tar.c:583 msgid "Archive format selection:" -msgstr "Konflikt i flagene for arkiv-format" +msgstr "Valg af arkivformat:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" -msgstr "" +msgstr "FORMAT" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" -msgstr "" +msgstr "opret et arkiv med det angivne format" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" -msgstr "" +msgstr "FORMAT er et af følgende:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" -msgstr "" +msgstr "gammelt V7-format" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" -msgstr "" +msgstr "GNU-format for tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" -msgstr "" +msgstr "Format fra GNU tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" -msgstr "" +msgstr "POSIX 1003.1-1988 (ustar) format" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" -msgstr "" +msgstr "POSIX 1003.1-2001 (pax) format" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" -msgstr "" +msgstr "samme som pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" -msgstr "" +msgstr "samme som --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" -msgstr "" +msgstr "samme som --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." -msgstr "" +msgstr "nøgleord[[:]=værdi][,nøgleord[[:]=værdi]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" -msgstr "" +msgstr "angiv nøgleord for pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" -msgstr "" +msgstr "TEKST" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" +"opret et arkiv med delarkivnavnet TEKST. Ved visning/udpakning er TEKST et " +"skálmønster (\"globbing\") for delarkivnavn" -#: src/tar.c:613 -#, fuzzy +#: src/tar.c:614 msgid "Compression options:" -msgstr "Konflikt i komprimeringsflag" +msgstr "Komprimeringsflag:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" -msgstr "" +msgstr "brug arkivsuffix til at bestemme komprimeringsprogrammet" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" -msgstr "" +msgstr "brug ikke arkivsuffix til at bestemme komprimeringsprogrammet" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" -msgstr "" +msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" -msgstr "" +msgstr "filtrér med PROG (skal acceptere -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" -msgstr "" +msgstr "Lokalt filvalg:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" -msgstr "" +msgstr "tilføj angivet FIL til arkivet (brugbart hvis FIL begynder med \"-\")" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" -msgstr "" +msgstr "KATALOG" -#: src/tar.c:641 -#, fuzzy +#: src/tar.c:642 msgid "change to directory DIR" -msgstr "Kan ikke ændre arbejdskatalog" +msgstr "gå til arbejdskatalog KATALOG" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" -msgstr "" +msgstr "hent navne at udpakke eller oprette fra FIL" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" -msgstr "" +msgstr "-T læser navne adskilt med nultegn, deaktivér -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" -msgstr "" +msgstr "fjern effekten af foregående --null-flag" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" -msgstr "" +msgstr "afcitér filnavne som blev læst med -T (standardværdi)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" -msgstr "" +msgstr "afcitér ikke filnavne som blev læst med -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" -msgstr "" +msgstr "MØNSTER" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" -msgstr "" +msgstr "udelad filer som matcher MØNSTER" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" -msgstr "" +msgstr "udelad filer som matcher mønster listet i FIL" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" +"udelad indholdet i kataloger som indeholder CACHEDIR.TAG, undtagen " +"mærkefilen CACHEDIR.TAG selv" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" -msgstr "" +msgstr "udelad alt i kataloger som indeholder CACHEDIR.TAG" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" -msgstr "" +msgstr "udelad kataloger som indeholder CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" -msgstr "" +msgstr "udelad indholdet i kataloger som indeholder FIL, undtagen FIL selv" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" -msgstr "" +msgstr "udelad alting i kataloger som indeholder FIL" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" -msgstr "" +msgstr "udelad kataloger som indeholder FIL" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" -msgstr "" +msgstr "udelad kataloger fra versionshåndteringssystemer" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" -msgstr "" +msgstr "udelad sikkerhedskopier og låsefiler" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" -msgstr "" +msgstr "gå ikke ned i kataloger automatisk" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" -msgstr "" +msgstr "skift ikke filsystem når arkivet oprettes" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" -msgstr "" +msgstr "gå rekursivt ned i kataloger (standardværdi)" -#: src/tar.c:682 -#, fuzzy +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" -msgstr "Fjerner indledende '/' fra absolutte lænker" +msgstr "fjern ikke indledende '/' fra filnavne" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" -msgstr "" +msgstr "følg symbolske lænker, arkivér filerne de peger på" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" -msgstr "" +msgstr "følg hårde lænker, arkivér filerne de peger på" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" -msgstr "" +msgstr "MEDLEMSNAVN" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" -msgstr "" +msgstr "begynd med medlem MEDLEMSNAVN i arkivet" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" -msgstr "" +msgstr "arkivér kun filer nyere end DATO-ELLER-FIL" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" -msgstr "" +msgstr "DATO" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" -msgstr "" +msgstr "sammenlign kun dato og tid for dataændringer" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" -msgstr "" +msgstr "KONTROL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" -msgstr "" +msgstr "lav sikkerhedskopier før fjernelse, vælg type af versionshåndtering" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" -msgstr "" +msgstr "STRENG" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" +"lav sikkerhedskopier før fjernelse, erstat den normale sikkerhedskopiendelse " +"(\"~\" hvis ikke ændret med miljøvariablen SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" -msgstr "" +msgstr "Filnavnstransformationer:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" -msgstr "" +msgstr "fjern ANTAL indledende komponenter fra filnavne ved udpakning" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" -msgstr "" +msgstr "UDTRYK" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" -msgstr "" +msgstr "brug sed's erstatnings-UDTRYK for at transformere filnavne" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" +"Flag for match af filnavne (påvirker både ekskluderings- og " +"inkluderingsmønstre):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" -msgstr "" +msgstr "ingen forskel på store og små bogstaver" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" -msgstr "" +msgstr "mønstre skal matche med begyndelsen på filnavne" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" +"mønstre matches efter \"/\" i filnavne (standardværdi ved ekskludering)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" -msgstr "" +msgstr "match store og små bogstaver forskelligt (standardværdi)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" -msgstr "" +msgstr "brug jokertegn (standardværdi for ekskludering)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" -msgstr "" +msgstr "ordret strengsammenligning" -#: src/tar.c:728 -#, fuzzy +#: src/tar.c:729 msgid "wildcards do not match `/'" -msgstr "Volumenet '%s' stemmer ikke overens med %s" +msgstr "jokertegn matcher ikke \"/\"" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" -msgstr "" +msgstr "jokertegn matcher \"/\" (standardværdi for ekskludering)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" -msgstr "" +msgstr "Informativ udskrift:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" -msgstr "" +msgstr "vís navne på alle filer som bliver behandlet" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" -msgstr "" +msgstr "NØGLEORD" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" -msgstr "" +msgstr "advarselskontrol" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" +"vis forløbsmeddelelser efter hver gruppe af ANTAL poster (standardværdi 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" -msgstr "" +msgstr "HANDLING" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" -msgstr "" +msgstr "udfør HANDLING ved hvert kontrolpunkt" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" -msgstr "" +msgstr "vis en meddelelse hvis ikke alle lænker bliver arkiveret" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" -msgstr "" +msgstr "SIGNAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " "SIGQUIT, SIGINT, SIGUSR1 and SIGUSR2; the names without SIG prefix are also " "accepted" msgstr "" +"skriv totalt antal byte efter arkivet er blevet behandlet. Med et argument - " +"skrives totalt antal byte når SIGNAL levereres. Tilladte signaler er: " +"SIGHUP, SIGQUIT, SIGINT, SIGUSR1 coh SIGUSR2. Navne uden SIG-præfix " +"accepteres også." -#: src/tar.c:755 -msgid "print file modification dates in UTC" -msgstr "" +#: src/tar.c:756 +msgid "print file modification times in UTC" +msgstr "vis filers modificeringstid i UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "vis fuld opløsning på filtider" + +#: src/tar.c:760 msgid "send verbose output to FILE" -msgstr "" +msgstr "send informative meddelelser til FIL" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" -msgstr "" +msgstr "vis bloknummer i arkivet for hver meddelelse" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" -msgstr "" +msgstr "bed om bekræftelse for hver handling" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" -msgstr "" +msgstr "vis standardværdier for \"tar\"" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" +"ved visning eller udpakning vises hvert katalog som ikke matcher " +"søgekriterium" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" -msgstr "" +msgstr "vis fil- eller arkivnavne efter transformering" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" -msgstr "" +msgstr "STÍL" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" -msgstr "" +msgstr "sæt citatstíl for navne. Se nedenfor for gyldige værdier på STÍL." -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" -msgstr "" +msgstr "citér også tegn i STRENG" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" -msgstr "" +msgstr "citér ikke tegn fra STRENG" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" -msgstr "" +msgstr "Kompatibilitetsflag:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" +"ved oprettelse det samme som --old-archive; ved udpakning det samme som --no-" +"same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" -msgstr "" +msgstr "Andre flag:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" -msgstr "" +msgstr "begræns brugen af potentielt farlige flag" -#: src/tar.c:927 -#, fuzzy +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" -msgstr "Du kan ikke angive mere end et af '-Acdtrux'-flagene" +msgstr "" +"Du kan ikke angive mere end et af '-Acdtrux' eller `--test-label' flagene" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Konflikt i komprimeringsflag" -#: src/tar.c:993 -#, fuzzy, c-format +#: src/tar.c:996 +#, c-format msgid "Unknown signal name: %s" -msgstr " ukendt filtype %s\n" +msgstr "Ukendt signalnavn: %s" -#: src/tar.c:1017 -#, fuzzy +#: src/tar.c:1020 msgid "Date sample file not found" -msgstr "Datofil ikke fundet" +msgstr "Tidsfil blev ikke fundet" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Erstatter %s for ukendt dato-format %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" -msgstr "" +msgstr "Flag %s: Behandler tidsangivelse \"%s\" som %s" -#: src/tar.c:1132 -#, fuzzy, c-format +#: src/tar.c:1135 +#, c-format msgid "%s: file list already read" -msgstr "%s: fil er det samme som arkivet; ikke lagret" +msgstr "%s: filliste allerede læst" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" -msgstr "" +msgstr "%s: filnavnet som læstes indeholder nultegn" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 -#, fuzzy, c-format +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 +#, c-format msgid "filter the archive through %s" -msgstr "%s: fil er det samme som arkivet; ikke lagret" +msgstr "filtrér arkivet igennem %s" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" -msgstr "" +msgstr "Gyldige argumenter til flaget --quoting-style er:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" +"\n" +"*Denne* tar har standardværdierne:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Ugyldig blokfaktor" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Ugyldig båndlængde" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" -msgstr "" +msgstr "Fejlagtig værdi for inkrementelt niveau" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Mere end én grænse-dato" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" -msgstr "" +msgstr "Ugyldig version for filer med huller" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" -msgstr "" +msgstr "--atime-preserve=\"system\" understøttes ikke på denne platform" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" -msgstr "" +msgstr "--checkpoint-værdien er ikke et heltal" -#: src/tar.c:1830 -#, fuzzy +#: src/tar.c:1848 msgid "Invalid group" -msgstr "%s: ugyldig gruppe" +msgstr "Ugyldig gruppe" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Ugyldig modus angivet i flag" -#: src/tar.c:1894 -#, fuzzy +#: src/tar.c:1912 msgid "Invalid number" -msgstr "Ugyldigt inode-nummer" +msgstr "Ugyldigt nummer" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Ugyldig ejer" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" +"Flaget --preserve er forældet, brug --preserve-permissions --preserve-order " +"i stedet" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Ugyldig poststørrelse" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Poststørrelse skal være deleligt med %d." -#: src/tar.c:2000 -#, fuzzy +#: src/tar.c:2019 msgid "Invalid number of elements" -msgstr "Ugyldig båndlængde" +msgstr "Ugyldigt antal elementer" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" -msgstr "" +msgstr "Kun ét --to-command flag tilladt" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" -msgstr "" +msgstr "Ugyldig densitetsangivelse: %s" -#: src/tar.c:2126 -#, fuzzy, c-format +#: src/tar.c:2145 +#, c-format msgid "Unknown density: `%c'" -msgstr "Ukendt mønster '%s'" +msgstr "Ukendt densitet: '%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "" "Flagene '-[0-7][lmh]' understøttes ikke af *denne* implementering af tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." -msgstr "" +msgstr "[FIL]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Gammelt flag '%c' behøver et argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" -msgstr "" +msgstr "--occurrence er meningsløs uden en filliste" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" -msgstr "" +msgstr "--occurrence kan ikke bruges i den ønskede operationstilstand." -#: src/tar.c:2379 -#, fuzzy +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Ved flere arkivfiler kræves '-M'-flaget" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Kan ikke kombinere --listed-incremental med --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" -msgstr "" +msgstr "--level er meningsløs uden --listed-incremental" -#: src/tar.c:2404 -#, fuzzy, c-format +#: src/tar.c:2423 +#, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" -msgstr[0] "%s: etikette på delarkiv er for lang (grænse er %lu byte)" -msgstr[1] "%s: etikette på delarkiv er for lang (grænse er %lu byte)" +msgstr[0] "%s: etiket på delarkiv er for lang (grænse er %lu byte)" +msgstr[1] "%s: etiket på delarkiv er for lang (grænse er %lu byte)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Kan ikke verificere arkiv som går over flere delarkiver" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Kan ikke verificere komprimerede arkiver" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Kan ikke bruge komprimerede arkiver som går over flere delarkiver" -#: src/tar.c:2431 -#, fuzzy +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" -msgstr "Kan ikke opdatere komprimerede arkiver" +msgstr "Kan ikke sammenlægge (konkatenere) komprimerede arkiver" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" -msgstr "" +msgstr "--pax-option kan kun bruges på POSIX-arkiver" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" -msgstr "" +msgstr "Delarkivlængden kan ikke være mindre end poststørrelsen" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" -msgstr "" +msgstr "--preserve-order er ikke kompatibel med --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Nægter stædigt at oprette et tomt arkiv" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Flagene '-Aru' er inkompatible med '-f -'" -#: src/tar.c:2592 -#, fuzzy +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" -msgstr "Du skal angive et af '-Acdtrux'-flagene" +msgstr "Du skal angive et af '-Acdtrux' eller '--test-label' flagene" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" -msgstr "" +msgstr "Afslutter med fejlstatus på grund af tidligere fejl" #: src/update.c:86 -#, fuzzy, c-format +#, c-format msgid "%s: File shrank by %s byte" msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Filen formindskedes med %s byte" msgstr[1] "%s: Filen formindskedes med %s byte" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" -msgstr "" +msgstr "Nøgleordet %s er ukendt eller ikke implementeret endnu" -#: src/xheader.c:173 -#, fuzzy +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" -msgstr "Tidsstempel uden for område" +msgstr "Tidsstempel udenfor tilladt interval" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" -msgstr "" +msgstr "Mønster %s kan ikke bruges" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" -msgstr "" +msgstr "Nøgleord %s kan ikke erstattes" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" -msgstr "" +msgstr "Fejlagtigt udvidet hoved: længden mangles" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" -msgstr "" +msgstr "Længde på udvidet hoved er udenfor gyldigt interval" -#: src/xheader.c:556 -#, fuzzy, c-format +#: src/xheader.c:557 +#, c-format msgid "Extended header length %*s is out of range" -msgstr "Arkiv base-64 streng med fortegn %s er uden for %s område" +msgstr "Længde %*s på udvidet hoved er udenfor gyldigt interval" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" -msgstr "" +msgstr "Fejlagtigt udvidet hoved: blanktegn efter længdangivelse mangles" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" -msgstr "" +msgstr "Fejlagtigt udvidet hoved: ligmedtegn mangles" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" -msgstr "" +msgstr "Fejlagtigt udvidet hoved: nylinje mangles" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" -msgstr "" +msgstr "Ignorerer nøgleord \"%s\" i udvidet hoved" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" -msgstr "" +msgstr "Genereret nøgle/værdi-par er for langt (nøgle=%s, længde=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 -#, fuzzy, c-format +#: src/xheader.c:863 +#, c-format msgid "Extended header %s=%s is out of range %s..%s" -msgstr "Arkiv værdi %s er udenfor %s område %s..%s" +msgstr "Udvidet hoved %s=%s er udenfor intervallet %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" -msgstr "" +msgstr "Fejlagtigt udvidet hoved: ugyldig %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" -msgstr "" +msgstr "Fejlagtigt udvidet hoved: for mange %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" -msgstr "" +msgstr "Fejlagtigt udvidet hoved: ugyldigt %s: uventet skilletegn %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" -msgstr "" +msgstr "Fejlagtigt udvidet hoved: ugyldigt %s: ulige antal værdier" #: src/checkpoint.c:107 -#, fuzzy, c-format +#, c-format msgid "%s: not a valid timeout" -msgstr "%s: ugyldig gruppe" +msgstr "%s: ugyldig tidsudløb" #: src/checkpoint.c:112 #, c-format msgid "%s: unknown checkpoint action" -msgstr "" +msgstr "%s: ukendt kontrolpunktshandling" #: src/checkpoint.c:132 -#, fuzzy msgid "write" -msgstr "skrivefejl" +msgstr "skrive" #: src/checkpoint.c:132 msgid "read" -msgstr "" +msgstr "læse" #. TRANSLATORS: This is a ``checkpoint of write operation'', #. *not* ``Writing a checkpoint''. #. E.g. in Spanish ``Punto de comprobaci@'on de escritura'', #. *not* ``Escribiendo un punto de comprobaci@'on'' #: src/checkpoint.c:222 -#, fuzzy, c-format +#, c-format msgid "Write checkpoint %u" -msgstr "Skriver kontrolpunkt %d" +msgstr "Skrivekontrolpunkt %u" #. TRANSLATORS: This is a ``checkpoint of read operation'', #. *not* ``Reading a checkpoint''. #. E.g. in Spanish ``Punto de comprobaci@'on de lectura'', #. *not* ``Leyendo un punto de comprobaci@'on'' #: src/checkpoint.c:228 -#, fuzzy, c-format +#, c-format msgid "Read checkpoint %u" -msgstr "Læser kontrolpunkt %d" +msgstr "Læsekontrolpunkt %u" -#: tests/genfile.c:112 -#, fuzzy +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" -msgstr "Generér datafiler for GNU tar testpakke.\n" +msgstr "" +"genfile bearbejder datafiler i testsuiten for GNU paxutils.\n" +"FLAG er:\n" -#: tests/genfile.c:128 -#, fuzzy +#: tests/genfile.c:127 msgid "File creation options:" -msgstr "Konflikt i komprimeringsflag" +msgstr "Flag for filoprettelse:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" -msgstr "" +msgstr "STØRRELSE" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" -msgstr "" +msgstr "Opret en fil med angivet STØRRELSE" -#: tests/genfile.c:132 -#, fuzzy +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" -msgstr "Fejl ved skrivning til standard uddata" +msgstr "Skriv til filen NAVN i stedet for til standard-ud" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" -msgstr "" +msgstr "Læs filnavne fra FIL" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" -msgstr "" +msgstr "-T læser navne adskilte med nultegn" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" -msgstr "" +msgstr "Fyld filen med det angivne MØNSTER. MØNSTER er 'default' eller 'zeros'" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" -msgstr "" +msgstr "Størrelse af en blok for filer med huller" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." -msgstr "" +msgstr "Generér fil med huller. Resten af kommandolinjen giver filmapningen." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" -msgstr "" +msgstr "POSITION" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" -msgstr "" +msgstr "Flyt til given position inden data skrives" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" -msgstr "" +msgstr "Flag for filstatistik:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" +"Vís indholdet i \"struct stat\" for hver given fil. Standardværdi på FORMAT " +"er:" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" -msgstr "" +msgstr "Flag for synkron udførelse:" -#: tests/genfile.c:164 -#, fuzzy +#: tests/genfile.c:163 msgid "OPTION" -msgstr " [FLAG...}" +msgstr "FLAG" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" +"Udfør ARGUMENTER. Nyttigt ved --checkpoint og en af --cut, --append, --" +"touch, --unlink" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" -msgstr "" +msgstr "Udfør angivet handling (se nedenfor) når kontrolpunkt NUMMER nås" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" -msgstr "" +msgstr "Sæt dato for næste --touch flag" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" -msgstr "" +msgstr "Vís udførte kontrolpunkter og slutstatus på KOMMANDO" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" +"Synkront udførte handlinger. Disse udføres når kontrolpunktnummeret givet " +"med flaget --checkpoint nås." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" +"Afkort FIL til størrelsen givet med det foregående --length flag (eller 0 " +"hvis det ikke er angivet)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" +"Tilføj STØRRELSE antal byte til FIL. STØRRELSE er givet med foregående --" +"length flag." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" -msgstr "" +msgstr "Opdatér acces- og modifikationstider for FIL" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" -msgstr "" +msgstr "Udfør KOMMANDO" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" -msgstr "" +msgstr "Fjern (unlink) FIL" -#: tests/genfile.c:245 -#, fuzzy, c-format +#: tests/genfile.c:244 +#, c-format msgid "Invalid size: %s" -msgstr "Ugyldigt tidsstempel" +msgstr "Ugyldig størrelse %s" -#: tests/genfile.c:250 -#, fuzzy, c-format +#: tests/genfile.c:249 +#, c-format msgid "Number out of allowed range: %s" -msgstr "Inode-nummer uden for område" +msgstr "Nummer udenfor tilladt interval: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" -msgstr "" +msgstr "Negativ størrelse: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" -msgstr "" +msgstr "status (stat) kunne ikke tages på %s" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" -msgstr "" +msgstr "ønsket fillængde %lu, virkelig %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" -msgstr "" +msgstr "oprettet fil har ikke huller" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" -msgstr "" +msgstr "Fejl ved fortolkning af tal nær \"%s\"" -#: tests/genfile.c:368 -#, fuzzy, c-format +#: tests/genfile.c:367 +#, c-format msgid "Unknown date format" -msgstr "Ukendt systemfejl" +msgstr "Ukendt datoformat" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" -msgstr "" +msgstr "[ARGUMENTER...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 -#, fuzzy, c-format +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 +#, c-format msgid "cannot open `%s'" -msgstr "kan ikke ændre ejer (chown) '%s'" +msgstr "kan ikke åbne '%s'" -#: tests/genfile.c:435 -#, fuzzy +#: tests/genfile.c:434 msgid "cannot seek" -msgstr "Kan ikke lukke" +msgstr "Kan ikke søge" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" -msgstr "" +msgstr "filnavnet indeholder nultegn" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" -msgstr "" +msgstr "kan ikke oprette filer med huller til standard-ud, brug flaget --file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" -msgstr "" +msgstr "fejlagtig maske (nær \"%s\")" -#: tests/genfile.c:601 tests/genfile.c:634 -#, fuzzy, c-format +#: tests/genfile.c:600 tests/genfile.c:633 +#, c-format msgid "Unknown field `%s'" -msgstr "Ukendt mønster '%s'" +msgstr "Ukendt felt '%s'" -#: tests/genfile.c:661 -#, fuzzy, c-format +#: tests/genfile.c:660 +#, c-format msgid "cannot set time on `%s'" -msgstr "kan ikke oprette kataloget '%s'" +msgstr "kan ikke sætte tid på \"%s\"" -#: tests/genfile.c:700 -#, fuzzy, c-format +#: tests/genfile.c:699 +#, c-format msgid "cannot unlink `%s'" -msgstr "kan ikke ændre ejer (chown) '%s'" +msgstr "kan ikke fjerne (unlink) \"%s\"" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" -msgstr "" +msgstr "Kommandoen afsluttedes uden fejl\n" -#: tests/genfile.c:828 -#, fuzzy, c-format +#: tests/genfile.c:827 +#, c-format msgid "Command failed with status %d\n" -msgstr "Underproces døde med signal %d" +msgstr "Kommandoen mislykkedes med slutstatus %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" -msgstr "" +msgstr "Kommandoen termineredes af signal %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" -msgstr "" +msgstr "Kommandoen stoppedes af signal %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" -msgstr "" +msgstr "Kommandoen dumpede hukommelsen\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" -msgstr "" +msgstr "Kommandoen afsluttedes\n" -#: tests/genfile.c:872 -#, fuzzy, c-format +#: tests/genfile.c:871 +#, c-format msgid "--stat requires file names" -msgstr "--Ødelagte filnavne--\n" - -#~ msgid "%s: illegal option -- %c\n" -#~ msgstr "%s: ulovligt flag -- %c\n" - -#, fuzzy -#~ msgid "" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "\n" -#~ "Rapportér fejl til .\n" - -#~ msgid "Reading %s\n" -#~ msgstr "Læser %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Fejl kan ikke reddes; afslutter nu" - -#, fuzzy -#~ msgid "filter the archive through compress" -#~ msgstr "%s: fil er det samme som arkivet; ikke lagret" - -#, fuzzy -#~ msgid "filter the archive through lzma" -#~ msgstr "%s: fil er det samme som arkivet; ikke lagret" - -#, fuzzy -#~ msgid "filter the archive through lzop" -#~ msgstr "%s: fil er det samme som arkivet; ikke lagret" - -#~ msgid "rmtd: Cannot allocate buffer space\n" -#~ msgstr "rmtd: Kan ikke allokere plads til buffer\n" - -#~ msgid "Cannot allocate buffer space" -#~ msgstr "Kan ikke allokere plads til buffer" - -#~ msgid "Try `%s --help' for more information.\n" -#~ msgstr "Prøv '%s --help' for mere information.\n" - -#, fuzzy -#~ msgid "" -#~ "Usage: %s [OPTION]\n" -#~ "Manipulate a tape drive, accepting commands from a remote process.\n" -#~ "\n" -#~ " --version Output version info.\n" -#~ " --help Output this help.\n" -#~ msgstr "" -#~ "Brug: %s [FLAG]\n" -#~ "Behandl en båndstation, med kommandoer fra en anden proces.\n" -#~ "\n" -#~ " --help vis denne hjælpetekst\n" -#~ " --version vis programversion\n" - -#, fuzzy -#~ msgid "Seek offset error" -#~ msgstr "Søgeposition uden for område" - -#~ msgid "Premature end of file" -#~ msgstr "For tidlig filafslutning" - -#~ msgid "block size" -#~ msgstr "blokstørrelse" - -#~ msgid "Cannot dup" -#~ msgstr "Kan ikke starte ny proces med 'dup'" - -#~ msgid "Cannot use compressed or remote archives" -#~ msgstr "" -#~ "Kan ikke bruge komprimerede arkiver eller arkiver på en anden maskine" - -#~ msgid "tar (child)" -#~ msgstr "tar (underproces)" - -#~ msgid "tar (grandchild)" -#~ msgstr "tar (under-underproces)" - -#~ msgid "Cannot allocate memory for blocking factor %d" -#~ msgstr "Kunne ikke allokere hovedlager for blok-faktor %d" - -#~ msgid "WARNING: No volume header" -#~ msgstr "ADVARSEL: Manglende delarkivhoved" - -#~ msgid "Child returned status %d" -#~ msgstr "Underproces afsluttede med status %d" - -#~ msgid "Member names contain `..'" -#~ msgstr "Medlemsnavne indeholder '..'" - -#~ msgid "%s: Member name contains `..'" -#~ msgstr "%s: Medlemsnavne indeholder '..'" - -#~ msgid "Visible long name error" -#~ msgstr "Fejl på et langt navn" - -#~ msgid "Device number out of range" -#~ msgstr "Enhedsnummer er uden for område" - -#~ msgid "Visible longname error" -#~ msgstr "Fejl på et langt navn" - -#~ msgid "Renamed %s to %s" -#~ msgstr "Omdøbt %s til %s" - -#~ msgid "%s: Cannot symlink to %s" -#~ msgstr "%s: Kan ikke oprette symbolsk lænke til %s" - -#~ msgid "Symlinked %s to %s" -#~ msgstr "Lænkede %s symbolsk til %s" - -#~ msgid "Unknown demangling command %s" -#~ msgstr "Ukendt kommando %s ved rekonstruering af navn" - -#~ msgid "Missing file name after -C" -#~ msgstr "Mangler filnavn efter -C" - -#~ msgid "" -#~ "This program comes with NO WARRANTY, to the extent permitted by law.\n" -#~ "You may redistribute it under the terms of the GNU General Public " -#~ "License;\n" -#~ "see the file named COPYING for details." -#~ msgstr "" -#~ "Dette program kommer UDEN GARANTI, i den grad som dette er tilladt ved " -#~ "lov.\n" -#~ "Du må redistribuere det under betingelsene i GNU General Public License;\n" -#~ "se filen kaldet COPYING for detaljer." - -#~ msgid "rmtd: Garbage command %c\n" -#~ msgstr "rmtd: Ugyldig kommando %c\n" - -#~ msgid "" -#~ "GNU `tar' saves many files together into a single tape or disk archive, " -#~ "and\n" -#~ "can restore individual files from the archive.\n" -#~ msgstr "" -#~ "GNU 'tar' gemmer mange filer i et arkiv, og kan hente enkeltstående\n" -#~ "filer ud af arkivet.\n" - -#~ msgid "" -#~ "\n" -#~ "If a long option shows an argument as mandatory, then it is mandatory\n" -#~ "for the equivalent short option also. Similarly for optional arguments.\n" -#~ msgstr "" -#~ "\n" -#~ "Dersom et langt flag har et obligatorisk argument, er argumentet også\n" -#~ "obligatorisk for det korte flag. Tilsvarende gælder dersom argumentet\n" -#~ "kan sløjfes.\n" - -#~ msgid "" -#~ "\n" -#~ "Main operation mode:\n" -#~ " -t, --list list the contents of an archive\n" -#~ " -x, --extract, --get extract files from an archive\n" -#~ " -c, --create create a new archive\n" -#~ " -d, --diff, --compare find differences between archive and file " -#~ "system\n" -#~ " -r, --append append files to the end of an archive\n" -#~ " -u, --update only append files newer than copy in archive\n" -#~ " -A, --catenate append tar files to an archive\n" -#~ " --concatenate same as -A\n" -#~ " --delete delete from the archive (not on mag tapes!)\n" -#~ msgstr "" -#~ "\n" -#~ "Hovedoperationsmodi:\n" -#~ " -t, --list list indholdet af arkivet\n" -#~ " -x, --extract, --get udtræk filer fra arkivet\n" -#~ " -c, --create oprette et nyt arkiv\n" -#~ " -d, --diff, --compare vis forskelle mellem arkivet og filsystemet\n" -#~ " -r, --append tilføj filer ved slutningen af arkivet\n" -#~ " -u, --update tilføj kun filer som er nyere end dem i " -#~ "arkivet\n" -#~ " -A, --catenate føj en arkivfil til arkivet\n" -#~ " --concatenate samme som -A\n" -#~ " --delete slet fra arkivet (ikke for arkiv på bånd!)\n" - -#~ msgid "" -#~ "\n" -#~ "Operation modifiers:\n" -#~ " -W, --verify attempt to verify the archive after writing " -#~ "it\n" -#~ " --remove-files remove files after adding them to the " -#~ "archive\n" -#~ " -k, --keep-old-files don't replace existing files when " -#~ "extracting\n" -#~ " --overwrite overwrite existing files when extracting\n" -#~ " --overwrite-dir overwrite directory metadata when " -#~ "extracting\n" -#~ " -U, --unlink-first remove each file prior to extracting over " -#~ "it\n" -#~ " --recursive-unlink empty hierarchies prior to extracting " -#~ "directory\n" -#~ " -S, --sparse handle sparse files efficiently\n" -#~ " -O, --to-stdout extract files to standard output\n" -#~ " -G, --incremental handle old GNU-format incremental backup\n" -#~ " -g, --listed-incremental=FILE\n" -#~ " handle new GNU-format incremental backup\n" -#~ " --ignore-failed-read do not exit with nonzero on unreadable " -#~ "files\n" -#~ msgstr "" -#~ "\n" -#~ "Flag for operationsmodi:\n" -#~ " -W, --verify forsøg at verificere arkivet efter at have " -#~ "skrevet det\n" -#~ " --remove-files slet filer efter at have tilføjet dem til " -#~ "arkivet\n" -#~ " -k, --keep-old-files overskriv ikke eksisterende filer ved " -#~ "udtræk\n" -#~ " --overwrite overskriv eksisterende filer ved udtræk\n" -#~ " --overwrite-dir overskriv metadata for kataloger ved udtræk\n" -#~ " -U, --unlink-first slet alle filer før udtrækning til dem\n" -#~ " --recursive-unlink tøm kataloger før udtrækning\n" -#~ " -S, --sparse håndtér filer med huller mere effektivt\n" -#~ " -O, --to-stdout udtræk filer til standard-ud\n" -#~ " -G, --incremental brug det gamle GNU format for inkrementel\n" -#~ " sikkerhedskopiering\n" -#~ " -g, --listed-incremental brug det nye GNU-format for inkrementel\n" -#~ " sikkerhedskopiering\n" -#~ " --ignore-failed-read ignorér fejl under læsning af filer\n" - -#~ msgid "" -#~ "\n" -#~ "Handling of file attributes:\n" -#~ " --owner=NAME force NAME as owner for added files\n" -#~ " --group=NAME force NAME as group for added files\n" -#~ " --mode=CHANGES force (symbolic) mode CHANGES for added " -#~ "files\n" -#~ " --atime-preserve don't change access times on dumped files\n" -#~ " -m, --modification-time don't extract file modified time\n" -#~ " --same-owner try extracting files with the same " -#~ "ownership\n" -#~ " --no-same-owner extract files as yourself\n" -#~ " --numeric-owner always use numbers for user/group names\n" -#~ " -p, --same-permissions extract permissions information\n" -#~ " --no-same-permissions do not extract permissions information\n" -#~ " --preserve-permissions same as -p\n" -#~ " -s, --same-order sort names to extract to match archive\n" -#~ " --preserve-order same as -s\n" -#~ " --preserve same as both -p and -s\n" -#~ msgstr "" -#~ "\n" -#~ "Håndtering af filattributter:\n" -#~ " --owner=NAVN brug NAVN som ejer for nye filer\n" -#~ " --gruppe=NAVN brug NAVN som gruppe for nye filer\n" -#~ " --mode=OKTAL brug OKTAL som modus for nye filer\n" -#~ " --atime-preserve ændre ikke accesstider på tilføjede filer\n" -#~ " -m, --modification-time udtræk ikke modificeringstiden\n" -#~ " --same-owner forsøg at udtrække filer med samme ejer\n" -#~ " --numeric-owner brug nummer for bruger/gruppe-navn\n" -#~ " -p, --same-permissions forsøg at udtrække filer med samme\n" -#~ " filbeskyttelse\n" -#~ " --preserve-permissions samme som -p\n" -#~ " -s, --same-order sorter navn som skal udtrækkes sådan at\n" -#~ " de passer med arkivet\n" -#~ " --preserve-order samme som -s\n" -#~ " --preserve samme som både -p og -s\n" - -#~ msgid "" -#~ "\n" -#~ "Device selection and switching:\n" -#~ " -f, --file=ARCHIVE use archive file or device ARCHIVE\n" -#~ " --force-local archive file is local even if has a " -#~ "colon\n" -#~ " --rsh-command=COMMAND use remote COMMAND instead of rsh\n" -#~ " -[0-7][lmh] specify drive and density\n" -#~ " -M, --multi-volume create/list/extract multi-volume " -#~ "archive\n" -#~ " -L, --tape-length=NUM change tape after writing NUM x 1024 " -#~ "bytes\n" -#~ " -F, --info-script=FILE run script at end of each tape (implies -" -#~ "M)\n" -#~ " --new-volume-script=FILE same as -F FILE\n" -#~ " --volno-file=FILE use/update the volume number in FILE\n" -#~ msgstr "" -#~ "\n" -#~ "Enhedsvalg og enhedsskifte:\n" -#~ " -f, --file=ARKIV brug arkivfil eller enhed ARKIV\n" -#~ " --force-local arkivfil er lokal selv om den har et " -#~ "kolon\n" -#~ " --rsh-command=KOMMANDO brug KOMMANDO i stedet for rsh\n" -#~ " -[0-7][lmh] angiv enhed og tæthed\n" -#~ " -M, --multi-volume behandl arkivet som et arkiv af flere " -#~ "delarkiver\n" -#~ " -L, --tape-length=NUMMER skift bånd efter at NUMMER x 1024 byte " -#~ "er\n" -#~ " skrevet\n" -#~ " -F, --info-script=FIL kør kommandofil FIL ved slutningen af " -#~ "hvert\n" -#~ " bånd (sætter -M automatisk)\n" -#~ " --new-volume-script=FIL samme som -F FIL\n" -#~ " --volno-file=FIL brug/opdatér delarkivnummeret i FIL\n" - -#~ msgid "" -#~ "\n" -#~ "Device blocking:\n" -#~ " -b, --blocking-factor=BLOCKS BLOCKS x 512 bytes per record\n" -#~ " --record-size=SIZE SIZE bytes per record, multiple of 512\n" -#~ " -i, --ignore-zeros ignore zeroed blocks in archive (means " -#~ "EOF)\n" -#~ " -B, --read-full-records reblock as we read (for 4.2BSD pipes)\n" -#~ msgstr "" -#~ "\n" -#~ "blokhåndtering:\n" -#~ " -b, --blocking-factor=ENHEDER sæt blokstørrelse ENHEDER x 512 byte\n" -#~ " --record-size=STØRRELSE STØRRELSE byte per enhed (deleligt mad " -#~ "512)\n" -#~ " -i, --ignore-zeros ignorér blokke som indeholder nuller\n" -#~ " (betyder filafslutning)\n" -#~ " -B, --read-full-records omblok ved læsning (for 4.2BSD " -#~ "datakanaler)\n" - -#~ msgid "" -#~ "\n" -#~ "Archive format selection:\n" -#~ " -V, --label=NAME create archive with volume name " -#~ "NAME\n" -#~ " PATTERN at list/extract time, a globbing " -#~ "PATTERN\n" -#~ " -o, --old-archive, --portability write a V7 format archive\n" -#~ " --posix write a POSIX format archive\n" -#~ " -j, --bzip2 filter the archive through bzip2\n" -#~ " -z, --gzip, --ungzip filter the archive through gzip\n" -#~ " -Z, --compress, --uncompress filter the archive through compress\n" -#~ " --use-compress-program=PROG filter through PROG (must accept -" -#~ "d)\n" -#~ msgstr "" -#~ "\n" -#~ "Valg af arkivformat:\n" -#~ " -V, --label=NAVN lav et arkiv med delarkivnavn NAVN\n" -#~ " MØNSTER filer som skal medtages ved listning " -#~ "eller\n" -#~ " udtrækning (tilladt med jokertegn)\n" -#~ " -o, --old-archive, --portability lav et arkiv i V7 format\n" -#~ " --posix lav et arkiv i POSIX format\n" -#~ " -j, --bzip2 send arkivet gennem bzip2\n" -#~ " -z, --gzip, --ungzip send arkivet gennem gzip\n" -#~ " -Z, --compress, --uncompress send arkivet gennem compress\n" -#~ " --use-compress-program=PROG send arkivet gennem PROG (skal " -#~ "forstå -d)\n" - -#~ msgid "" -#~ "\n" -#~ "Local file selection:\n" -#~ " -C, --directory=DIR change to directory DIR\n" -#~ " -T, --files-from=NAME get names to extract or create from file " -#~ "NAME\n" -#~ " --null -T reads null-terminated names, disable -" -#~ "C\n" -#~ " --exclude=PATTERN exclude files, given as a PATTERN\n" -#~ " -X, --exclude-from=FILE exclude patterns listed in FILE\n" -#~ " --anchored exclude patterns match file name start " -#~ "(default)\n" -#~ " --no-anchored exclude patterns match after any /\n" -#~ " --ignore-case exclusion ignores case\n" -#~ " --no-ignore-case exclusion is case sensitive (default)\n" -#~ " --wildcards exclude patterns use wildcards (default)\n" -#~ " --no-wildcards exclude patterns are plain strings\n" -#~ " --wildcards-match-slash exclude pattern wildcards match " -#~ "'/' (default)\n" -#~ " --no-wildcards-match-slash exclude pattern wildcards do not match " -#~ "'/'\n" -#~ " -P, --absolute-names don't strip leading `/'s from file names\n" -#~ " -h, --dereference dump instead the files symlinks point to\n" -#~ " --no-recursion avoid descending automatically in " -#~ "directories\n" -#~ " -l, --one-file-system stay in local file system when creating " -#~ "archive\n" -#~ " -K, --starting-file=NAME begin at file NAME in the archive\n" -#~ msgstr "" -#~ "\n" -#~ "Valg af lokale filer:\n" -#~ " -C, --directory=KATALOG ændr katalog til KATALOG\n" -#~ " -T, --files-from=FIL hent navn for udtrækning eller arkivering\n" -#~ " fra filen FIL\n" -#~ " --null -T læser nul-terminerede navne, tillader " -#~ "ikke -C\n" -#~ " --exclude=MØNSTER medtag ikke filer (tilladt med jokertegn)\n" -#~ " -X, --exclude-from=FIL medtag ikke filer navngivne i filen FIL\n" -#~ " (tilladt med jokertegn)\n" -#~ " --anchored udeladelsesmønstre passer med " -#~ "filnavnsstart (standard)\n" -#~ " --no-anchored udeladelsesmønstre passer på navne efter " -#~ "ethvert /\n" -#~ " --ignore-case udeladelse behandler store og små " -#~ "bogstaver ens\n" -#~ " --no-ignore-case udeladelse behandler store og små " -#~ "bogstaver forskelligt (standard)\n" -#~ " --wildcards udeladelsesmønstre bruger jokertegn " -#~ "(standard)\n" -#~ " --no-wildcards udeladelsesmønstre er rene strenge\n" -#~ " --wildcards-match-slash udeladelsesmønstre med jokertegn passer " -#~ "med '/' (default)\n" -#~ " --no-wildcards-match-slash udeladelsesmønstre med jokertegn passer " -#~ "ikke med '/'\n" -#~ " -P, --absolute-names fjern ikke indledende '/' fra filnavn\n" -#~ " -h, --dereference arkivér istedet det som symbolske lænker " -#~ "peger på\n" -#~ " --no-recursion medtag ikke filer i underkataloger\n" -#~ " -l, --one-file-system medtag ikke filer fra andre filsystemer\n" -#~ " -K, --starting-file=NAVN begynd med filen NAVN i arkivet\n" - -#~ msgid "" -#~ " -N, --newer=DATE only store files newer than DATE\n" -#~ " --newer-mtime=DATE compare date and time when data changed " -#~ "only\n" -#~ " --after-date=DATE same as -N\n" -#~ msgstr "" -#~ " -N, --newer=DATO arkivér kun filer som er nyere end DATO\n" -#~ " --newer-mtime=DATO sammenlign tidsstempel kun når data er " -#~ "ændret\n" -#~ " --after-date=DATO samme som -N\n" - -#~ msgid "" -#~ " --backup[=CONTROL] backup before removal, choose version " -#~ "control\n" -#~ " --suffix=SUFFIX backup before removal, override usual " -#~ "suffix\n" -#~ msgstr "" -#~ " --backup[=KONTROL] lav sikkerhedskopi før sletning, med\n" -#~ " versionskontrol\n" -#~ " --suffix=SUFFIKS lav sikkerhedskopi før sletning, med\n" -#~ " overstyring af det almindelige suffiks\n" - -#~ msgid "" -#~ "\n" -#~ "Informative output:\n" -#~ " --help print this help, then exit\n" -#~ " --version print tar program version number, then exit\n" -#~ " -v, --verbose verbosely list files processed\n" -#~ " --checkpoint print directory names while reading the archive\n" -#~ " --totals print total bytes written while creating archive\n" -#~ " -R, --block-number show block number within archive with each " -#~ "message\n" -#~ " -w, --interactive ask for confirmation for every action\n" -#~ " --confirmation same as -w\n" -#~ msgstr "" -#~ "\n" -#~ "Udskrift af information:\n" -#~ " --help vis denne hjælpetekst og afslut\n" -#~ " --version vis programversion og afslut\n" -#~ " -v, --verbose vis hver fil som behandles\n" -#~ " --checkpoint vis katalognavn når arkivet læses\n" -#~ " --totals vis totalt antal byte skrevet\n" -#~ " -R, --block-number vis enhedsnummer i arkivet sammen med alle " -#~ "beskeder\n" -#~ " -w, --interactive spørg efter bekræftelse for hver operation\n" -#~ " --confirmation samme som -w\n" - -#~ msgid "" -#~ "\n" -#~ "GNU tar cannot read nor produce `--posix' archives. If POSIXLY_CORRECT\n" -#~ "is set in the environment, GNU extensions are disallowed with `--posix'.\n" -#~ "Support for POSIX is only partially implemented, don't count on it yet.\n" -#~ "ARCHIVE may be FILE, HOST:FILE or USER@HOST:FILE; DATE may be a textual " -#~ "date\n" -#~ "or a file name starting with `/' or `.', in which case the file's date is " -#~ "used.\n" -#~ "*This* `tar' defaults to `-f%s -b%d'.\n" -#~ msgstr "" -#~ "\n" -#~ "GNU tar kan hverken læse eller skrive '--posix'-arkiver. Dersom\n" -#~ "miljøvariablen POSIXLY_CORRECT er sat, er GNU-funktioner ikke tilladt\n" -#~ "sammen med '--posix'. POSIX-understøttelse er kun delvis implementeret, " -#~ "så\n" -#~ "stol ikke på det endnu.\n" -#~ "ARKIV kan være FIL, MASKINE:FIL eller BRUGER@MASKINE:FIL; DATO kan være " -#~ "en\n" -#~ "tekst-dato, eller et filnavn begyndende med '/' eller '.' og da vil " -#~ "filens dato\n" -#~ "blive brugt. *Denne* version af tar har '-f%s -b%d' som forvalg.\n" - -#~ msgid "Obsolete option, now implied by --blocking-factor" -#~ msgstr "Forældet flag, nu underforstået af --blocking-factor" - -#~ msgid "Obsolete option name replaced by --blocking-factor" -#~ msgstr "Forældet flag udskiftet med --blocking-factor" - -#~ msgid "Obsolete option name replaced by --read-full-records" -#~ msgstr "Forældet flag skiftet ud med --read-full-records" - -#~ msgid "Warning: the -I option is not supported; perhaps you meant -j or -T?" -#~ msgstr "" -#~ "Advarsel: -I flaget er ikke understøttet; måske mente du -j eller -T?" - -#~ msgid "Obsolete option name replaced by --touch" -#~ msgstr "Forældet flag skiftet ud med --touch" - -#~ msgid "Obsolete option name replaced by --absolute-names" -#~ msgstr "Forældet flag skiftet ud med --absolute-names" - -#~ msgid "Obsolete option name replaced by --block-number" -#~ msgstr "Forældet flag skiftet ud med --block-number" - -#~ msgid "Warning: the -y option is not supported; perhaps you meant -j?" -#~ msgstr "Advarsel: -y flaget er ikke understøttet; måske mente du -j?" - -#~ msgid "Obsolete option name replaced by --backup" -#~ msgstr "Forældet flag skiftet ud med --backup" - -#~ msgid "Written by John Gilmore and Jay Fenlason." -#~ msgstr "Skrevet af John Gilmore and Jay Fenlason." - -#~ msgid "Error exit delayed from previous errors" -#~ msgstr "Udsat fejl-afslutning som resultat af tidligere fejl" - -#~ msgid "" -#~ "If a long option shows an argument as mandatory, then it is mandatory\n" -#~ "for the equivalent short option also.\n" -#~ "\n" -#~ " -l, --file-length=LENGTH LENGTH of generated file\n" -#~ " -p, --pattern=PATTERN PATTERN is `default' or `zeros'\n" -#~ " --help display this help and exit\n" -#~ " --version output version information and exit\n" -#~ msgstr "" -#~ "Obligatoriske argumenter for lange flag er obligatoriske også for korte " -#~ "flag.\n" -#~ "\n" -#~ " -l, --file-length=LÆNGDE længde af genereret fil\n" -#~ " -p, --pattern=MØNSTER gyldige mønstre er 'default' eller 'zeros'\n" -#~ " --help vis denne hjælpetekst og afslut\n" -#~ " --version vis programversion og afslut\n" - -#~ msgid "Ambiguous pattern `%s'" -#~ msgstr "Flertydigt mønster '%s'" - -#~ msgid "Copyright %d Free Software Foundation, Inc." -#~ msgstr "Copyright © %d Free Software Foundation, Inc." - -#~ msgid "" -#~ "This is free software; see the source for copying conditions. There is " -#~ "NO\n" -#~ "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR " -#~ "PURPOSE.\n" -#~ msgstr "" -#~ "Dette er frit programmel. Se kildekoden for kopieringsbetingelser.\n" -#~ "Programmellet har ingen garanti, ikke en gang for SALGBARHED eller " -#~ "EGNETHED\n" -#~ "TIL NOGEN SPECIEL OPGAVE.\n" - -#~ msgid "`%s' exists but is not a directory" -#~ msgstr "'%s' eksisterer, men er ikke et katalog" - -#~ msgid "cannot chdir to directory, %s" -#~ msgstr "kan ikke gå til kataloget, %s" - -#~ msgid "cannot chmod %s" -#~ msgstr "kan ikke ændre filrettigheder for '%s'" - -#~ msgid "virtual memory exhausted" -#~ msgstr "virtuelt hovedlager opbrugt" - -#~ msgid "Write to compression program short %lu bytes" -#~ msgstr "Skrev %lu byte for lidt til komprimeringsprogrammet" - -#~ msgid "Removing `%.*s' prefix from member names" -#~ msgstr "Fjerner '%.*s' præfiks fra medlemsnavne" - -#~ msgid "Archive contains future timestamp %s" -#~ msgstr "Arkiv indeholder fremtidigt tidsstempel %s" - -#~ msgid "%s: Cannot symlink %s %s" -#~ msgstr "%s: Kan ikke lænke %s symbolsk til %s" - -#~ msgid "Invalid group given on option" -#~ msgstr "Ugyldig gruppe angivet i flag" +msgstr "--stat kræver filnavne" -#~ msgid "Invalid owner given on option" -#~ msgstr "Ugyldig ejer angivet i flag" +#~ msgid "Cannot save working directory" +#~ msgstr "Kan ikke gemme arbejdskatalog" diff --git a/po/de.gmo b/po/de.gmo index 69384998f54d28008e500c74ae2b1ba1e83b222d..a4e10009ced67f2d5db81349cbe8a338fea4e6e3 100644 GIT binary patch delta 16346 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 delta 11402 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 e@t>a!azNIc=YIg3MZ0$Z diff --git a/po/de.po b/po/de.po index b5d3616..13a9553 100644 --- a/po/de.po +++ b/po/de.po @@ -4,16 +4,18 @@ # Ulrich Drepper , 1995? # Karl Eichwalder , 1996 # Christian Kirsch , 1996, 2001 -# Michael Piefel , 2003, 2006, 2007, 2008, 2009 +# Michael Piefel , 2003, 2006, 2007, 2008, 2009, 2010 # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22\n" +"Project-Id-Version: tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2009-03-26 10:05+0100\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-08-17 21:45+0200\n" "Last-Translator: Michael Piefel \n" "Language-Team: German \n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -89,7 +91,7 @@ msgstr "„%s --help“ oder „%s --usage“ gibt weitere Informationen.\n" msgid "Report bugs to %s.\n" msgstr "Melden Sie Fehler (auf Englisch, mit LC_ALL=C) an %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Unbekannter Systemfehler." @@ -101,8 +103,8 @@ msgstr "diese Hilfe ausgeben" msgid "give a short usage message" msgstr "eine kurze Benutzungsübersicht ausgeben" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NAME" @@ -140,55 +142,60 @@ msgstr "(PROGRAMMFEHLER) Option hätte erkannt werden müssen!?" msgid "write error" msgstr "Schreibfehler" -#: gnu/getopt.c:531 gnu/getopt.c:547 -#, fuzzy, c-format +#: gnu/getopt.c:529 gnu/getopt.c:545 +#, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: Option „%s“ ist mehrdeutig\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 -#, fuzzy, c-format +#: gnu/getopt.c:578 gnu/getopt.c:582 +#, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: Option „--%s“ erlaubt keinen Parameter\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 -#, fuzzy, c-format +#: gnu/getopt.c:591 gnu/getopt.c:596 +#, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" -msgstr "%s: Option „%c%s“ erlaubt keinen Parameter.\n" +msgstr "%s: Option „%c%s“ erlaubt keinen Parameter\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 -#, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: Option „%s“ benötigt einen Parameter.\n" +#: gnu/getopt.c:639 gnu/getopt.c:658 +#, c-format +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: Option „--%s“ benötigt einen Parameter\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 -#, fuzzy, c-format +#: gnu/getopt.c:696 gnu/getopt.c:699 +#, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: Unbekannte Option „--%s“\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 -#, fuzzy, c-format +#: gnu/getopt.c:707 gnu/getopt.c:710 +#, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: Unbekannte Option „%c%s“\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 -#, fuzzy, c-format +#: gnu/getopt.c:759 gnu/getopt.c:762 +#, c-format msgid "%s: invalid option -- '%c'\n" -msgstr "%s: Ungültige Option -- %c\n" +msgstr "%s: Ungültige Option -- „%c“\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 -#, fuzzy, c-format +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 +#, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: Option benötigt einen Parameter -- %c.\n" +msgstr "%s: Option benötigt einen Parameter -- „%c“.\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 -#, fuzzy, c-format +#: gnu/getopt.c:885 gnu/getopt.c:901 +#, c-format msgid "%s: option '-W %s' is ambiguous\n" -msgstr "%s: Option „-W %s“ ist mehrdeutig.\n" +msgstr "%s: Option „-W %s“ ist mehrdeutig\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 -#, fuzzy, c-format +#: gnu/getopt.c:925 gnu/getopt.c:943 +#, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" -msgstr "%s: Option „-W %s“ erlaubt keinen Parameter.\n" +msgstr "%s: Option „-W %s“ erlaubt keinen Parameter\n" + +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: Option „-W %s“ benötigt einen Parameter\n" #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" @@ -254,12 +261,12 @@ msgstr "^[nN]" #: gnu/version-etc.c:76 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "" +msgstr "Paketiert von %s (%s)\n" #: gnu/version-etc.c:79 #, c-format msgid "Packaged by %s\n" -msgstr "" +msgstr "Paketiert von %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's @@ -397,33 +404,32 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: gnu/version-etc.c:247 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Report bugs to: %s\n" -msgstr "Melden Sie Fehler (auf Englisch, mit LC_ALL=C) an %s.\n" +msgstr "" +"\n" +"Melden Sie Fehler (auf Englisch, mit LC_ALL=C) an: %s\n" #: gnu/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report %s bugs to: %s\n" -msgstr "" -"\n" -"Melden Sie Fehler (auf Englisch, mit LC_ALL=C) an <%s>.\n" +msgstr "Melden Sie Fehler in %s (auf Englisch, mit LC_ALL=C) an: %s\n" #: gnu/version-etc.c:253 #, c-format msgid "%s home page: <%s>\n" -msgstr "" +msgstr "Homepage von %s: <%s>\n" #: gnu/version-etc.c:255 -#, fuzzy, c-format +#, c-format msgid "%s home page: \n" -msgstr "Homepage von %s: .\n" +msgstr "Homepage von %s: \n" #: gnu/version-etc.c:258 -#, fuzzy msgid "General help using GNU software: \n" -msgstr "Allgemeine Hilfe zu GNU-Software: .\n" +msgstr "Allgemeine Hilfe zu GNU-Software: \n" #. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. #. Directly translating this to another language will not work, first because @@ -530,195 +536,189 @@ msgstr "Standardausgabe" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Kann nicht mit %s verbinden: Auflösung fehlgeschlagen" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Kann Remote-Shell nicht ausführen." -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Richtung für Positionierung nicht zulässig." -#: rmt/rmt.c:419 -#, fuzzy +#: rmt/rmt.c:438 msgid "Invalid seek direction" -msgstr "Ungültige Zugriffsrechte angegeben." +msgstr "Ungültige Richtung für Positionierung" -#: rmt/rmt.c:427 -#, fuzzy +#: rmt/rmt.c:446 msgid "Invalid seek offset" -msgstr "Ungültige Größe: %s" +msgstr "Ungültiger Betrag für Positionierung" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Positionierungsangabe außerhalb des zulässigen Bereichs." -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 -#, fuzzy +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" -msgstr "Ungültige Bandlänge" +msgstr "Ungültige Bytezahl" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 -#, fuzzy +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" -msgstr "Positionierungsangabe außerhalb des zulässigen Bereichs." +msgstr "Bytezahl außerhalb des zulässigen Bereichs" -#: rmt/rmt.c:539 -#, fuzzy +#: rmt/rmt.c:558 msgid "Premature eof" -msgstr "rmtd: Vorzeitiges Dateiende.\n" +msgstr "Vorzeitiges Dateiende" -#: rmt/rmt.c:582 -#, fuzzy +#: rmt/rmt.c:601 msgid "Invalid operation code" -msgstr "Hauptsächlicher Arbeitsmodus:" +msgstr "Ungültiger Arbeitsmodus" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" -msgstr "" +msgstr "Operation nicht gestattet" -#: rmt/rmt.c:645 -#, fuzzy +#: rmt/rmt.c:664 msgid "Unexpected arguments" -msgstr "Unerwartetes Dateiende in verstümmelten Namen." +msgstr "Unerwartete Argumente" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" +"Ein Bandlaufwerk bearbeiten, dabei Befehle von entferntem Prozess annehmen" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "ZAHL" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" -msgstr "" +msgstr "Debug-Level setzen" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "DATEI" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" -msgstr "" +msgstr "Dateinamen für Debug-Ausschriften setzen" -#: rmt/rmt.c:696 rmt/rmt.c:764 -#, fuzzy, c-format +#: rmt/rmt.c:715 rmt/rmt.c:783 +#, c-format msgid "cannot open %s" msgstr "kann „%s“ nicht öffnen" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "zu viele Argumente" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" -msgstr "Ungültiges Befehl." +msgstr "Ungültiger Befehl" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Das sieht nicht wie ein „tar“-Archiv aus." -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Gesamtzahl geschriebener Bytes" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Gesamtzahl gelesener Bytes" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Gesamtzahl gelöschter Bytes: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(pipe)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Ungültiger Wert für „record_size“." -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Kein Archivname angegeben" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Kann Archive auf Standard-Ein-/Ausgabe nicht prüfen." -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Archiv ist komprimiert. Benutzen Sie die Option %s." -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Kann komprimierte Archive nicht aktualisieren" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Am Anfang des Mediums, beende jetzt." -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Zu viele Fehler, beende." -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Recordgröße = %lu Block" msgstr[1] "Recordgröße = %lu Blöcke" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Falsch ausgerichteter Block (ein Byte) im Archiv." msgstr[1] "Falsch ausgerichteter Block (%lu Bytes) im Archiv." -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Kann Archiv-Datei nicht zurücksetzen; könnte ohne „-i“ unlesbar sein." -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "„rmtlseek“ nicht an Recordgrenze angehalten" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: enthält ungültige Teil-Nummer." -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Teil-Nummer zu groß." -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Medium #%d für %s einlegen und Eingabetaste drücken: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Dateiende gefunden, Benutzereingabe erwartet" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "WARNUNG: Archiv unvollständig" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -730,67 +730,67 @@ msgstr "" " q „tar“ abbrechen\n" " j oder Enter fortfahren\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Shell in einem Unterprozess starten\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? diese Liste ausgeben\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Kein neues Medium; halte an.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Dateiname nicht angegeben. Versuchen Sie es noch einmal.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Ungültige Eingabe. Geben Sie „?“ für Hilfe ein.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "„%s“-Befehl gescheitert." -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s wird möglicherweise auf diesem Teil fortgesetzt: Kopf enthält " "abgeschnittenen Namen." -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "Dieser Teil ist keine Fortsetzung von %s." -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s hat die falsche Größe (%s != %s + %s)." -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Dieser Teil ist nicht an der Reihe (%s - %s != %s)." -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Kennzeichnung des Archivs passt nicht zu „%s“." -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Teil „%s“ passt nicht zu „%s“." -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -798,7 +798,7 @@ msgstr "" "%s: Dateiname zu lang, um in einem GNU-Mehrteil-Kopf abgelegt werden zu " "können, abgeschnitten" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "Schreiben endete nicht an Blockgrenze" @@ -809,20 +809,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Konnte nur %lu von %lu Byte lesen" msgstr[1] "Konnte nur %lu von %lu Bytes lesen" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Unterschiedliche Inhalte" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Unerwartetes Dateiende im Archiv." -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Unterschiedliche Dateitypen " -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Modus ist unterschiedlich" @@ -838,144 +838,144 @@ msgstr "Gruppenkennung ist unterschiedlich" msgid "Mod time differs" msgstr "Änderungszeit ist unterschiedlich" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Größe ist unterschiedlich" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Nicht mit „%s“ verknüpft" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symbolische Verknüpfung ist unterschiedlich" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Unterschiedliche Gerätenummern" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Prüfe " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Unbekannter Dateityp „%c“, Differenz wie für eine normale Datei." -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Archiv enthält Dateinamen, deren Präfixe entfernt wurden." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Die Überprüfung findet möglicherweise die Originaldateien nicht." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "FEHLER BEI PRÜFUNG: %d ungültiger Kopfteil erkannt." msgstr[1] "FEHLER BEI PRÜFUNG: %d ungültige Kopfteile erkannt." -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Ein einzelner Nullblock bei %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: enthält eine „Cache-Verzeichnis“-Markierung %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "Wert %s außerhalb des %s-Bereich %s..%s; ersetze durch %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "Wert %s außerhalb des %s-Bereichs %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Erzeuge negative oktale Kopfteile" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: Dateiname ist zu lang (max. %d); nicht gesichert." -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" "%s: Dateiname ist zu lang (kann nicht aufgeteilt werden); nicht gesichert." -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: Verknüpfungsname ist zu lang; nicht gesichert." -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "Datei %s ist um ein Byte geschrumpft, fülle mit Null auf." msgstr[1] "Datei %s ist um %s Bytes geschrumpft, fülle mit Nullen auf." -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "Datei %s liegt auf einem anderen Dateisystem; nicht gesichert." -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "Inhalt nicht gesichert" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Unbekannter Dateityp; Datei ignoriert." -#: src/create.c:1472 -#, fuzzy, c-format +#: src/create.c:1527 +#, c-format msgid "Missing links to %s." -msgstr "Fehlende Verknüpfungen zu %s.\n" +msgstr "Fehlende Verknüpfungen zu %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "Datei %s ist unverändert; nicht gesichert." -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s ist das Archiv; nicht gesichert." -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "Verzeichnis nicht gesichert" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: Datei hat sich beim Lesen geändert." -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: Socket ignoriert" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: Klappe ignoriert" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Springe zum nächsten Kopfteil." @@ -983,76 +983,76 @@ msgstr "Springe zum nächsten Kopfteil." msgid "Deleting non-header from archive" msgstr "Lösche nicht-Kopfteil aus dem Archiv" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: unplausibel alter Zeitstempel %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: Zeitstempel %s liegt %s Sekunden in der Zukunft." -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Unerwarteter Inkonsitenz beim Erstellen des Verzeichnisses." -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Verzeichnis umbenannt bevor sein Status ermittelt werden konnte" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Extrahiere zusammenhängende Dateien („contiguous files“) als reguläre." -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "" "Versuche symbolische Verknüpfungen als harte Verknüpfungen herauszuholen." -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "" "Kann „%s“ nicht herausholen – Datei ist Fortsetzung eines anderen Teils." -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Unerwarteter Kopfteil mit langem Namen" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Unbekannter Dateityp „%c“, wie normale Datei extrahiert." -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Aktuelles %s ist neuer oder hat dasselbe Alter." -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Konnte keine Sicherheitskopie von dieser Datei erstellen" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Kann %s nicht in %s umbenennen." -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Verzeichnis wurde von „%s“ umbenannt." -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Verzeichnis wurde umbenannt." -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "Verzeichnis „%s“ ist neu." @@ -1164,87 +1164,87 @@ msgstr "%s: Lösche %s.\n" msgid "%s: Cannot remove" msgstr "%s: Kann nicht entfernen." -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Ausgelassen" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "Block %s: ** Block aus NULlen **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "Block %s: ** Ende der Datei **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "Block %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Leerzeichen im Kopfteil, wo numerische %s-Werte stehen sollten." #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "Oktalzahl %.*s außerhalb des %s-Bereichs, nehme Zweierkomplement an?" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Oktalzahl %.*s außerhalb des %s-Bereichs" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Archiv enthält veraltete Base64-Kopfteile" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Base64-Text %s außerhalb des %s-Bereichs." -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Base-256-Wert ist außerhalb des %s-Bereichs." #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Archiv enthält „%.*s“ wo numerische %s-Werte stehen sollten." #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Wert %s außerhalb des %s-Bereichs %s..%s." -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " Verknüpfung zu %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " unbekannter Dateityp %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "––Lange Verknüpfung––\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "––Langer Name––\n" @@ -1252,93 +1252,93 @@ msgstr "––Langer Name––\n" # Alte Üs: Band Kopfteil. Kann diese Meldung auch bei Disketten # ausgegeben werden? Dann kann man ja nicht "Band" sagen; am besten # einfach "Volume" lassen. ke. -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "––Vorspann des Teils––\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "––Fortgesetzt bei Byte %s––\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Erzeuge Verzeichnis:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Kann Arbeitsverzeichnis nicht wechseln." + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Benenne „%s“ in „%s“ um.\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Kann nicht in %s umbenennen" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Benenne „%s“ zurück in „%s“.\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Kann aktuelles Verzeichnis nicht sichern." - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Kann Arbeitsverzeichnis nicht wechseln." - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Datei gelöscht, bevor sie gelesen wurde." -#: src/misc.c:774 -#, fuzzy, c-format +#: src/misc.c:866 +#, c-format msgid "%s: Directory removed before we read it" -msgstr "%s: Datei gelöscht, bevor sie gelesen wurde." +msgstr "%s: Verzeichnis gelöscht, bevor es gelesen wurde." -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "Kindprozess" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" -msgstr "interprocess channel" +msgstr "Interprocess-Kanal" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "Zeichen für Musterüberdeckung im Dateinamen benutzt. Benutzen" +msgstr "Zeichen für Musterüberdeckung im Dateinamen benutzt" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" -msgstr "Sie bitte --wildcards, um Musterüberdeckung zu ermöglichen oder" +msgstr "" +"Benutzen Sie --wildcards, um Musterüberdeckung zu ermöglichen oder\n" +"--no-wildcards, um diese Warnung zu unterdrücken." -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Nicht im Archiv gefunden." -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Erforderliches Auftreten nicht im Archiv gefunden." -#: src/names.c:894 -#, fuzzy +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Kennzeichnung des Archivs passt nicht" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" -msgstr "--preserve-order ist nicht kompatibel mit --listed-incremental" +msgstr "Option -C in Dateiliste ist nicht erlaubt mit --listed-incremental" -#: src/names.c:900 -#, fuzzy +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" -msgstr "--preserve-order ist nicht kompatibel mit --listed-incremental" +msgstr "In --listed-incremental ist nur eine Option -C erlaubt" #: src/tar.c:81 #, c-format @@ -1362,7 +1362,7 @@ msgstr "" "Unbekannter Zitatstil „%s“. Versuchen Sie „%s --quoting-style=help“ für eine " "Liste." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1376,12 +1376,12 @@ msgstr "" "zusammen und kann einzelne Dateien aus dem Archiv wieder herstellen.\n" "\n" "Beispiele:\n" -" %s -cf archiv.tar foo bar # archiv.tar mit den Dateien foo und bar " +" tar -cf archiv.tar foo bar # archiv.tar mit den Dateien foo und bar " "erzeugen\n" -" %s -tvf archiv.tar # Inhalt von archiv.tar ausführlich anzeigen\n" -" %s -xf archiv.tar # alle Dateien aus archiv.tar extrahieren\n" +" tar -tvf archiv.tar # Inhalt von archiv.tar ausführlich anzeigen\n" +" tar -xf archiv.tar # alle Dateien aus archiv.tar extrahieren\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1405,79 +1405,79 @@ msgstr "" " vorhanden sind, sonst einfache\n" " never, simple immer einfache Sicherheitskopien\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Hauptsächlicher Arbeitsmodus:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "den Inhalt eines Archivs auflisten" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "Dateien aus einem Archiv extrahieren" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "ein neues Archiv anlegen" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "Unterschiede zwischen Archiv und Dateisystem suchen" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "Dateien hinten an das Archiv anfügen" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "nur Dateien anfügen, die neuer als die Kopie im Archiv sind" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "tar-Dateien an ein Archiv anfügen" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "aus dem Archiv löschen (nicht auf Magnetband!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "den Archiv-Teil-Namen überprüfen und beenden" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Feineinstellungen:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "löchrige Dateien („sparse files“) effizient behandeln" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAJOR[.MINOR]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "zu benutzende Version des Sparse-Formats setzen (impliziert --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "inkrementelle Sicherung im alten GNU-Format" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "inkrementelle Sicherung im neuen GNU-Format" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" -msgstr "" +msgstr "Niveau für erzeugte Archive mit --listed-incremental ausgeben" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "kein Abbruch mit Existatus!=0 bei unlesbaren Dateien" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1489,126 +1489,125 @@ msgstr "" "list und wenn eine Dateiliste entweder auf der Kommandozeile oder mittels " "der Option -T angegeben wurde benutzt werden; Zahl ist standardmäßig 1" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "im Archiv kann positioniert werden" -#: src/tar.c:436 -#, fuzzy +#: src/tar.c:437 msgid "archive is not seekable" -msgstr "im Archiv kann positioniert werden" +msgstr "im Archiv kann nicht positioniert werden" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "Gerätenummer bei Erstellung inkrementeller Archive nicht prüfen" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "Gerätenummer bei Erstellung inkrementeller Archive prüfen (Voreinstellung)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Steuerung des Überschreibens:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "Archiv nach dem Schreiben prüfen" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "Dateien nach dem Hinzufügen zum Archiv löschen" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "vorhandene Dateien beim Extrahieren nicht überschreiben" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "vorhandene Dateien, die neuer als die Archivkopie sind, nicht überschreiben" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "vorhandene Dateien beim Extrahieren überschreiben" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "zu überschreibende Dateien vor dem Extrahieren löschen" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" "Verzeichnishierarchien rekursiv vor dem Extrahieren eines Verzeichnisses " "löschen" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "Metadaten existierender Verzeichnisse erhalten" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "Metadaten existierender Verzeichnisse beim Extrahieren überschreiben " "(Voreinstellung)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Wahl des Ausgabestroms:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "Dateien auf die Standardausgabe extrahieren" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "BEFEHL" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "extrahierte Dateien an ein anderes Programm weiterreichen" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "Exitstatus der Kinder ignorieren" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "Exitstatus!=0 von Kindern als Fehler ansehen" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Behandlung der Datei-Attribute:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "Eigentümer für hinzugefügte Dateien auf NAME setzen" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "Gruppe für hinzugefügte Dateien auf NAME setzen" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATUM-ODER-DATEI" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "Änderungszeit für hinzugefügte Datei aus DATUM-ODER-DATEI beziehen" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "ÄNDERUNGEN" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "den (symbolischen) Modus ÄNDERUNGEN für hinzugefügte Dateien erzwingen" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METHODE" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1619,34 +1618,35 @@ msgstr "" "oder dadurch, dass die Zeiten gar nicht erst neu gesetzt werden (METHODE=" "„system“)" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "die geänderte Zeit nicht extrahieren" -#: src/tar.c:504 -#, fuzzy +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -"versuchen, die Dateien mit denselben Eigentumsverhältnisse zu extrahieren" +"versuchen, die Dateien mit denselben Eigentumsverhältnisse zu extrahieren " +"(für den Admin ist dies die Voreinstellung)" -#: src/tar.c:506 -#, fuzzy +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" -msgstr "Dateien als aktueller Nutzer extrahieren" +msgstr "" +"Dateien als aktueller Nutzer extrahieren (für normale Nutzer die " +"Voreinstellung)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "immer Zahlen für Nutzer-/Gruppennamen verwenden" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "Informationen über Dateizugriffsrechte mit extrahieren (Voreinstellung für " "Root)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1654,15 +1654,15 @@ msgstr "" "die Umask des Nutzers anwenden beim Extrahieren von Dateizugriffsrechte aus " "dem Archiv (Voreinstellung für normale Nutzer)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "zu entpackende Dateinamen wie im Archiv sortieren" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "wie -p und -s zusammen" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1670,139 +1670,139 @@ msgstr "" "das Setzen von Zugriffszeiten und Rechten von extrahierten Verzeichnissen " "verschieben bis zum Ende des Entpackens" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "den Effekt von --delay-directory-restore aufheben" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Geräteauswahl und -umschaltung:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIV" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "Archivdatei oder Gerät ARCHIV benutzen" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "Archivdatei ist lokal, auch wenn der Name einen Doppelpunkt enthält" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "statt „rmt“ den gegebenen BEFEHL benutzen" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "statt „rsh“ den entfernten BEFEHL benutzen" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "Laufwerk und Schreibdichte angeben" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "mehrteiliges Archiv anlegen/listen/extrahieren" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "Medium wechseln, wenn ZAHL × 1024 Bytes geschrieben wurden" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "am Ende jedes Mediums das Skript ausführen (impliziert -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "Teil-Nummer in DATEI benutzen/aktualisieren" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Blockung des Gerätes:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLÖCKE" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLÖCKE × 512 Bytes pro Record" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "ZAHL Bytes pro Record, Vielfaches von 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "Blöcke mit Nullen im Archiv ignorieren (heißt EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "erneut Blocken beim Lesen (für 4.2BSD‐Pipes)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Auswahl des Archiv-Formats:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMAT" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "Archiv mit dem gegebenen Format anlegen" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMAT ist eines der folgenden:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "altes V7-tar-Format" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "GNU-Format wie mit tar <=1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU-tar-1.13.x-Format" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "Format von POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "Format von POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "wie pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "wie --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "wie --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "Schlüsselwort[[:]=Wert][,Schlüsselwort[[:]=Wert]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "Pax-Schlüsselwörter steuern" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEXT" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1810,78 +1810,78 @@ msgstr "" "Archiv mit dem Teilnamen TEXT anlegen; beim Listen/Extrahieren, TEXT als " "Muster für den Teilnamen benutzen" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Kompressionsoptionen:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "Archiverweiterung nehmen, um Kompressionsprogramm zu bestimmen" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "Archiverweiterung nicht nehmen, um Kompressionsprogramm zu bestimmen" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "durch PROG filten (muss -d akzeptieren)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Auswahl der lokalen Dateien:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "angegebene Datei zum Archiv hinzufügen (nützlich, wenn Datei mit einem " "Strich beginnt)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "VERZEICHNIS" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "zu VERZEICHNIS wechseln" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "Namen der zu bearbeitenden Dateien aus DATEI lesen" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T liest null-terminierte Namen, verbiete -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "die Wirkung der vorangehenden Option --null aufheben" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" "Dateinamen, die mit -T gelesen werden, von Zitat befreien (Voreinstellung)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "Dateinamen, die mit -T gelesen werden, nicht von Zitat befreien" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "MUSTER" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "Dateien auslassen, auf die MUSTER passt" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "Dateien auslassen, auf die in DATEI angegebene Muster passen" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1889,97 +1889,97 @@ msgstr "" "Inhalt von Verzeichnissen auslassen, die CACHEDIR.TAG enthalten, außer der " "Markierungsdatei selbst" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" "alles unterhalb von Verzeichnissen auslassen, die CACHEDIR.TAG enthalten" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "Verzeichnisse auslassen, die CACHEDIR.TAG enthalten" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" "Inhalt von Verzeichnissen auslassen, die DATEI enthalten, außer DATEI selbst" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "alles unterhalb von Verzeichnissen auslassen, die DATEI enthalten" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "Verzeichnisse auslassen, die DATEI enthalten" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "Verzeichnisse von Versionskontrollsystemen auslassen" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" -msgstr "" +msgstr "Backup- und Lock-Dateien ausschließen" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "automatischen Abstieg in Vezeichnisse vermeiden" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "beim Anlegen eines Archivs im lokalen Dateisystem bleiben" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "in Verzeichnisse absteigen (Voreinstellung)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "führende „/“-Zeichen in den Dateinamen erhalten" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "symbolischen Verknüpfungen folgen; die Dateien archivieren und abspeichern, " "auf die sie zeigen" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" "harten Verknüpfungen folgen; die Dateien archivieren und abspeichern, auf " "die sie sich beziehen" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "ELEMENT-NAME" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "mit ELEMENT-NAME im Archiv beginnen" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "nur Dateien ablegen, die neuer als DATUM-ODER-DATEI sind" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATUM" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "Datum und Zeit nur überprüfen, wenn Daten geändert wurden" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "KONTROLLE" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "Sicherung vor dem Entfernen, wähle Versions-KONTROLLE" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "ZEICHENKETTE" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1987,99 +1987,98 @@ msgstr "" "Sicherung vor dem Entfernen, übliches Suffix ersetzen („~“, wenn nicht durch " "Umgebungsvariable SIMPLE_BACKUP_SUFFIX anders gesetzt)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Dateinamentransformationen:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "ZAHL führende Komponenten beim Extrahieren von Dateinamen entfernen" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "AUSDRUCK" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "den sed-AUSDRUCK zur Dateinamentransformation benutzen" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Dateinamenauswahloptionen (sowohl für ein- als auch ausschließende Muster):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "Groß-/Kleinschreibung ignorieren" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "Muster am Dateinamensanfang ausrichten" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "Muster passen nach jedem „/“ (Voreinstellung beim Ausschluss)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "Groß-/Kleinschreibung beachten (Voreinstellung)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "Muster benutzen (Voreinstellung für Ausschluss)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "Zeichenketten sind buchstabengetreu" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "Jokerzeichen passen nicht auf „/“" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "Jokerzeichen passen auf „/“ (Voreinstellung für Ausschluss)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Informationen:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "bearbeitete Dateien ausführlich listen" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" -msgstr "" +msgstr "SCHLÜSSELWORT" -#: src/tar.c:740 -#, fuzzy +#: src/tar.c:741 msgid "warning control" -msgstr "Steuerung des Überschreibens:" +msgstr "Warnungssteuerung" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" "Fortschrittsnachrichten bei jedem ZAHLten Record (Voreinstellung 10) anzeigen" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "AKTION" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "AKTION bei jedem Kontrollpunkt ausführen" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" "eine Nachricht ausgeben, wenn nicht alle Verknüpfungen abgespeichert werden" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SIGNAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2091,27 +2090,31 @@ msgstr "" "wird; erlaubte Signale sind: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 und SIGUSR2; " "die Namen ohne das Präfix SIG sind auch erlaubt" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "Dateiänderungszeiten in UTC anzeigen" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "Dateizeit in voller Auflösung anzeigen" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "ausführliche Ausgabe in DATEI schreiben" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "bei jeder Nachricht die Blocknummer innerhalb des Archivs mit anzeigen" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "für jede Aktion um Bestätigung bitten" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "Voreinstellungen von tar anzeigen" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2119,94 +2122,93 @@ msgstr "" "beim Listen oder Extrahieren jedes Verzeichnis auflisten, dass nicht den " "Suchkriterien entspricht" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "Datei- oder Archivnamen nach der Transformation anzeigen" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STIL" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "Zitatstil setzen; siehe unten für gültige STIL-Werte" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "zusätzliche Zeichen aus ZEICHENKETTE zitieren" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "Zeichen aus ZEICHENKETTE nicht zitieren" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Kompatibilitätsoptionen:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "beim Anlegen wie --old-archive; beim Extrahieren wie --no-same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Weitere Optionen:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "möglicherweise schädliche Optionen deaktivieren" -#: src/tar.c:927 -#, fuzzy +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" -msgstr "Von den Optionen „-Acdtrux“ ist nur _eine_ erlaubt." +msgstr "" +"Von den Optionen „-Acdtrux“ oder „--test-label“ ist jeweils nur eine erlaubt" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Kompressionsoptionen schließen sich gegenseitig aus." -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Unbekannter Signalname: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Datumsdatei nicht gefunden" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Ersetze %s für unbekanntes Datumsformat %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Option %s: Behandle Datum „%s“ als %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: Dateiliste schon gelesen" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: gelesener Dateiname enthält ein NULL-Zeichen" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 -#, fuzzy, c-format +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 +#, c-format msgid "filter the archive through %s" -msgstr "Archiv durch xz filtern" +msgstr "Archiv durch %s filtern" -#: src/tar.c:1290 -#, fuzzy +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "Gültige Argumente für die Option --quoting-style sind:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2214,53 +2216,51 @@ msgstr "" "\n" "*Dieses* „tar“ hat als Voreinstellung:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Ungültige Blockgröße" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Ungültige Bandlänge" -#: src/tar.c:1511 -#, fuzzy +#: src/tar.c:1529 msgid "Invalid incremental level value" -msgstr "unzulässiges inkrementelles Dateiformat" +msgstr "unzulässiger Wert für inkrementelles Niveau" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Mehr als ein Datum angegeben." -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Ungültiger Wert für Sparse-Version (für löchrige Dateien)" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' wird auf dieser Plattform nicht unterstützt" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "Wert für --checkpoint ist keine ganze Zahl" -#: src/tar.c:1830 -#, fuzzy +#: src/tar.c:1848 msgid "Invalid group" -msgstr "%s: Ungültige Gruppe" +msgstr "Ungültige Gruppe" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Ungültige Zugriffsrechte angegeben." -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Ungültige Zahl" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Ungültiger Benutzer" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2268,118 +2268,116 @@ msgstr "" "Die Option --preserve ist veraltet, benutzen Sie stattdessen --preserve-" "permissions --preserve-order" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Ungültiger Wert für Recordgröße." -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Die Recordgröße muss ein Vielfaches von %d sein." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Ungültige Elementanzahl" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Nur eine Option --to-command erlaubt" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Fehlgeformtes Dichteargument: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Unbekannte Dicht: „%c“" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Die Optionen „-[0-7][lmh]“ unterstützt *dieses* „tar“ nicht." -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[DATEI]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Die alte Option „%c“ benötigt einen Parameter." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence ist ohne Dateiliste bedeutungslos" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" "--occurrence kann im angeforderten Operationsmodus nicht benutzt werden" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Mehrere Archivdateien verlangen die Option „-M“." -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "--listed-incremental kann nicht mit --newer benutzt werden" -#: src/tar.c:2387 -#, fuzzy +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" -msgstr "--preserve-order ist nicht kompatibel mit --listed-incremental" +msgstr "--level ist ohne --listed-incremental bedeutungslos" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Band-Nummer ist zu lang (Maximum ist ein Byte)." msgstr[1] "%s: Band-Nummer ist zu lang (Maximum ist %lu Bytes)." -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Kann mehrteilige Archive nicht prüfen." -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Kann komprimierte Archive nicht prüfen" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Kann keine mehrteiligen komprimierten Archive verwenden." -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Kann komprimierte Archive nicht aneinanderhängen" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option kann nur mit POSIX-Archiven benutzt werden" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Teillänge kann nicht unter der Recordgröße liegen" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order ist nicht kompatibel mit --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Anlegen eines leeren Archivs wird feige verweigert." -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Die Optionen „-Aru“ sind nicht kompatibel mit „-f -“." -#: src/tar.c:2592 -#, fuzzy +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" -msgstr "Eine der Optionen „-Acdtrux“ ist notwendig." +msgstr "Eine der Optionen „-Acdtrux“ oder „--test-label“ ist notwendig." -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Beende mit Fehlerstatus aufgrund vorheriger Fehler" @@ -2391,57 +2389,56 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Datei ist um ein Byte geschrumpft." msgstr[1] "%s: Datei ist um %s Bytes geschrumpft." -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Schlüsselwort %s ist unbekannt oder noch nicht implementiert" -#: src/xheader.c:173 -#, fuzzy +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" -msgstr "Zahl außerhalb des zulässigen Bereichs: %s" +msgstr "Zeitstempel außerhalb des zulässigen Bereichs" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Muster %s kann nicht benutzt werden" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Schlüsselwort %s kann nicht überschrieben werden" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Fehlgeformter erweiterter Kopfteil: fehlende Länge" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Länge des erweiterten Kopfteils ist außerhalb des erlaubten Bereichs" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Länge %*s des erweiterten Kopfteils ist außerhalb des Bereichs" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Fehlgeformter erweiterter Kopfteil: fehlender Leerraum nach der Länge" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Fehlgeformter erweiterter Kopfteil: fehlendes Gleichheitszeichen" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Fehlgeformter erweiterter Kopfteil: fehlender Zeilenvorschub" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Ignoriere unbekanntes Schlüsselwort „%s“ für erweiterten Kopfteil" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" @@ -2449,29 +2446,29 @@ msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Erweiterter Kopfteil %s=%s ist außerhalb des Bereichs %s..%s." -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Fehlgeformter erweiterter Kopfteil: ungültiges %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Fehlgeformter erweiterter Kopfteil: überzähliges %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Fehlgeformter erweiterter Kopfteil: ungültiges %s: unerwarteter Trenner %c" # Ist „odd“ hier ungerade oder merkwürdig? -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2514,105 +2511,103 @@ msgstr "Schreib-Kontrollpunkt %u" msgid "Read checkpoint %u" msgstr "Lese-Kontrollpunkt %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "" -"genfile manipuliert Datendateien für die Testsuit der GNU paxutils.\n" +"genfile manipuliert Datendateien für die Testsuite der GNU paxutils.\n" "OPTIONEN sind:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Optionen beim Anlegen von Dateien:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "GRÖßE" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Datei der gegebenen GRÖßE anlegen" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "in Datei NAME anstelle der Standardausgabe schreiben" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Dateinamenlist aus DATEI lesen" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T liest null-terminierte Namen" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Die Datei mit dem gegebenen MUSTER füllen. MUSTER ist „default“ oder „zeros“." -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Größe eines Blocks für löchrige Dateien" # „map“: Karte, Abbildung? -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Löchrige („sparse“) Datei erzeugen. Der Rest der Kommandozeile gibt die die " "Dateibildungsvorschrift an." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "POSITION" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "vor dem Schreiben zur gegebenen Position springen" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Dateistatistikoptionen:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Inhalt des „struct stat“ für jede gegebene Datei ausgeben. Standard-FORMAT " "ist:" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Optionen für synchrone Ausführung:" -#: tests/genfile.c:164 -#, fuzzy +#: tests/genfile.c:163 msgid "OPTION" -msgstr " [OPTION...]" +msgstr "OPTION" -#: tests/genfile.c:165 -#, fuzzy +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -"jeden gegebenen BEFEHL ausführen; nützlich mit --checkpoint und einem aus --" -"cut, --append, --touch" +"ARGUMENTE ausführen. Nützlich mit --checkpoint und einem aus --cut, --" +"append, --touch, --unlink" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "gegebene Aktion (siehe unten) beim Erreichen des Kontrollpunkts ZAHL " "ausführen" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Datum für nächste „--touch“-Operation setzen" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "ausgeführte Kontrollpunkte und Beendigungsstatus von BEFEHL anzeigen" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2620,7 +2615,7 @@ msgstr "" "Aktionen für synchrone Ausführung. Diese werden beim Erreichen des " "Kontrollpunkts, der mit der Option --checkpoint gesetzt wurde, ausgeführt." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2628,145 +2623,148 @@ msgstr "" "DATEI kürzen auf die Länge, die mit einer vorhergehenden Option --length " "(oder 0 bei Abwesenheit) gesetzt wurde" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "GRÖßE Bytes an DATEI anfügen. GRÖßE wird mit einer vorhergehenden Option --" "length gesetzt." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Zugriffs- und Änderungszeiten der DATEI neu setzen" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "BEFEHL ausführen" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" -msgstr "" +msgstr "FILE entfernen (unlink)" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Ungültige Größe: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Zahl außerhalb des zulässigen Bereichs: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Negative Größe: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) fehlgeschlagen" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "Dateilänge %lu verlangt, tatsächlich %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "erzeugte Datei ist nicht löchrig" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Fehler beim Parser der Zahl in der Nähe von „%s“" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Unbekanntes Datumsformat" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGUMENTE...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "kann „%s“ nicht öffnen" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "kann nicht positionieren" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "Dateiname enthält Null-Zeichen" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "kann auf der Standardausgabe keine löchrige Datei erstellen, benutzen Sie " "die Option --file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "inkorrekte Maske (nahe „%s“)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "unbekannte Feld „%s“" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "kann an „%s“ keine Zeit setzen" -#: tests/genfile.c:700 -#, fuzzy, c-format +#: tests/genfile.c:699 +#, c-format msgid "cannot unlink `%s'" -msgstr "kann „%s“ nicht öffnen" +msgstr "kann „%s“ nicht entfernen (unlink)" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Befehl erfolgreich ausgeführt\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Befehl schlug mit Beendigungsstatus %d fehl.\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Befehl beendete sich bei Signal %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Befehl hieltb bei Signal %d an\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Befehl erzeugte einen Core-Dump\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Befehl beendet\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat erfordert Dateinamen" +#~ msgid "Cannot save working directory" +#~ msgstr "Kann aktuelles Verzeichnis nicht sichern." + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: Unzulässige Option -- %c\n" @@ -2777,30 +2775,6 @@ msgstr "--stat erfordert Dateinamen" #~ "\n" #~ "Melden Sie Fehler (auf Englisch, mit LC_ALL=C) an <%s>.\n" -#~ msgid "Reading %s\n" -#~ msgstr "Lese %s.\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Nicht behebbarer Fehler: Programmabbruch. " - -#~ msgid "suppress this warning." -#~ msgstr "--no-wildcards, um diese Warnung zu unterdrücken." - -#~ msgid "filter the archive through bzip2" -#~ msgstr "Archiv durch bzip2 filtern" - -#~ msgid "filter the archive through gzip" -#~ msgstr "Archiv durch gzip filtern" - -#~ msgid "filter the archive through compress" -#~ msgstr "Archiv durch compress filtern" - -#~ msgid "filter the archive through lzma" -#~ msgstr "Archiv durch lzma filtern" - -#~ msgid "filter the archive through lzop" -#~ msgstr "Archiv durch lzop filtern" - #~ msgid "Input string too long" #~ msgstr "Eingabezeichenkette zu lang" @@ -2836,6 +2810,30 @@ msgstr "--stat erfordert Dateinamen" #~ msgid "Premature end of file" #~ msgstr "Vorzeitiges Dateiende." +#~ msgid "Reading %s\n" +#~ msgstr "Lese %s.\n" + +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Nicht behebbarer Fehler: Programmabbruch. " + +#~ msgid "suppress this warning." +#~ msgstr "--no-wildcards, um diese Warnung zu unterdrücken." + +#~ msgid "filter the archive through bzip2" +#~ msgstr "Archiv durch bzip2 filtern" + +#~ msgid "filter the archive through gzip" +#~ msgstr "Archiv durch gzip filtern" + +#~ msgid "filter the archive through compress" +#~ msgstr "Archiv durch compress filtern" + +#~ msgid "filter the archive through lzma" +#~ msgstr "Archiv durch lzma filtern" + +#~ msgid "filter the archive through lzop" +#~ msgstr "Archiv durch lzop filtern" + #~ msgid "Warning: the -I option is not supported; perhaps you meant -j or -T?" #~ msgstr "" #~ "Warnung: Die Option -I ist nicht unterstützt, meinen Sie -j oder -T?" diff --git a/po/el.gmo b/po/el.gmo index ece7a03f225452ab2b230f4147ddd00f47402216..4957183bd98cfd33d6b3a898e4a6df2185ea5ade 100644 GIT binary patch delta 2698 zcmYk;drVe!9LMo5DNx8A0SUyXFfSnba8bFKX(5t<#HB<9h2)~Bc;S{-KA2^zm6gQC zTG^U8-8AO*j5!;P1zXEp&E{IOyR+1qS+4m9la1b=^BlK+^ZUGh=XlQV`u!a}*L9@B z_jByzKBMd*Qi$IsnH|Mbq5M$t!py=k9}}<`AH+JGi9HyB$58M4aRFYy8E8|?3c-W- zV=cyDHzu0->{Tl9-1rcq@eHQo7dREKVF8Y#I$q3Zrr|o&z}orA#vV*VKWd=gq1w5L zdM|=eN-wIPDomw+YowCJjRU9#2Jr#Bgt2%BgD^7EECi!52@_F&pM`U=2p3`-&clyT zEAS0w;4Li1=}~4m*of)$Z~as>vQbn6SJ8_p3{#e2GVVhS>|IoYL+cM2DMb%0$8`q&4dIR;``^awCFtUes9-Vej zTQ-Kug-Cj1@hk(?alUIA@`yFWvHsJkbZ~=7*kNS5>?o>%)2N2OLhbn#)N|wb5Ju3O z7jsZ6(ui637N+9}>bbvA1C66Gb)11((WUXMzmrVdP{-}42YXNr^rL1zifZU0YVXHT zD-cJf>3RmzhvmDjMjfC{sE)QGf9w^0l$1v>2tV~v(M*St6JtNR4_tHahcFr~VH#>r zvrrvXppH{BYDM;AFdjxFX+P@u4^S&KjK}HmA5?$+jCuk32B|Eg@;escELzn}w_-WI zjT`YYHsf-p(~T$aarDsI5^P1ie;k+L4b;kJvcH8`jQRK?zJNnmrSo6FdMxI~A!O3_ zIdzC{TKp5&<4RB9y`!iP(GOUP%FySa4AB`)jXC%_2H_ya>inOf zq6WUiS@<{BVFG7rH+JAYyoQX}nt8YpKf(8K2FullLs*ZMG*W_o)J(^*3HQ$CB;l{P z0}C0=7W%i7RCFVrugG?M8SC+1d=0C~#HIKP&c{?z{TVDn&FC~%;3d>^8JuBt*os=I z3#d~uFVn0GHy~rRZ_%e2-Jz0;<+Q#8Uqaro&yYUtCaU2iGKST(8r1#0r~w>9t=!kH zw^8k-ka@gn6{z=na3Kz(26WrY`ct>rTq#Lva1FkLrFa9|F+bbvdHfh#F+GRG!aiiT zY!u7!s_PUaV*vrIBq9oM3g>J&0Y8^9>MjOyqXvMA=w3oLy->bZkHDr)E~YQ)!FBRDH0x@99L z#VYYp+=*HNKdM8Ol|+(L3!I29>J0>Abc%A}|Aj7`&N1G$EBRVhs^YXce~*$|H);`ABq7+vr>eesoOkmK{{K z6I#AV;t|3_bP_3qincDssRcehv2HyCIkomQp;dgAC@0DYod9S4$xekY9##`ixYuHm zTd#B_zwBPOUW40+-`O3GedfhMVI=cVg^DZv%Hzvxt{Et0&iZ1H>daf mw6o!*4Q(x*4J}Oto~CX714-XU_KwcE*!!j@*gr9MRm^|vj14pZ delta 2911 zcmb8xdrXye9LMo5iXeyxf?V`Sk6B(o@&Hi^YGCFSQ%t-e3Mw7&Mj-;;IubOeXlT45QpP_OvN6|Gz;1pD#K{FfGPMh=HQ>0j+u;Jf)h{!2QUlwA%FHRABA`lN8=6D zMB|y2`pH2(H`TKiHBP7debDS6l>!<hmSHx|^1iRb@m#lH zF&@JScoDS&F+=DBN8wDIk41P8a~a>xQPB*4Lv@hB^!!+X>R^|5{U(m!I*cRnCTgMs z*-s6Si@IKdT1Y#p-=nC0`j8>)I%7%2__>%Oa?i{eUdaeVW&4sq~@_ za!?(YqH>@Tb>Dh?6nCH>-$w1oH&}pwVJ`Z4Soc+xdr?NDO>BL|jYNh$e zNwT@9@2kA_7StBLj(VqWp$6(h9j}Y19l3)8P^(eW#-Z*XjM|}me1idltEgzedn{uj zX3$F+&cqqG2es1kxB!2})i|AHJdf{S8z#`n9PGd;_!a8;fxOQ$oR17;uVE?n;AEZu z8&r1DFp_0Hhez;9yo1`Ju}pg_PQ%6cF_vS3W403KVKu&wdM=iX)DP1XtiU?lfyZ$< z=5iz&unWgAzTKh{Lqi5L3rt;6kjyHf+XA_!7?MCQbMYT!$mrrlYtU58+52 zuEh|}#`Lk#h1Os_*Hf_WQ9F6h(_t|6H>-gC*Nk`4pbkF3V!Vm`nNt|e)BObjhZUGvWVQv@;ZFPx*JBmEvnKl-dAoKS7ho!#%R1C6?k#5j=TNy!gSO0hB0BR< z)P##ageP;kgpE<)erk;u#`|c#4=$=*Vh|XA;W@?baefWpxzm zuk~x2RmzALRiR`P3*B0DJCy_4-eYVg-nJqMp!^Qc+?h5?gga(HT}zLaL+?)dask{}dhDcA|-h^;!pdK0rs; zEzZVJY2xs>%!aznfqJK{sd+===76)VvAKS2OH=c18MUNw}A4Z}@Cve>kMOy04GD+uh`(<^P|DtoyESeCXo1xv75xfWTnm diff --git a/po/el.po b/po/el.po index 175c171..75b9ccf 100644 --- a/po/el.po +++ b/po/el.po @@ -3,15 +3,17 @@ # Μπαλάσκας Ευάγγελος (Balaskas Euaggelos) , 2004. # Simos Xenitellis , 2004. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.13.25 \n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2004-03-08 14:44+0200\n" "Last-Translator: Μπαλάσκας Ευάγγελος (Balaskas Euaggelos) \n" "Language-Team: Greek \n" +"Language: el\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -90,7 +92,7 @@ msgstr "" "\n" "Αναφορά σφαλμάτων στο .\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Άγνωστο σφάλμα συστήματος" @@ -102,8 +104,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -141,56 +143,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: η επιλογή`%s' είναι αμφιλεγόμενη\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: η επιλογή `--%s' δεν επιτρέπει όρισμα\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: η επιλογή `%c%s' δεν επιτρέπει όρισμα\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: η επιλογή `%s' απαιτεί όρισμα\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: μη αναγνωρίσιμη επιλογή `--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: μη αναγνωρίσιμη επιλογή `%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: άκυρη επιλογή -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: η επιλογή απαιτεί όρισμα -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: η επιλογή `-W %s' είναι αμφιλεγόμενη\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: η επιλογή `-W %s' δεν επιτρέπει όρισμα\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: η επιλογή `%s' απαιτεί όρισμα\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "η μνήμη εξαντλήθηκε" @@ -525,190 +532,190 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Δεν είναι δυνατή η εκτέλεση απομακρυσμένου κελύφους (φλοιού)" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Η κατεύθυνση αναζήτησης είναι εκτός εύρους" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Άκυρη κατάσταση δόθηκε σε επιλογή" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Άκυρη ένδειξη χρόνου" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Η μετατόπιση αναζήτησης είναι εκτός εύρους" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Άκυρο μέγεθος ταινίας" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Η μετατόπιση αναζήτησης είναι εκτός εύρους" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Πρόωρο eof (τέλος αρχείου)\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "%s: άκυρη επιλογή -- %c\n" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Μη αναμενόμενο EOF (Τέλος Αρχείου) στην αρχειοθήκη" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "%s: Δεν είναι δυνατή η αναζήτηση σε %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Εντολή απορριμμάτων" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Αυτό δεν φαίνεται ως αρχειοθήκη tar" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Συνολικά byte που γράφτηκαν: %s (%sB, %sB/s)\n" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Συνολικά byte που γράφτηκαν: %s (%sB, %sB/s)\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(σωλήνωση)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Άκυρη τιμή για record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Δεν δόθηκε όνομα αρχειοθήκης" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "" "Δεν είναι δυνατή η επαλήθευση των κανονικών εισόδων/εξόδων της αρχειοθήκης" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Δεν είναι δυνατή η ανανέωση των συμπιεσμένων αρχειοθηκών" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Στην αρχή της ταινίας, τερματισμός τώρα" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Πάρα πολλά σφάλματα, τερματισμός" -#: src/buffer.c:744 +#: src/buffer.c:821 #, fuzzy, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Μέγεθος εγγραφής = %lu block" msgstr[1] "Μέγεθος εγγραφής = %lu block" -#: src/buffer.c:765 +#: src/buffer.c:842 #, fuzzy, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Μη ευθυγραμμισμένο μπλοκ (%lu byte) στην αρχειοθήκη" msgstr[1] "Μη ευθυγραμμισμένο μπλοκ (%lu byte) στην αρχειοθήκη" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: περιέχει άκυρο αριθμό τόμου" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Υπερχήλιση αριθμού τόμου" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Προετοίμασε τον τόμο #%d για %s και πάτα το πλήκτρο επιστροφής γραμμής" -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "EOF (Τέλος Αρχείου) ενώ η απάντηση του χρήστη αναμενότανε" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "ΠΡΟΕΙΔΟΠΟΊΗΣΗ: Η αρχειοθήκη είναι ημιτελής" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -720,71 +727,71 @@ msgstr "" " ! Παραγωγή νέου υπό-φλοιού\n" " ? Εκτύπωση αυτής της λίστας\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Κανένας νέος τόμος; έξοδος\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, fuzzy, c-format msgid "%s command failed" msgstr "`%s' η εντολή απέτυχε" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s δεν συνεχίζεται σε αυτόν τον τόμο" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s δεν συνεχίζεται σε αυτόν τον τόμο" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s είναι το εσφαλμένο μέγεθος (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Αυτός ο τόμος είναι εκτός συνέχειας" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Η αρχειοθήκη δεν έχει ετικέτα για ταίριασμα %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Ο τόμος %s δεν ταιριάζει %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "" @@ -795,20 +802,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Δυνατή μόνο η ανάγνωση %lu από %lu byte" msgstr[1] "Δυνατή μόνο η ανάγνωση %lu από %lu byte" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Τα περιεχόμενα διαφέρουν" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Μη αναμενόμενο EOF (Τέλος Αρχείου) στην αρχειοθήκη" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Οι τύποι αρχείων διαφέρουν" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Οι καταστάσεις διαφέρουν" @@ -824,143 +831,143 @@ msgstr "Ταυτότητες ομάδας διαφέρουν" msgid "Mod time differs" msgstr "Ώρες τροποποίησης διαφέρουν" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Τα μεγέθη διαφέρουν" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Δεν είναι συνδεδεμένο με %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Οι σύνδεσμοι διαφέρουν" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Οι αριθμοί των συσκευών διαφέρουν" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Επαλήθευση " -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Άγνωστος τύπος αρχείου '%c', εκτέλεση της diff ως κανονικό αρχείο" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" -#: src/compare.c:599 +#: src/compare.c:593 #, fuzzy, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "Η ΕΠΑΛΎΘΕΥΣΗ ΑΠΈΤΥΧΕ: ανιχνεύτηκαν %d άκυρη(ες) επικεφαλίδα(δες)" msgstr[1] "Η ΕΠΑΛΎΘΕΥΣΗ ΑΠΈΤΥΧΕ: ανιχνεύτηκαν %d άκυρη(ες) επικεφαλίδα(δες)" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "η τιμή %s είναι εκτός του %s εύρος %s..%s; αντικαταστήθηκε από %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "η τιμή %s είναι εκτός του %s εύρους %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Παράχθηκαν αρνητικές οκταδικές επικεφαλίδες" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, fuzzy, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: δεν μπορεί να τροποποιηθεί το αρχείο; δεν αποθηκεύτηκε" -#: src/create.c:634 +#: src/create.c:621 #, fuzzy, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: δεν μπορεί να τροποποιηθεί το αρχείο; δεν αποθηκεύτηκε" -#: src/create.c:661 +#: src/create.c:648 #, fuzzy, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: δεν μπορεί να τροποποιηθεί το αρχείο; δεν αποθηκεύτηκε" -#: src/create.c:1078 +#: src/create.c:1062 #, fuzzy, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Το αρχείο συρρικνώθηκε σε %s bytes; συμπλήρωση με μηδενικά" msgstr[1] "%s: Το αρχείο συρρικνώθηκε σε %s bytes; συμπλήρωση με μηδενικά" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: το αρχείο είναι σε διαφορετικό σύστημα αρχείων; δεν αποθηκεύτηκε" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Άγνωστος τύπος αρχείου; το αρχείο αγνοήθηκε" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr " σύνδεσμος σε %s\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: δεν μπορεί να τροποποιηθεί το αρχείο; δεν αποθηκεύτηκε" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: το αρχείο είναι η αρχειοθήκη; δεν αποθηκεύτηκε" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: αρχείο τροποποιήθηκε κατά την ανάγνωση" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: η υποδοχή αγνοήθηκε" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: η πόρτα αγνοήθηκε" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Παραλείποντας στην επόμενη επικεφαλίδα" @@ -968,75 +975,75 @@ msgstr "Παραλείποντας στην επόμενη επικεφαλίδ msgid "Deleting non-header from archive" msgstr "Διαγραφή μη-επικεφαλίδων από την αρχειοθήκη" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, fuzzy, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: η ένδειξη χρόνου %s είναι %lu s στο μέλλον" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Μη αναμενόμενη ανακολουθία κατά την δημιουργία του καταλόγου" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Ο κατάλογος μετονομάστηκε πριν η κατάστασή του γίνει μη εξαγώγιμη" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Εξαγωγή συνεχόμενων αρχείων ως κανονικών αρχείων" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Προσπάθεια εξαγωγής των συμβολικών συνδέσμων ως σθεναρών συνδέσμων" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Δεν είναι δυνατή η εξαγωγή -- το αρχείο συνεχίζεται σε άλλο τόμο" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Μη αναμενόμενο EOF (Τέλος Αρχείου) στα κατακερματισμένα ονόματα" -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Άγνωστος τύπος αρχείου '%c', εξαγωγή ως κανονικό αρχείο" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Δεν είναι δυνατή η αποθήκευση αυτού του αρχείου" -#: src/extract.c:1402 +#: src/extract.c:1568 #, fuzzy, c-format msgid "Cannot rename %s to %s" msgstr "%s: Δεν είναι δυνατή η μετονομασία σε %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Ο κατάλογος έχει μετονομαστεί" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Ο κατάλογος έχει μετονομαστεί" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Ο κατάλογος είναι καινούριος" @@ -1148,35 +1155,35 @@ msgstr "%s: Διαγραφή %s\n" msgid "%s: Cannot remove" msgstr "%s: Δεν είναι δυνατή η απομάκρυνση" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Παράλειψη" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "μπλοκ %s: ** Μπλοκ με χαρακτήρες NUL **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "μπλοκ %s: ** Τέλος Αρχείου **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "μπλοκ %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Κενά στην επικεφαλίδα ενώ αναμενόταν αριθμητική τιμή %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1184,140 +1191,142 @@ msgstr "" "συμπληρώματα" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Αρχειοθήκη οκταδικής τιμής %.*s είναι εκτός του %s εύρους" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Η αρχειοθήκη περιέχει απαρχαιωμένες επικεφαλίδες κωδικοποίησης base64" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" "Η αρχειοθήκη είναι υπογεγραμμένη με αλφαριθμητικά base-64 %s είναι εκτός του " "%s εύρους" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Η αρχειοθήκη με base-256 τιμές είναι εκτός του %s εύρους" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Η αρχειοθήκη περιέχει %.*s όπου αριθμητικές %s τιμές αναμένονται" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Η τιμή της αρχειοθήκης %s είναι εκτός του %s εύρους %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " σύνδεσμος σε %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " άγνωστος τύπος αρχείου %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Επικεφαλίδα Τόμου--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Συνέχιση στο byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Δημιουργία καταλόγου:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Δεν είναι δυνατή η τροποποίηση του τρέχοντος καταλόγου" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Μετονομασία %s σε %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Δεν είναι δυνατή η μετονομασία σε %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Μετονομασία %s πίσω στο %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Δεν είναι δυνατή η αποθήκευση του τρέχοντος καταλόγου" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Δεν είναι δυνατή η τροποποίηση του τρέχοντος καταλόγου" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Το αρχείο απομακρύνθηκε πριν το διαβάσουμε" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Το αρχείο απομακρύνθηκε πριν το διαβάσουμε" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "θυγατρική διεργασία" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "κανάλι μεταξύ διεργασιών" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Δεν βρέθηκε στην αρχειοθήκη" -#: src/names.c:622 +#: src/names.c:615 #, fuzzy, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Δεν βρέθηκε στην αρχειοθήκη" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Η αρχειοθήκη δεν έχει ετικέτα για ταίριασμα %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1341,7 +1350,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 #, fuzzy msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " @@ -1362,7 +1371,7 @@ msgstr "" "archive.tar με λεπτομέρειες.\n" " %s -xf archive.tar # Εξάγει όλα τα αρχεία από το archive.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 #, fuzzy msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" @@ -1385,80 +1394,80 @@ msgstr "" "διαφορετικά\n" " never, simple πάντα κάνε απλά αντίγραφα\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" -#: src/tar.c:394 +#: src/tar.c:395 #, fuzzy msgid "create a new archive" msgstr "Μη αναμενόμενο EOF (Τέλος Αρχείου) στην αρχειοθήκη" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1466,565 +1475,565 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 #, fuzzy msgid "extract files to standard output" msgstr "Σφάλμα κατά την εγγραφή στην κανονική έξοδο" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" -#: src/tar.c:556 +#: src/tar.c:557 #, fuzzy msgid "create/list/extract multi-volume archive" msgstr "Δεν είναι δυνατή η επαλήθευση πολλαπλών αρχειοθηκών" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" -#: src/tar.c:582 +#: src/tar.c:583 #, fuzzy msgid "Archive format selection:" msgstr "Συγκρουόμενες επιλογές διαμόρφωσης αρχειοθήκης" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Συγκρουόμενες επιλογές συμπίεσης" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" -#: src/tar.c:641 +#: src/tar.c:642 #, fuzzy msgid "change to directory DIR" msgstr "Δεν είναι δυνατή η τροποποίηση του τρέχοντος καταλόγου" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" -#: src/tar.c:682 +#: src/tar.c:683 #, fuzzy msgid "don't strip leading `/'s from file names" msgstr "Απομακρύνονται τα αρχικά `%.*s' από τα ονόματα των μελών" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "Ο τόμος %s δεν ταιριάζει %s" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2032,291 +2041,296 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" +msgstr "Άκυρη κατάσταση δόθηκε σε επιλογή" + +#: src/tar.c:758 +msgid "print file time to its full resolution" msgstr "" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Ίσως δεν καθορίσατε παραπάνω από μία επιλογή `-Acdtrux'" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Συγκρουόμενες επιλογές συμπίεσης" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr " άγνωστος τύπος αρχείου %s\n" -#: src/tar.c:1017 +#: src/tar.c:1020 #, fuzzy msgid "Date sample file not found" msgstr "Το αρχείο ημερομηνίας δεν βρέθηκε" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Αντικατάσταση %s για άγνωστη διαμόρφωση ημερομηνίας %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, fuzzy, c-format msgid "%s: file list already read" msgstr "%s: το αρχείο είναι η αρχειοθήκη; δεν αποθηκεύτηκε" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "%s: το αρχείο είναι η αρχειοθήκη; δεν αποθηκεύτηκε" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Άκυρος συντελεστής ομαδοποίησης" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Άκυρο μέγεθος ταινίας" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Παραπάνω από ένα όριο ημερομηνίας" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Άκυρη ομάδα" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Άκυρη κατάσταση δόθηκε σε επιλογή" -#: src/tar.c:1894 +#: src/tar.c:1912 #, fuzzy msgid "Invalid number" msgstr "Άκυρος αριθμός i-κόμβου" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Άκυρος ιδιοκτήτης" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Άκυρο μέγεθος εγγραφής" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Το μέγεθος της εγγραφής πρέπει να είναι πολλαπλάσιο του %d." -#: src/tar.c:2000 +#: src/tar.c:2019 #, fuzzy msgid "Invalid number of elements" msgstr "Άκυρο μέγεθος ταινίας" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "" "Οι επιλογές `-[0-7][lmh]' δεν υποστηρίζονται από *αυτήν* την εντολή tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Παλιά επιλογή `%c' απαιτεί όρισμα." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 #, fuzzy msgid "Multiple archive files require `-M' option" msgstr "Πολλαπλά αρχεία αρχειοθηκών απαιτούν την επιλογή `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Δεν είναι δυνατός ο συνδυασμός --listed-incremental με --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, fuzzy, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Η ετικέτα του τόμου είναι πολύ μεγάλη (το όριο είναι %lu byte)" msgstr[1] "%s: Η ετικέτα του τόμου είναι πολύ μεγάλη (το όριο είναι %lu byte)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Δεν είναι δυνατή η επαλήθευση πολλαπλών αρχειοθηκών" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Δεν είναι δυνατή η επαλήθευση των συμπιεσμένων αρχειοθηκών" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Δεν είναι δυνατή η χρήση πολλαπλών συμπιεσμένων αρχειοθηκών" -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "Δεν είναι δυνατή η ανανέωση των συμπιεσμένων αρχειοθηκών" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Αρνούμαι δειλά στη δημιουργία μίας κενής αρχειοθήκης" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Οι επιλογές `-Aru' δεν είναι συμβατές με `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Πρέπει να καθορίσεις μία από τις επιλογές `-Acdtrux'" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2328,86 +2342,86 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Το αρχείο συρρικνώθηκε κάτα %s byte" msgstr[1] "%s: Το αρχείο συρρικνώθηκε κάτα %s byte" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Η ένδειξη χρόνου είναι εκτός εύρους" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "" "Η αρχειοθήκη είναι υπογεγραμμένη με αλφαριθμητικά base-64 %s είναι εκτός του " "%s εύρους" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, fuzzy, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Η τιμή της αρχειοθήκης %s είναι εκτός του %s εύρους %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2448,247 +2462,258 @@ msgstr "Εγγραφή σημείου ελέγχου %d" msgid "Read checkpoint %u" msgstr "Ανάγνωση σημείου ελέγχου %d" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Παράγει αρχεία δεδομένων για δοκιμαστική πλατφόρμα GNU tar.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Συγκρουόμενες επιλογές συμπίεσης" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "Σφάλμα κατά την εγγραφή στην κανονική έξοδο" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr "" "\n" "Χρήση: %s [ΕΠΙΛΟΓΉ]...\n" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Άκυρη ένδειξη χρόνου" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Ο αριθμός του i-κόμβου είναι εκτός εύρους" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Άγνωστο σφάλμα συστήματος" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Δεν είναι δυνατό το κλείσιμο" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr " άγνωστος τύπος αρχείου %s\n" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "%s: Δεν είναι δυνατή η αναζήτηση σε %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "%s: Δεν είναι δυνατή η αναζήτηση σε %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, fuzzy, c-format msgid "Command failed with status %d\n" msgstr "Η θυγατρική διεργασία τερματίστηκε με το σήμα %d" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Κατακερματισμένα ονόματα αρχείων--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Δεν είναι δυνατή η αποθήκευση του τρέχοντος καταλόγου" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s: Δεν είναι δυνατή η μετονομασία σε %s" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: παράνομη επιλογή -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Ανάγνωση %s\n" + #, fuzzy #~ msgid "" #~ "\n" @@ -2697,12 +2722,6 @@ msgstr "--Κατακερματισμένα ονόματα αρχείων--\n" #~ "\n" #~ "Αναφορά σφαλμάτων στο .\n" -#~ msgid "Reading %s\n" -#~ msgstr "Ανάγνωση %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Το σφάλμα δεν είναι επανορθώσιμο: τερματισμός τώρα" - #, fuzzy #~ msgid "filter the archive through compress" #~ msgstr "%s: το αρχείο είναι η αρχειοθήκη; δεν αποθηκεύτηκε" @@ -2746,6 +2765,9 @@ msgstr "--Κατακερματισμένα ονόματα αρχείων--\n" #~ msgid "Premature end of file" #~ msgstr "Πρόωρο τέλος αρχείου" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Το σφάλμα δεν είναι επανορθώσιμο: τερματισμός τώρα" + #~ msgid "block size" #~ msgstr "μέγεθος μπλοκ" diff --git a/po/es.gmo b/po/es.gmo index 6fe9ec2a91c23d27505070dc4a0b0d1cdddab40e..69dd005cdd905f1086bc81c63631dbb1e315cfb8 100644 GIT binary patch delta 5717 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 delta 5969 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 Ck-g&p diff --git a/po/es.po b/po/es.po index 202a262..604b1a7 100644 --- a/po/es.po +++ b/po/es.po @@ -4,14 +4,16 @@ # Enrique Melero , 1997. # Santiago Vila Doncel , 1998, 1999, 2000, 2001, 2002, 2004. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: GNU tar 1.15.1\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2004-12-27 20:45+0100\n" "Last-Translator: Santiago Vila Doncel \n" "Language-Team: Spanish \n" +"Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" @@ -104,7 +106,7 @@ msgstr "Pruebe `%s --help' o `%s --usage' para m msgid "Report bugs to %s.\n" msgstr "Comunicar bichos a %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Error del sistema desconocido" @@ -118,8 +120,8 @@ msgstr "Da esta lista de ayuda" msgid "give a short usage message" msgstr "Da un mensaje de uso corto" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NOMBRE" @@ -158,56 +160,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: la opción `%s' es ambigua\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: la opción `--%s' no admite ningún argumento\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: la opción `%c%s' no admite ningún argumento\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: la opción `%s' requiere un argumento\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: opción no reconocida `--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: opción no reconocida `%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: opción inválida -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: la opción requiere un argumento -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: la opción `-W %s' es ambigua\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: la opción `-W %s' no admite ningún argumento\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: la opción `%s' requiere un argumento\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "memoria agotada" @@ -569,95 +576,95 @@ msgstr "No se puede acceder a la posici msgid "Cannot execute remote shell" msgstr "No se puede ejecutar un shell remoto" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Dirección de desplazamiento fuera de rango" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Se ha especificado un modo no válido en la opción" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Marca de tiempo inválida" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Desplazamiento fuera de rango" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Longitud de cinta inválida" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Desplazamiento fuera de rango" # FIXME. Este es el único eof en minúsculas. -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Fin de fichero prematuro\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Modo principal de operación:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Fin de fichero inesperado en el archivo" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "NÚMERO" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FICHERO" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "No se puede abrir %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Orden ininteligible" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Esto no parece un archivo tar" @@ -666,12 +673,12 @@ msgstr "Esto no parece un archivo tar" # "bytes escritos en total" suena demasiado complejo... Nicolás Lichtmaier. # Suena algo extraño eso de "total de bytes". "en total" me suena # mucho más natural. sv -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Bytes escritos en total: %s (%s, %s/s)\n" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" @@ -680,7 +687,7 @@ msgstr "" # "bytes escritos en total" suena demasiado complejo... Nicolás Lichtmaier. # Suena algo extraño eso de "total de bytes". "en total" me suena # mucho más natural. sv -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Bytes escritos en total: %s (%s, %s/s)\n" @@ -699,17 +706,17 @@ msgstr "Bytes escritos en total: %s (%s, %s/s)\n" # aparecer *varias* veces, y entonces sí que es una paliza. # Ejemplo de paliza: "tubería rota" en libc. Sale muchísimo y no es # cuestión de ver (pipe) cuarenta veces al día... -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(tubería)" # ¿No queda más bonita la 1ª comilla abierta así: `record_size'? # Sí. FIXME. Comunicar al autor. sv -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "El valor de `record_size' no es válido" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "No se ha especificado ningún nombre de archivo" @@ -728,69 +735,69 @@ msgstr "No se ha especificado ning # o algo así. Quizá "No se puede verificar un archivo tomado de la entrada # estándar o escrito hacia la salida estándar", pero es un poco largo.. =) # -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "No se puede verificar la entrada/salida estándar" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "El archivo está comprimido. Utilice la opción %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "No se pueden actualizar archivos comprimidos" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Al principio de la cinta, se terminará ahora" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Demasiados errores, abandono" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Tamaño del registro = %lu bloque" msgstr[1] "Tamaño del registro = %lu bloques" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Bloque no alineado (%lu byte) dentro del archivo" msgstr[1] "Bloque no alineado (%lu bytes) dentro del archivo" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "No se puede ir hacia atrás en el archivo; puede ser ilegible sin -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek no paró en los límites de un registro" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: contiene un número de volumen inválido" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Desbordamiento en el número de volumen" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Prepare el volumen #%d para %s y pulse intro: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "" "Se encontró un final de fichero mientras se esperaba respuesta del usuario" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "ATENCIÓN: El archivo está incompleto" @@ -822,7 +829,7 @@ msgstr "ATENCI # A mí aquí me da igual lista que ayuda, de las dos formas se entiende. Manda # el traductor original. gerardo # ¿A alguien más le parece mal que ponga ayuda en vez de lista? sv -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -835,12 +842,12 @@ msgstr "" " ! Lanza un subshell\n" " ? Muestra esta ayuda\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" @@ -851,35 +858,35 @@ msgstr "" # Uno se sale del programa, y éste acaba. En realidad, también da igual, de # cualquier forma se entiende, pero mejor acabar o terminar que finalizar, # total, son sinónimos. gerardo -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "No hay volumen nuevo; finalizando.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, fuzzy, c-format msgid "%s command failed" msgstr "La orden `%s' falló" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s no continúa en este volumen" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s no continúa en este volumen" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s tiene un tamaño erróneo (%s != %s + %s)" @@ -899,7 +906,7 @@ msgstr "%s tiene un tama # él solito. # Todavía espero una solución mágica que sea mejor que las dos # que tenemos hasta ahora. -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Este volumen está fuera de secuencia" @@ -910,17 +917,17 @@ msgstr "Este volumen est # Si no se sabe eso, se podría dejar de forma más neutra como # "Archivo no etiquetado para concordancia con `%s'" - gerardo (gag) # FIXME: Preguntar. -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "El archivo no está etiquetado para que coincida con %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "El volumen %s no coincide con %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, fuzzy, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -932,7 +939,7 @@ msgstr "" # Según gag y jmg, hay que decir: "no está en un límite de bloque", pues # no estamos hablando de un bloque concreto (el bloque) sino de uno cualquiera. # FIXME: Entonces tal vez el original debería decir "on a block boundary". sv -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "El fin del archivo %s no está en un límite de bloque" @@ -944,16 +951,16 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Sólo se pudieron leer %lu de %lu byte" msgstr[1] "Sólo se pudieron leer %lu de %lu bytes" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "El contenido es distinto" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Fin de fichero inesperado en el archivo" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "El tipo de fichero es distinto" @@ -963,7 +970,7 @@ msgstr "El tipo de fichero es distinto" # corresponder siempre una frase corta española, el resultado sonará a indio # completamente (me refiero a los indios esos de las películas del oeste, # que solamente hablan con sustantivos, verbos y adjetivos). sv -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "El modo es distinto" @@ -979,30 +986,30 @@ msgstr "El gid es distinto" msgid "Mod time differs" msgstr "La fecha de modificación es distinta" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "El tamaño es distinto" # Creo que este enlace se efectúa al descomprimir un archivo tar. # No es que nos diga si está enlazado o no lo está, sino si él hace # el enlace o no lo hace. sv -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "No se enlaza a %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "El enlace simbólico es distinto" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "El número de dispositivo es distinto" # "Verifica ". Supongo que depende de si se concatena en algún # mensaje. jmg # FUZZY. Es verdad, habrá que verlo. -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verificar " @@ -1015,66 +1022,66 @@ msgstr "Verificar " # Realmente, dice lo que hace y no lo que ha hecho. sv # FIXME. Decirle al autor que estandarice las comillas: ¿'%c' o `%c'? # De momento lo estandarizo en la traducción. -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "" "%s: Tipo de fichero `%c' desconocido, se toma la diferencia\n" "como fichero normal" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" "El archivo contiene nombres de fichero con los prefijos iniciales eliminados." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Puede que la verificación no encuentre los ficheros originales." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "FALLO DE VERIFICACIÓN: %d cabecera inválida detectada" msgstr[1] "FALLO DE VERIFICACIÓN: %d cabeceras inválidas detectadas" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Un bloque de ceros aislado en %s" -#: src/create.c:68 +#: src/create.c:72 #, fuzzy, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: contiene una marca de directorio caché; no se vuelca" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "valor %s fuera del rango %s %s..%s; se sustituye %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "valor %s fuera del rango %s %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Generando cabeceras octales negativas" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: el nombre del fichero es demasiado largo (máx %d); no se vuelca" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" "%s: el nombre del fichero es demasiado largo (no se puede dividir); no se " "vuelca" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: el nombre del enlace es demasiado largo; no se vuelca" @@ -1087,7 +1094,7 @@ msgstr "%s: el nombre del enlace es demasiado largo; no se vuelca" # Que sí, reconozco que la traducción es un poco libre. # Pero mi intención es que el programa diga lo que va haciendo, no lo que ya # ha hecho. Ni siquiera el original es consistente en los modos verbales. sv -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" @@ -1096,13 +1103,13 @@ msgstr[0] "" msgstr[1] "" "%s: El tamaño del fichero ha disminuido en %s bytes, se rellena con ceros" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: el fichero está en un sistema de ficheros distinto; no se vuelca" # Se vuelca la *memoria* del proceso en un fichero llamado `core'. -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 #, fuzzy msgid "contents not dumped" msgstr " (memoria volcada)" @@ -1123,48 +1130,48 @@ msgstr " (memoria volcada)" # Seguiremos en la ortodoxia, pero aún así, no puedo creerme que venga # en el DRAE. ¿Estás seguro? sv # No, no me compré el DRAE. Pregúntalo a spanglish (si te atreves ;-) gerardo -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Tipo de fichero desconocido; no se tendrá en cuenta" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "Faltan enlaces a '%s'.\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: el fichero no ha cambiado; no se vuelca" # FIXME: Decir al autor que ponga el "itself". sv -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: el fichero es el propio archivo; no se vuelca" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 #, fuzzy msgid "directory not dumped" msgstr "%s: contiene una marca de directorio caché; no se vuelca" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: el fichero cambió mientras se estaba leyendo" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: el `socket' no se tendrá en cuenta" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: no se tendrá en cuenta la puerta" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Saltando a la siguiente cabecera" @@ -1172,22 +1179,22 @@ msgstr "Saltando a la siguiente cabecera" msgid "Deleting non-header from archive" msgstr "Borrando no-cabecera del archivo" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: marca de fecha sospechosamente antigua %s" -#: src/extract.c:229 +#: src/extract.c:295 #, fuzzy, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: la marca de tiempo %s está %lu s en el futuro" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Inconsistencia inesperada al crear el directorio" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "" @@ -1197,7 +1204,7 @@ msgstr "" # ni un dispositivo (de bloques o de caracteres) ni un fifo, etc. # Uno puede pensar que son los ficheros "normales", pero eso depende, # pues un directorio es de lo más "normal"... -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Extrayendo ficheros contiguos como ficheros regulares" @@ -1206,55 +1213,55 @@ msgstr "Extrayendo ficheros contiguos como ficheros regulares" # Es una cuestión todavía no dirimida. # ¿Tienes algún dato más? ¿Qué dicen los libros? sv # Enlaces duros. Lo acabo de mirar en un libro. gag -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Intentando la extracción de enlaces simbólicos como enlaces duros" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: No se puede extraer -- el fichero es continuación de otro volumen" # ¿No se referirá al autor a "mangled filenames"?... jmg # FIXME. Preguntárselo. -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Fin de fichero inesperado en los nombres modificados" # FIXME. Lo de las comillas '%c'. # Como antes, lo estandarizo en la traducción a pesar de todo. -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Tipo de fichero `%c' desconocido, se extrae como fichero normal" -#: src/extract.c:1223 +#: src/extract.c:1379 #, fuzzy, c-format msgid "Current %s is newer or same age" msgstr "El `%s' actual es más reciente" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: No se pudo hacer copia de seguridad de este fichero" -#: src/extract.c:1402 +#: src/extract.c:1568 #, fuzzy, c-format msgid "Cannot rename %s to %s" msgstr "%s: No se puede renombrar a %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: El directorio ha sido renombrado" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: El directorio ha sido renombrado" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: El directorio es nuevo" @@ -1369,35 +1376,35 @@ msgstr "%s: Borrando %s\n" msgid "%s: Cannot remove" msgstr "%s: No se puede borrar" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Se omite" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "bloque %s: ** Bloque de NULos **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "bloque %s: ** Fin de Fichero **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "bloque %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Hay blancos en la cabecera cuando se esperaba el valor numérico %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1405,140 +1412,148 @@ msgstr "" "se supone complemento a dos" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "El valor octal %.*s del archivo está fuera del rango %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "El archivo contiene cabeceras base 64 obsoletas" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "La cadena firmada en base 64 %s del archivo está fuera del rango %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "El valor en base 256 del archivo está fuera del rango %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "El archivo contiene %.*s donde se esperaba el valor numérico %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, fuzzy, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "El valor del archivo %s está fuera del rango %s %s.%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " enlace a %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " tipo de fichero desconocido %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Enlace largo--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Nombre largo--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Cabecera de Volumen--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Continúa en el byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Creando el directorio:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "No se puede cambiar el directorio de trabajo" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Se renombra %s como %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: No se puede renombrar a %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Se vuelve a renombrar %s como %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "No se puede guardar el directorio de trabajo" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "No se puede cambiar el directorio de trabajo" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: El fichero fue borrado antes de leerlo" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: El fichero fue borrado antes de leerlo" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "proceso hijo" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "canal de interproceso" -#: src/names.c:601 +#: src/names.c:594 #, fuzzy msgid "Pattern matching characters used in file names" msgstr "" "los patrones de exclusión encajan con el comienzo del nombre del fichero" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: No se encuentra en el archivo" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: El elemento solicitado no se encuentra en el archivo" -#: src/names.c:894 +# Ojo que esto podría referirse a "is not being labelled NOW" en vez de +# "isn't labelled". Pero no tengo los fuentes para ver la intención +# original. nl +# Si no se sabe eso, se podría dejar de forma más neutra como +# "Archivo no etiquetado para concordancia con `%s'" - gerardo (gag) +# FIXME: Preguntar. +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "El archivo no está etiquetado para que coincida con %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1577,7 +1592,7 @@ msgstr "" # # nil: numeradas... simples... (en plural) # # never, simPle (falta una pe): backup -> copia de seguridad. gag # Estoy de acuerdo con lo de gag (más arriba usas eso mismo). jmg -#: src/tar.c:347 +#: src/tar.c:348 #, fuzzy msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " @@ -1622,7 +1637,7 @@ msgstr "" # # nil: numeradas... simples... (en plural) # # never, simPle (falta una pe): backup -> copia de seguridad. gag # Estoy de acuerdo con lo de gag (más arriba usas eso mismo). jmg -#: src/tar.c:356 +#: src/tar.c:357 #, fuzzy msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" @@ -1653,71 +1668,71 @@ msgstr "" " en otro caso\n" " never, simple siempre hace copias de seguridad simples\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Modo principal de operación:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "lista el contenido de un archivo" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "extrae ficheros de un archivo" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "crea un nuevo archivo" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "encuentra las diferencias entre un archivo y el sistema de ficheros" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "añade ficheros al final de un archivo" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "solamente añade ficheros más recientes que la copia del archivo" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "añade ficheros tar a un archivo" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "borra del archivo (¡no en cintas magnéticas!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Modificadores de operación:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "maneja ficheros dispersos de forma eficiente" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "maneja el formato GNU antiguo de respaldo incremental" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "maneja el nuevo formato GNU de respaldo incremental" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" @@ -1728,11 +1743,11 @@ msgstr "" # # encuentre ficheros ilegibles. (¡Uf! Ahora a ver cómo se pone esto en # # media línea.) gag # -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "no sale con estado distinto de cero cuando hay ficheros ilegibles" -#: src/tar.c:428 +#: src/tar.c:429 #, fuzzy msgid "" "process only the NUMBERth occurrence of each file in the archive; this " @@ -1746,211 +1761,211 @@ msgstr "" "órdenes o con la opción -T. El valor predeterminado de NUM es 1." # Mejor eso que inventarse un palabro, digo yo. sv -#: src/tar.c:434 +#: src/tar.c:435 #, fuzzy msgid "archive is seekable" msgstr "El archivo admite `seek'" # Mejor eso que inventarse un palabro, digo yo. sv -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "El archivo admite `seek'" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "intenta verificar el archivo después de escribirlo" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "borra los ficheros después de añadirlos al archivo" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "no reemplaza ficheros que existan al extraer" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "no reemplaza los ficheros que existan que sean más recientes que sus copias " "en el archivo" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "sobreescribe los ficheros que existan al extraer" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "borra cada fichero antes de extraer sobre él" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "vacía jerarquías antes de extraer directorios" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "conserva los metadatos de los directorios que existan" -#: src/tar.c:466 +#: src/tar.c:467 #, fuzzy msgid "overwrite metadata of existing directories when extracting (default)" msgstr "sobreescribe los ficheros que existan al extraer" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "extrae los ficheros a la salida estándar" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "ORDEN" -#: src/tar.c:477 +#: src/tar.c:478 #, fuzzy msgid "pipe extracted files to another program" msgstr "extrae los ficheros a la salida estándar" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Manejo de los atributos del fichero:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "fuerza NOMBRE como propietario de los ficheros que se añaden" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "fuerza NOMBRE como grupo para los ficheros que se añaden" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "FECHA-O-FICHERO" -#: src/tar.c:493 +#: src/tar.c:494 #, fuzzy msgid "set mtime for added files from DATE-OR-FILE" msgstr "almacena solamente ficheros más recientes que FECHA-O-FICHERO" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "CAMBIOS" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "fuerza CAMBIOS (simbólicos) de modo para los ficheros que se añaden" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "no extrae la fecha de modificación del fichero" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "intenta extraer los ficheros con el mismo propietario" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "extrae los ficheros como usted mismo" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "utiliza siempre números para los nombres de usuarios/grupos" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "ordena los nombres que se extraen para que coincidan con el archivo" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "lo mismo que -p y -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Selección de dispositivo y opciones:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIVO" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "utiliza un archivo o el dispositivo ARCHIVO" -#: src/tar.c:534 +#: src/tar.c:535 #, fuzzy msgid "archive file is local even if it has a colon" msgstr "el archivo es local incluso si tiene dos puntos" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "utiliza la ORDEN rmt dada en vez de rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "utiliza la ORDEN remota en vez de rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "especifica la unidad y la densidad" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "crea/lista/extrae un archivo multivolumen" @@ -1964,38 +1979,38 @@ msgstr "crea/lista/extrae un archivo multivolumen" # x × - gerardo # Efectivamente, pero no es transportable, el que use tar bajo DJGPP # le saldría un churro pues el aspa no existe en la tabla 850. sv -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "cambia la cinta después de escribir NÚMERO x 1024 bytes" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "ejecuta un script al final de cada cinta (implica -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "usa/actualiza el número de volumen en FICHERO" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Bloques en los dispositivos:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOQUES" # Sigo en mis 13 y en esto no hay quien me baje del burro: BLOQUES x 512 bytes # debe ser BLOQUES × 512 bytes. gerardo -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOQUES x 512 bytes por registro" -#: src/tar.c:573 +#: src/tar.c:574 #, fuzzy msgid "NUMBER of bytes per record, multiple of 512" msgstr "TAMAÑO bytes por registro, múltiplo de 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" "no tiene en cuenta los bloques convertidos en ceros dentro de un archivo " @@ -2010,7 +2025,7 @@ msgstr "" # # requetequetequete... (longitud infinita). Pelín ssagerao, ¿no? gag # # Bueno, al final he puesto lo que se ve, un poco menos raro que rebloquear. sv -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "rehace los bloques conforme se lee (para tuberías de 4.2BSD)" @@ -2019,70 +2034,70 @@ msgstr "rehace los bloques conforme se lee (para tuber # salida estándar' no pega mucho. Está en otros mensajes, como el # siguiente; no lo entiendo. - gerardo # FIXME. Tienes razón. Es muy raro. -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Selección del formato de archivo:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMATO" -#: src/tar.c:585 +#: src/tar.c:586 #, fuzzy msgid "create archive of the given format" msgstr "crea un archivo en el formato dado." -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMATO es uno de los siguientes:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "formato tar V7 antiguo" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "formato GNU de tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "formato GNU tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "formato POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "formato POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 #, fuzzy msgid "same as pax" msgstr "Lo mismo que pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "lo mismo que --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "lo mismo que --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 #, fuzzy msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "palabra[[:]=valor][,palabra[[:]=valor], ...]" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "palabras clave de control de pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEXTO" -#: src/tar.c:608 +#: src/tar.c:609 #, fuzzy msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " @@ -2091,63 +2106,63 @@ msgstr "" "crea un archivo con nombre de volumen NOMBRE. En el momento de listar/" "extraer, utiliza TEXTO como patrón expandible" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Opciones de compresión en conflicto" -#: src/tar.c:615 +#: src/tar.c:616 #, fuzzy msgid "use archive suffix to determine the compression program" msgstr "No se puede escribir al programa de compresión" -#: src/tar.c:617 +#: src/tar.c:618 #, fuzzy msgid "do not use archive suffix to determine the compression program" msgstr "No se puede escribir al programa de compresión" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "filtra a través de PROG (debe aceptar -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Selección del fichero local:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "DIR" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "cambia al directorio DIR" -#: src/tar.c:643 +#: src/tar.c:644 #, fuzzy msgid "get names to extract or create from FILE" msgstr "obtiene los nombres que se van a extraer o crear del fichero NOMBRE" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T lee nombres terminados en nulo, desactiva -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" @@ -2156,115 +2171,115 @@ msgstr "" # de expansión de nombres de ficheros, como * y ?, mientras que # el segundo se refiere a expresiones regulares como las de grep, # es decir, ^, $, ., *, etc. -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "PATRÓN" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "excluye ficheros, dados como un PATRÓN" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "excluye los patrones listados en FICHERO" -#: src/tar.c:657 +#: src/tar.c:658 #, fuzzy msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "excluye los directorios que contienen una marca de caché" -#: src/tar.c:660 +#: src/tar.c:661 #, fuzzy msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "excluye los directorios que contienen una marca de caché" -#: src/tar.c:663 +#: src/tar.c:664 #, fuzzy msgid "exclude directories containing CACHEDIR.TAG" msgstr "excluye los directorios que contienen una marca de caché" -#: src/tar.c:665 +#: src/tar.c:666 #, fuzzy msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "excluye los directorios que contienen una marca de caché" -#: src/tar.c:668 +#: src/tar.c:669 #, fuzzy msgid "exclude everything under directories containing FILE" msgstr "excluye los directorios que contienen una marca de caché" -#: src/tar.c:670 +#: src/tar.c:671 #, fuzzy msgid "exclude directories containing FILE" msgstr "excluye los directorios que contienen una marca de caché" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "evita descender automáticamente en los directorios" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "permanece en el sistema de ficheros locales al crear el archivo" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "opera recursivamente sobre los directorios (por omisión)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "no elimina la `/' inicial de los nombres de ficheros" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "NOMBRE-DE-MIEMBRO" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "comienza por el miembro NOMBRE-DE-MIEMBRO dentro del archivo" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "almacena solamente ficheros más recientes que FECHA-O-FICHERO" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "FECHA" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "compara la fecha y hora solamente cuando cambian los datos" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "CONTROL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "se hace un respaldo antes de borrar, escoja el CONTROL de versión" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "CADENA" -#: src/tar.c:697 +#: src/tar.c:698 #, fuzzy msgid "" "backup before removal, override usual suffix ('~' unless overridden by " @@ -2274,105 +2289,105 @@ msgstr "" "que se\n" "cambie con la variable de entorno SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 #, fuzzy msgid "strip NUMBER leading components from file names on extraction" msgstr "elimina NÚMERO componentes iniciales de los nombres de ficheros" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 #, fuzzy msgid "ignore case" msgstr "la exclusión no distingue mayúsculas de minúsculas" -#: src/tar.c:718 +#: src/tar.c:719 #, fuzzy msgid "patterns match file name start" msgstr "" "los patrones de exclusión encajan con el comienzo del nombre del fichero" -#: src/tar.c:720 +#: src/tar.c:721 #, fuzzy msgid "patterns match after any `/' (default for exclusion)" msgstr "los patrones de exclusión encajan después de cualquier / (por omisión)" -#: src/tar.c:722 +#: src/tar.c:723 #, fuzzy msgid "case sensitive matching (default)" msgstr "la exclusión distingue mayúsculas de minúsculas (por omisión)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "los comodines de patrones de exclusión no encajan con '/'" -#: src/tar.c:730 +#: src/tar.c:731 #, fuzzy msgid "wildcards match `/' (default for exclusion)" msgstr "" "los comodines de los patrones de exclusión encajan con '/' (por omisión)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Salida informativa:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "lista los ficheros procesados detalladamente" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 #, fuzzy msgid "display progress messages every NUMBERth record (default 10)" msgstr "muestra mensajes de progreso cada 10 registros" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "muestra un mensaje si no se vuelcan todos los enlaces" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2380,28 +2395,33 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "muestra las fechas de modificación de los ficheros en UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "envía la salida detallada a FICHERO" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "muestra el número de bloque dentro del archivo con cada mensaje" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "pide confirmación para cada acción" -#: src/tar.c:764 +#: src/tar.c:767 #, fuzzy msgid "show tar defaults" msgstr "Muestra los valores predeterminados de tar" -#: src/tar.c:766 +#: src/tar.c:769 #, fuzzy msgid "" "when listing or extracting, list each directory that does not match search " @@ -2410,31 +2430,31 @@ msgstr "" "Cuando se lista o extrae, lista cada directorio que no coincida con el " "criterio de búsqueda" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Opciones de compatibilidad:" -#: src/tar.c:784 +#: src/tar.c:787 #, fuzzy msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" @@ -2443,66 +2463,66 @@ msgstr "" "al crear, lo mismo que --old-archive. Al extraer, lo mismo que --no-same-" "owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Otras opciones:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "No se puede especificar más de una opción `-Acdtrux'" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Opciones de compresión en conflicto" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr " tipo de fichero desconocido %s\n" -#: src/tar.c:1017 +#: src/tar.c:1020 #, fuzzy msgid "Date sample file not found" msgstr "No se encontró la fecha del fichero" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Sustituyendo %s por el formato de fecha desconocido %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, fuzzy, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Se trata la fecha `%s' como %s + %ld nanosegundo" # FIXME: Decir al autor que ponga el "itself". sv -#: src/tar.c:1132 +#: src/tar.c:1135 #, fuzzy, c-format msgid "%s: file list already read" msgstr "%s: el fichero es el propio archivo; no se vuelca" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" # FIXME: Decir al autor que ponga el "itself". sv -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "filtra el arhivo a través de gzip" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2510,15 +2530,15 @@ msgstr "" "\n" "Las opciones predeterminadas de *esta* versión de tar son:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Factor de bloqueo inválido" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Longitud de cinta inválida" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" @@ -2528,109 +2548,109 @@ msgstr "" # Es "umbral", pero no sé qué c$%&# es la fecha umbral. :-( gag # A ver si te vale así. sv # ¿Qué tal os suena "fecha límite"?. jmg -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Se ha especificado más de una fecha tope" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Grupo inválido" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Se ha especificado un modo no válido en la opción" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Número inválido" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Propietario inválido" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "El tamaño del registro es inválido" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "El tamaño del registro debe ser múltiplo de %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Número inválido de elementos" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, fuzzy, c-format msgid "Malformed density argument: %s" msgstr "Argumento de densidad mal formado: '%s'" -#: src/tar.c:2126 +#: src/tar.c:2145 #, fuzzy, c-format msgid "Unknown density: `%c'" msgstr "Densidad desconocida: '%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "*Esta* versión de tar no admite las opciones `-[0-7][lmh]'" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FICHERO]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "La opción antigua `%c' requiere un argumento" -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence no tiene sentido sin una lista de ficheros" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "no se puede usar --occurrence en el modo de operación solicitado" # requieren -> necesitan. gerardo -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Los archivos múltiples requieren la opción `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "No se puede combinar --listed-incremental con --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 #, fuzzy msgid "--level is meaningless without --listed-incremental" msgstr "--occurrence no tiene sentido sin una lista de ficheros" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2639,50 +2659,50 @@ msgstr[0] "" msgstr[1] "" "%s: La etiqueta de volumen es demasiado larga (el límite es %lu bytes)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "No se pueden verificar archivos multivolumen" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "No se pueden verificar archivos comprimidos" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "No se pueden utilizar archivos multivolumen comprimidos" -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "No se pueden actualizar archivos comprimidos" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option solamente se puede usar en archivos POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" # Me gusta más al verrés: cobarde rechazo [de la pradera] a... gerardo -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Rechazo cobarde a crear un archivo vacío" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Las opciones `-Aru' son incompatibles con `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Debe especificar una de las opciones `-Acdtrux'" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2709,88 +2729,88 @@ msgstr[0] "%s: El tama msgstr[1] "%s: El tamaño del fichero ha disminuido en %s bytes" # FIXME: Imlemented -#: src/xheader.c:163 +#: src/xheader.c:164 #, fuzzy, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "La palabra clave %s es desconocida o no está implementada todavía" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Marca de tiempo fuera de rango" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "No se puede usar el patrón %s" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "La palabra clave %s no se puede sustituir" -#: src/xheader.c:541 +#: src/xheader.c:542 #, fuzzy msgid "Malformed extended header: missing length" msgstr "Cabecera extendida errónea: falta un signo igual" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "La cadena firmada en base 64 %s del archivo está fuera del rango %s" -#: src/xheader.c:568 +#: src/xheader.c:569 #, fuzzy msgid "Malformed extended header: missing blank after length" msgstr "" "Cabecera extendida errónea: falta un espacio en blanco después de la longitud" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Cabecera extendida errónea: falta un signo igual" -#: src/xheader.c:582 +#: src/xheader.c:583 #, fuzzy msgid "Malformed extended header: missing newline" msgstr "Cabecera extendida errónea: falta un signo igual" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, fuzzy, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "El valor del archivo %s está fuera del rango %s %s.%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, fuzzy, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Cabecera extendida errónea: falta un signo igual" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, fuzzy, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Cabecera extendida errónea: falta un signo igual" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, fuzzy, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "Cabecera extendida errónea: falta un signo igual" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, fuzzy, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Cabecera extendida errónea: falta un signo igual" @@ -2834,199 +2854,199 @@ msgstr "Punto de comprobaci # Acepto sugerencias para el `test suite'. sv # "test suite"="paquete/conjunto de pruebas/análisis", en cualquier # combinación. jmg -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Genera ficheros de datos para el conjunto de pruebas de GNU tar.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Otras opciones:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 #, fuzzy msgid "Create file of the given SIZE" msgstr "crea un archivo en el formato dado." -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "extrae los ficheros a la salida estándar" -#: tests/genfile.c:134 +#: tests/genfile.c:133 #, fuzzy msgid "Read file names from FILE" msgstr "Leídos %s bytes como %s" -#: tests/genfile.c:136 +#: tests/genfile.c:135 #, fuzzy msgid "-T reads null-terminated names" msgstr "-T lee nombres terminados en nulo, desactiva -C" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 #, fuzzy msgid "Seek to the given offset before writing data" msgstr "intenta verificar el archivo después de escribirlo" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [OPCIÓN...]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 #, fuzzy msgid "Update the access and modification times of FILE" msgstr "%s: No se pueden cambiar las fechas de acceso y modificación" -#: tests/genfile.c:192 +#: tests/genfile.c:191 #, fuzzy msgid "Execute COMMAND" msgstr "ORDEN" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Marca de tiempo inválida" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Número de nodo-i fuera de rango" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Error del sistema desconocido" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, fuzzy, c-format msgid "cannot open `%s'" msgstr "No se puede abrir %s" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "No se puede cerrar" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr " tipo de fichero desconocido %s\n" @@ -3037,54 +3057,65 @@ msgstr " tipo de fichero desconocido %s\n" # ser: "No se puede hacer stat() del fichero %s", o "stat() ha fallado..." # Aunque tal como está es más descriptivo para el neófito, desde # luego. gag -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "No se puede leer el estado del fichero %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "No se puede abrir %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, fuzzy, c-format msgid "Command failed with status %d\n" msgstr "El proceso hijo terminó con la señal %d" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Nombres de fichero modificados--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "No se puede guardar el directorio de trabajo" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s: No se puede renombrar a %s" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: opción ilegal -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Leyendo %s\n" + # Por favor, no me digáis cómo se traduce bug. # Gerardo lo ha visto traducido en un libro como "pulgas", y yo # lo he visto como "chinche" en la "Investigación y Ciencia". @@ -3108,12 +3139,6 @@ msgstr "--Nombres de fichero modificados--\n" #~ "\n" #~ "Comunicar bichos a <%s>.\n" -#~ msgid "Reading %s\n" -#~ msgstr "Leyendo %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "El error no es recuperable: salida ahora" - #~ msgid "filter the archive through bzip2" #~ msgstr "filtra el archivo a través de bzip2" @@ -3165,6 +3190,9 @@ msgstr "--Nombres de fichero modificados--\n" #~ msgid "Premature end of file" #~ msgstr "Fin de fichero prematuro" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "El error no es recuperable: salida ahora" + #~ msgid "block size" #~ msgstr "tamaño del bloque" @@ -3803,8 +3831,8 @@ msgstr "--Nombres de fichero modificados--\n" #~ msgid "%s: Cannot chown to uid %lu gid %lu" #~ msgstr "" -#~ "%s: No se puede cambiar el propietario y grupo con `chown' a uid %lu gid %" -#~ "lu" +#~ "%s: No se puede cambiar el propietario y grupo con `chown' a uid %lu gid " +#~ "%lu" #~ msgid "%s: lseek error at byte %s" #~ msgstr "%s: error de desplazamiento en el byte %s" diff --git a/po/et.gmo b/po/et.gmo index 371ed25dae8ca1c8527b3b7ca3fa4f1f655b1b80..f73d64fec2657f7ec0e4b34929fa4c93b5b94b16 100644 GIT binary patch delta 20431 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%0AHQi6VX5;q9YSTq0c22*z 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 M<=hp!&!-vx3ou$EAOHXW diff --git a/po/et.po b/po/et.po index bc64f8d..3e9457e 100644 --- a/po/et.po +++ b/po/et.po @@ -1,15 +1,18 @@ +# This file is distributed under the same license as the tar package. # Estonian translations for GNU tar. # Copyright (C) 2001 Free Software Foundation, Inc. -# Toomas Soome , 2006. +# Toomas Soome , 2010. # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: GNU tar 1.15.92\n" +"Project-Id-Version: GNU tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2006-10-26 14:45+0300\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-08-11 17:57+0300\n" "Last-Translator: Toomas Soome \n" -"Language-Team: Estonian \n" +"Language-Team: Estonian \n" +"Language: et\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-15\n" "Content-Transfer-Encoding: 8-bit\n" @@ -85,7 +88,7 @@ msgstr "`%s --help' v msgid "Report bugs to %s.\n" msgstr "Teated vigadest saatke palun aadressil %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Tundmatu süsteemi viga" @@ -97,8 +100,8 @@ msgstr "n msgid "give a short usage message" msgstr "näita lühikest kasutamise õpetust" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NIMI" @@ -134,71 +137,76 @@ msgstr "(PROGRAMMI VIGA) V #: gnu/closeout.c:114 msgid "write error" -msgstr "" +msgstr "viga kirjutamisel" -#: gnu/getopt.c:531 gnu/getopt.c:547 -#, fuzzy, c-format +#: gnu/getopt.c:529 gnu/getopt.c:545 +#, c-format msgid "%s: option '%s' is ambiguous\n" -msgstr "%s: võti `%s' on segane\n" +msgstr "%s: võti '%s' on segane\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 -#, fuzzy, c-format +#: gnu/getopt.c:578 gnu/getopt.c:582 +#, c-format msgid "%s: option '--%s' doesn't allow an argument\n" -msgstr "%s: võtmel `--%s' pole argumente\n" +msgstr "%s: võtmel '--%s' pole argumente\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 -#, fuzzy, c-format +#: gnu/getopt.c:591 gnu/getopt.c:596 +#, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" -msgstr "%s: võtmel `%c%s' pole argumente\n" +msgstr "%s: võtmel '%c%s' pole argumente\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 -#, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: võti `%s' nõuab argumenti\n" +#: gnu/getopt.c:639 gnu/getopt.c:658 +#, c-format +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: võti '--%s' nõuab argumenti\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 -#, fuzzy, c-format +#: gnu/getopt.c:696 gnu/getopt.c:699 +#, c-format msgid "%s: unrecognized option '--%s'\n" -msgstr "%s: tundmatu võti `--%s'\n" +msgstr "%s: tundmatu võti '--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 -#, fuzzy, c-format +#: gnu/getopt.c:707 gnu/getopt.c:710 +#, c-format msgid "%s: unrecognized option '%c%s'\n" -msgstr "%s: tundmatu võti `%c%s'\n" +msgstr "%s: tundmatu võti '%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 -#, fuzzy, c-format +#: gnu/getopt.c:759 gnu/getopt.c:762 +#, c-format msgid "%s: invalid option -- '%c'\n" -msgstr "%s: vigane võti -- %c\n" +msgstr "%s: vigane võti -- '%c'\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 -#, fuzzy, c-format +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 +#, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: võti nõuab argumenti -- %c\n" +msgstr "%s: võti nõuab argumenti -- '%c'\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 -#, fuzzy, c-format +#: gnu/getopt.c:885 gnu/getopt.c:901 +#, c-format msgid "%s: option '-W %s' is ambiguous\n" -msgstr "%s: võti `-W %s' on segane\n" +msgstr "%s: võti '-W %s' on segane\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 -#, fuzzy, c-format +#: gnu/getopt.c:925 gnu/getopt.c:943 +#, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" -msgstr "%s: võti `-W %s' ei luba argumenti\n" +msgstr "%s: võti '-W %s' ei luba argumenti\n" + +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: võti '-W %s' nõuab argumenti\n" #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "mälu on otsas" #: gnu/openat-die.c:36 -#, fuzzy, c-format +#, c-format msgid "unable to record current working directory" -msgstr "Ei õnnestu vahetada töökataloogi" +msgstr "ei õnnestu salvestada jooksvat töökataloogi" #: gnu/openat-die.c:54 -#, fuzzy, c-format +#, c-format msgid "failed to return to initial working directory" -msgstr "Töökataloogi ei õnnestu salvestada" +msgstr "algsesse töökataloogi ei õnnestu tagasi minna" #. TRANSLATORS: #. Get translations for open and closing quotation marks. @@ -250,19 +258,19 @@ msgstr "^[eE]" #: gnu/version-etc.c:76 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "" +msgstr "Paketi looja %s (%s)\n" #: gnu/version-etc.c:79 #, c-format msgid "Packaged by %s\n" -msgstr "" +msgstr "Paketi looja %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's #. locale. Otherwise, do not translate "(C)"; leave it as-is. #: gnu/version-etc.c:86 msgid "(C)" -msgstr "" +msgstr "©" #: gnu/version-etc.c:88 msgid "" @@ -273,24 +281,30 @@ msgid "" "There is NO WARRANTY, to the extent permitted by law.\n" "\n" msgstr "" +"\n" +"Litsents GPLv3+: GNU GPL versioon 3 või uuem .\n" +"See on vaba tarkvara: teil on lubatud seda muuta ja levitada.\n" +"GARANTII PUUDUB, vastaval seadusega lubatud piiridele.\n" +"\n" #. TRANSLATORS: %s denotes an author name. #: gnu/version-etc.c:104 #, c-format msgid "Written by %s.\n" -msgstr "" +msgstr "Kirjutanud %s.\n" #. TRANSLATORS: Each %s denotes an author name. #: gnu/version-etc.c:108 #, c-format msgid "Written by %s and %s.\n" -msgstr "" +msgstr "Kirjutanud %s ja %s.\n" #. TRANSLATORS: Each %s denotes an author name. #: gnu/version-etc.c:112 #, c-format msgid "Written by %s, %s, and %s.\n" -msgstr "" +msgstr "Kirjutanud %s, %s ja %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -301,6 +315,8 @@ msgid "" "Written by %s, %s, %s,\n" "and %s.\n" msgstr "" +"Kirjutanud %s, %s, %s,\n" +"ja %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -311,6 +327,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, and %s.\n" msgstr "" +"Kirjutanud %s, %s, %s,\n" +"%s ja %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -321,6 +339,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, and %s.\n" msgstr "" +"Kirjutanud %s, %s, %s,\n" +"%s, %s ja %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -331,6 +351,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, %s, and %s.\n" msgstr "" +"Kirjutanud %s, %s, %s,\n" +"%s, %s, %s ja %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -342,6 +364,9 @@ msgid "" "%s, %s, %s, %s,\n" "and %s.\n" msgstr "" +"Kirjutanud %s, %s, %s,\n" +"%s, %s, %s, %s\n" +"ja %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -353,6 +378,9 @@ msgid "" "%s, %s, %s, %s,\n" "%s, and %s.\n" msgstr "" +"Kirjutanud %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s ja %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -364,38 +392,42 @@ msgid "" "%s, %s, %s, %s,\n" "%s, %s, and others.\n" msgstr "" +"Kirjutanud %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, %s ja teised.\n" #. TRANSLATORS: The placeholder indicates the bug-reporting address #. for this package. Please add _another line_ saying #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: gnu/version-etc.c:247 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Report bugs to: %s\n" -msgstr "Teated vigadest saatke palun aadressil %s.\n" +msgstr "" +"\n" +"Teated vigadest saatke palun aadressil: %s\n" #: gnu/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report %s bugs to: %s\n" -msgstr "" -"\n" -"Teated vigadest saatke palun aadressil <%s>.\n" +msgstr "Teated %s vigadest saatke palun aadressil: %s\n" #: gnu/version-etc.c:253 #, c-format msgid "%s home page: <%s>\n" -msgstr "" +msgstr "%s koduleht: <%s>\n" #: gnu/version-etc.c:255 #, c-format msgid "%s home page: \n" -msgstr "" +msgstr "%s koduleht: \n" #: gnu/version-etc.c:258 msgid "General help using GNU software: \n" msgstr "" +"Üldine abiinfo GNU tarkvara kasutamisest: \n" #. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. #. Directly translating this to another language will not work, first because @@ -502,197 +534,190 @@ msgstr "standard v #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Ei õnnestu luua ühendust masinaga %s: nimelahendus ebaõnnestus" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Ei saa käivitada kaug käsuinterpretaatorit" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Otsimise suund on piiridest väljas" -#: rmt/rmt.c:419 -#, fuzzy +#: rmt/rmt.c:438 msgid "Invalid seek direction" -msgstr "Võtmega anti vigane mood" +msgstr "Vigane seek suund" -#: rmt/rmt.c:427 -#, fuzzy +#: rmt/rmt.c:446 msgid "Invalid seek offset" -msgstr "Vigane suurus: %s" +msgstr "Vigane seek indeks" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Otsimise indeks on piiridest väljas" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 -#, fuzzy +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" -msgstr "Vigane lindi pikkus" +msgstr "Vigane baitide arv" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 -#, fuzzy +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" -msgstr "Otsimise indeks on piiridest väljas" +msgstr "Baitide arv on piiridest väljas" -#: rmt/rmt.c:539 -#, fuzzy +#: rmt/rmt.c:558 msgid "Premature eof" -msgstr "rmtd: Ootamatu faili lõpp\n" +msgstr "Ootamatu faili lõpp" -#: rmt/rmt.c:582 -#, fuzzy +#: rmt/rmt.c:601 msgid "Invalid operation code" -msgstr "Põhiline töö:" +msgstr "Vigane operatsiooni kood" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" -msgstr "" +msgstr "Operatsioon ei ole toetatud" -#: rmt/rmt.c:645 -#, fuzzy +#: rmt/rmt.c:664 msgid "Unexpected arguments" -msgstr "Tükeldatud nimedel ootamatu faililõpp" +msgstr "Ootamatud argumendid" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" -msgstr "" +msgstr "Opereeri lindiseadet, aktsepteerib käske mittelokaalselt protsessilt" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "N" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" -msgstr "" +msgstr "määra silumise tase" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FAIL" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" -msgstr "" +msgstr "sea silumisteadete faili nimi" -#: rmt/rmt.c:696 rmt/rmt.c:764 -#, fuzzy, c-format +#: rmt/rmt.c:715 rmt/rmt.c:783 +#, c-format msgid "cannot open %s" -msgstr "`%s' ei saa avada" +msgstr "%s ei saa avada" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "liiga palju argumente" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Rämpskäsk" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Hmm.... see ei tundu olema tar arhiiv" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Baite kirjutatud kokku" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Baite loetud kokku" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Baite kirjutatud kokku: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(toru)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Kirje suuruse väärtus on vigane" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Arhiivi nime pole" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Ei saa kontrollida sisend/väljund arhiive" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Arhiiv on tihendatud. Kasutage võtit %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Ei saa uuendada pakitud arhiive" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Lindi alguses, lõpetan töö" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Liig palju vigu, jätan töö pooleli" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Kirje suurus = %lu blokki" msgstr[1] "Kirje suurus = %lu blokki" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Joondamata blokk (%lu baiti) arhiivis" msgstr[1] "Joondamata blokk (%lu baiti) arhiivis" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Arhiivi ei õnnestu tagasi kerida; lugemiseks võib olla vajalik kasutada " "võtit -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek ei peatunud kirje piiril" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: sisaldab vigast volüümi numbrit" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Volüümi number on liiga suur" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Otsi volüüm #%d %s'le ja vajuta return klahvi: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "EOF kasutaja vastuse asemel" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "HOIATUS: Arhiiv pole täielik" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -703,65 +728,65 @@ msgstr "" " q Katkesta tar\n" " y või reavahetus Jätka\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Loo alamshell\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Väljasta see info\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Pole uus volüüm; lõpetan töö.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Puudub faili nimi. Proovige uuesti.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Vigane sisend. ? annab abiinfot.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "%s käsklus sai vea" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "võimalik et %s jätkub sellel volüümil: päises on lühendatud nimi" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s ei jätku sellel volüümil" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s on vale suurusega (%s != %s + %s)" -#: src/buffer.c:1326 -#, fuzzy, c-format +#: src/buffer.c:1401 +#, c-format msgid "This volume is out of sequence (%s - %s != %s)" -msgstr "See volüüm on väljaspoolt järjekorda" +msgstr "See volüüm on väljaspoolt järjekorda (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" -msgstr "Arhiivi märgend ei sobi `%s'" +msgstr "Arhiivi märgend ei sobi %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" -msgstr "Volüüm `%s' ei sobi volüümiga `%s'" +msgstr "Volüüm %s ei sobi volüümiga %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -769,10 +794,9 @@ msgstr "" "%s: faili nimi on GNU mitmevolüümi päisesse salvestamiseks liiga pikk, " "lühendan" -#: src/buffer.c:1749 -#, fuzzy +#: src/buffer.c:1794 msgid "write did not end on a block boundary" -msgstr "rmtlseek ei peatunud kirje piiril" +msgstr "kirjutamine ei peatunud bloki piiril" #: src/compare.c:95 #, c-format @@ -781,20 +805,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Sain lugeda ainult %lu baiti (sooviti %lu)" msgstr[1] "Sain lugeda ainult %lu baiti (sooviti %lu)" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Sisu on erinev" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Ootamatu arhiivi lõpp" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Failitüübid on erinevad" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Moodid erinevad" @@ -810,144 +834,143 @@ msgstr "GID on erinevad" msgid "Mod time differs" msgstr "Muutmise ajad erinevad" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Suurused erinevad" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "ei viita %s-le" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Nimeviited erinevad" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Seadme numbrid on erinevad" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Kontroll " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Tundmatu failitüüp '%c', võrdlen tavalise failina" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Arhiiv sisaldab eemaldatud prefiksitega failinimesid." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Kontrollimine ei pruugi leida algseid faile." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "VIGA KONTROLLIMISEL: leiti %d vigast päist" msgstr[1] "VIGA KONTROLLIMISEL: leiti %d vigast päist" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Üksik null blokk kohal %s" -#: src/create.c:68 -#, fuzzy, c-format +#: src/create.c:72 +#, c-format msgid "%s: contains a cache directory tag %s; %s" -msgstr "%s: sisaldab vahemälu kataloogi lipikut; ei salvesta" +msgstr "%s: sisaldab vahemälu kataloogi lipikut %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "väärtus %s on %s piiridest %s..%s väljas; asendan %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "väärtus %s on %s piiridest %s..%s väljas" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Genereerin negatiivsed kaheksand päised" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: faili nimi on liiga pikk (maks. %d); ei salvesta" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: faili nimi on liiga pikk (ei saa poolitada); ei salvesta" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: viite nimi on liiga pikk; ei salvesta" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Fail lühenes %s baiti; täidan nullidega" msgstr[1] "%s: Fail lühenes %s baiti; täidan nullidega" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: fail on teises failisüsteemis; ei salvesta" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" -msgstr "" +msgstr "sisu ei salestata" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Tundmatu failitüüp; ignoreerin seda faili" -#: src/create.c:1472 -#, fuzzy, c-format +#: src/create.c:1527 +#, c-format msgid "Missing links to %s." -msgstr "%s-le puudub viiteid.\n" +msgstr "%s-le puudub viiteid." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: pole muutunud; ei salvesta" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s on arhiiv; ei salvesta" -#: src/create.c:1593 src/incremen.c:583 -#, fuzzy +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" -msgstr "%s: sisaldab vahemälu kataloogi lipikut; ei salvesta" +msgstr "kataloogi ei salvestatud" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: fail muutus lugemisel" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: ignoreerin pesa" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: ignoreerin ust" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Hüppan järgmise päiseni" @@ -955,74 +978,74 @@ msgstr "H msgid "Deleting non-header from archive" msgstr "Kustutan arhiivist mitte-päise" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: ebatõenäoliselt vana ajatempel %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: ajatempel %s on %s sekundit tulevikus" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Ootamatu kooskõlalisuse probleem kataloogi loomisel" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Kataloog nimetati ümber, enne kui sai loetud tema olek" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Taastan jätkuvad failid kui tavalised" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Üritan taastada nimeviiteid viidetena" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Ei saa taastada -- fail jätkub teisel volüümil" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Ootamatu pika nime päis" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Tundmatu failitüüp `%c', taastan tavalise failina" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Olemasolev %s on uuem või sama kuupäevaga" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Selle faili varundamine ebaõnnestus" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "%s ei õnnestu ümber nimetada %s-ks" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Kataloog %s on ümber nimetatud" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Kataloog on ümber nimetatud" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Kataloog on uus" @@ -1132,177 +1155,179 @@ msgstr "%s: Kustutan %s\n" msgid "%s: Cannot remove" msgstr "%s: Ei saa eemaldada" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Jätan vahele" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blokk %s: ** NULlide blokk **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blokk %s: ** Faili lõpp **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blokk %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Tühjad väljad päises kohtadel, kus eeldati numbrit %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" "Arhiivi kaheksandväärtus %.*s on %s piiridest väljas; eeldan kahe täiendit" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Arhiivi kaheksandväärtus %.*s on %s piiridest väljas" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Arhiiv sisaldab aegunuid base-64 päiseid" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Arhiivi märgiga base-64 sõne %s on %s piiridest väljas" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Arhiivi base-256 väärtus on %s piiridest väljas" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Arhiiv sisaldab %.*s, eeldati numbrit %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Arhiivi väärtus %s on %s piiridest %s..%s väljas" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " viide %s-le\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " tundmatu failitüüp %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Pikk viide--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Pikk nimi--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Volüümi päis--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Jätkub baidilt %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Loon kataloogi:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Ei õnnestu vahetada töökataloogi" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Annan %s uueks nimeks %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: ei õnnestu ümber nimetada %s-ks" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Nimetan `%s' tagasi `%s'\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Töökataloogi ei õnnestu salvestada" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Ei õnnestu vahetada töökataloogi" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Fail kustutati enne lugemist" -#: src/misc.c:774 -#, fuzzy, c-format +#: src/misc.c:866 +#, c-format msgid "%s: Directory removed before we read it" -msgstr "%s: Fail kustutati enne lugemist" +msgstr "%s: Kataloog kustutati enne lugemist" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "alamprotsess" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "protsessidevaheline kanal" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "Failide nimedes on jokkersümbolid. Nende kasutamiseks" +msgstr "Failide nimedes on jokkersümbolid" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" -msgstr "kasutage --wildcars, selle teate saab blokeerida võtmega" +msgstr "" +"Jokkerite lubamiseks kasutage --wildcars või --no-wildcards selle teate " +"blokeerimiseks" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Puudub arhiivis" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Nõutud eksemplar puudub arhiivis" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Arhiivi märgend ei sobi" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" -msgstr "" +msgstr "--listed-incremental ei luba faili loendis võtit -C kasutada" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" -msgstr "" +msgstr "Võti --listed-incremental lubab ainult ühte -C kasutamist" #: src/tar.c:81 #, c-format @@ -1325,7 +1350,7 @@ msgid "" msgstr "" "Tundmatu kvootimise stiil `%s'. Loendi saate käsuga `%s --quoting-style=help'" -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1343,7 +1368,7 @@ msgstr "" " tar -tvf arhiiv.tar # Anna arhiiv.tar sisust täielik ülevaade.\n" " tar -xf arhiiv.tar # Taasta kõik failid arhiivist arhiiv.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1363,79 +1388,79 @@ msgstr "" " nil, existing nummerdatud kui koopiad on nummerdatud, muidu lihtne\n" " never, simple tee ainult lihtne koopia\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Põhiline töö:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "näita arhiivi sisukorda" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "taasta failid arhiivist" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "loo uus arhiiv" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "otsi arhiivi ja failisüsteemi erinevusi" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "lisa failid arhiivi lõppu" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "lisa arhiivi ainult failid uuemad kui arhiivis" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "lisa tar failid arhiivi" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "kustuta arhiivist (mitte magnetlindilt!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "testi arhiivi volüümi märgendit ja lõpeta töö" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Töö täpsustamine:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "tööta aukudega failidega efektiivsemalt" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "PÕHI[.ALAM]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "määra aukudega faili vormingu versioon (eeldab võtit --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "käsitle vana GNU vormingus inkrementaalset koopiat" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "käsitle uue GNU vormingu inkrementaalset koopiat" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" -msgstr "" +msgstr "loodud listed-incremental arhiivi dump tase" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "ära lõpeta loetamatute failide korral veakoodiga" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1448,120 +1473,120 @@ msgstr "" "antud\n" "käsureal või võtmega -T. Vaikimisi N on 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "arhiiv on positsioneeritav" -#: src/tar.c:436 -#, fuzzy +#: src/tar.c:437 msgid "archive is not seekable" -msgstr "arhiiv on positsioneeritav" +msgstr "arhiiv ei ole positsioneeritav" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" -msgstr "" +msgstr "inkrementaalsete arhiivide loomisel ära kontrolli seadmete numbreid" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" +"inkrementaalsete arhiivide loomisel kontrolli seadmete numbreid (vaikimisi)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Ülekirjutamise juhtimine:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "kontrolli arhiivi peale arhiivi kirjutamist" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "kustuta failid peale arhiveerimist" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "olemasolevaid faile taastamisel üle ei kirjuta" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "ära kirjuta üle olemasolevaid faile, mis on uuemad kui arhiveeritud" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "kirjuta olemasolevad failid üle" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "kustuta fail enne taastamist" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "kustuta hierarhia enne kataloogi taastamist" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "säilita olemasolevate kataloogide metainfo" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "taastamisel kirjuta olemasolevate kataloogide metainfo üle (vaikimisi)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Vali väljundvoog:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "taasta failid standardväljundisse" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "KÄSK" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "taasta failid läbi toru teise programmi" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "ignoreeri alamprotsesside lõpetamise koode" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "käsitle alamprotsesside nullist erinevaid lõpetamise koode veana" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Faili atribuutide käsitlemine:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "kasuta NIMEe kui lisatud failide omanikku" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "kasuta NIMEe kui lisatud failide gruppi" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "KUUP-VÕI-FAIL" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "sea lisatud failide muutmise ajaks KUUP-VÕI-FAIL" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "MUUTUSED" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "kasuta lisatud failidel sümbol moodi MUUTUSED" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "MEETOD" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1571,31 +1596,31 @@ msgstr "" "lugemist (METHOD='replace'; vaikimisi) või ei muuda kasutamise aega üldse " "(METHOD='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "ära taasta faili muutmise aega" -#: src/tar.c:504 -#, fuzzy +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" -msgstr "säilita taastamisel failide omanikud" +msgstr "" +"ürita failide taastamisel säilitada failide omanikud arhiivis (root " +"kasutajal vaikimisi)" -#: src/tar.c:506 -#, fuzzy +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" -msgstr "taasta failid enda õigustes" +msgstr "taasta failid enda õigustes (tavakasutajatel vaikimisi)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "kasuta kasutaja/grupp numbreid" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "taasta ka info failide õigustest (vaikimisi superkasutaja korral)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1603,154 +1628,153 @@ msgstr "" "õiguste taastamisel kasuta kasutaja umask väärtust (vaikimisi " "tavakasutajatel)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "taasta failid arhiveerimis järjekorras" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "sama, kui -p ja -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "oota muutmise aegade ja õiguste taastamisega taastamise lõpuni" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "katkesta --delay-directory-restore võtme mõju" -#: src/tar.c:529 -#, fuzzy +#: src/tar.c:530 msgid "Device selection and switching:" -msgstr "Seadme valik ja vahetamine:\n" +msgstr "Seadme valik ja vahetamine:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARHIIV" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "kasuta arhiivi faili või seadet ARHIIV" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "arhiivi fail on lokaalne isegi kui sisaldab koolonit" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "kasuta rmt asemel antud käsku" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "kasuta rsh asemel antud käsku" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "määra seade ja tihedus" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "loo/näita/taasta mitme volüümilisi arhiive" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "vaheta peale NUMBER x 1024 baidi kirjutamist linti" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "käivita iga lindi lõpus skript (eeldab võtit -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "kasuta/uuenda volüümi numbrit failis FAIL" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Seadme blokkimine:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOKKE" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOKKE x 512 baiti kirjele" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "NUMBER baiti kirjele, 512 kordne" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "ignoreeri null blokke arhiivis (tähistab EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "bloki lugemisel uuesti (4.2BSD torude jaoks)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Arhiivi vormingu valikud:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "VORMING" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "loo arhiiv antud vormingus" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "VORMING on üks järgnevaist:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "vana V7 tar vorming" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "GNU vorming tar <= 1.12 korral" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU tar 1.13.x vorming" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) vorming" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) vorming" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "sama, kui pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "sama, kui --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "sama, kui --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "võtmesõna[[:]=väärtus][,võtmesõna[[:]=väärtus]...]" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "pax võtmesõnade kasutamine" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEKST" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1758,173 +1782,168 @@ msgstr "" "loo arhiivi volüümi nimega NIMI. Listingu/taastamise ajal kasuta TEKSTi " "otsingumustrina" -#: src/tar.c:613 -#, fuzzy +#: src/tar.c:614 msgid "Compression options:" -msgstr "Konfliktsed pakkimisvõtmed" +msgstr "Tihendamise võtmed:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" -msgstr "" +msgstr "tihendamisprogrammi tuvastamiseks kasuta arhiivi sufiksit" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" -msgstr "" +msgstr "tihendamisprogrammi tuvastamiseks ära kasuta arhiivi sufiksit" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "filtreeri läbi programmi (peab lubama võtit -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Lokaalse faili valik:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "lisa antud FAIL arhiivi (kasulik, kui faili nimi algab kriipsuga)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "KAT" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "mine kataloogi KAT" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "loe taastatavate või varundatavate failide nimed failist NIMI" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T loeb nullidega lõpetatud nimesid, blokeeri -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" -msgstr "" +msgstr "blokeeri eelmise --null võtme mõju" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "eemalda -T võtmega loetud failinimedest kvootimissümbolid (vaikimisi)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "ära eemalda -T võtmega loetud failinimedest kvootimissümboleid" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "MUSTER" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "MUSTRI järgi välistatud failid" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "välistavad mustrid on FAILIS" -#: src/tar.c:657 -#, fuzzy +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" -msgstr "välista kataloogid, mis on märgitud vahemälu jaoks" +msgstr "" +"välista kataloogide, mis sisaldavad CACHEDIR.TAG, sisu, välja arvatud " +"märgendi fail ise" -#: src/tar.c:660 -#, fuzzy +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" -msgstr "välista kataloogid, mis on märgitud vahemälu jaoks" +msgstr "välista kõik kataloogis, mis sisaldab CACHEDIR.TAG" -#: src/tar.c:663 -#, fuzzy +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" -msgstr "välista kataloogid, mis on märgitud vahemälu jaoks" +msgstr "välista kataloogid, mis sisaldavad CACHEDIR.TAG" -#: src/tar.c:665 -#, fuzzy +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" -msgstr "välista kataloogid, mis on märgitud vahemälu jaoks" +msgstr "" +"välista kataloogide, mis sisaldavad faili FAIL, sisu, välja arvatud FAIL ise" -#: src/tar.c:668 -#, fuzzy +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" -msgstr "välista kataloogid, mis on märgitud vahemälu jaoks" +msgstr "välista kataloogid, mis sisaldavad faili FAIL" -#: src/tar.c:670 -#, fuzzy +#: src/tar.c:671 msgid "exclude directories containing FILE" -msgstr "välista kataloogid, mis on märgitud vahemälu jaoks" +msgstr "välista kataloogid, mis sisaldavad faili FAIL" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" -msgstr "" +msgstr "välista versiooni kontrolli süsteemi kataloogid" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" -msgstr "" +msgstr "välista varukoopiad ja lukufailid" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "ära sisene kataloogidesse" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "püsi arhiivi loomise ajal kohalikus failisüsteemis" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "sisene kataloogidesse (vaikimisi)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "ära eemalda faili nimedelt prefiksit `/'" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "järgi nimeviiteid; arhiveeri ja taasta viidatavad failid" -#: src/tar.c:686 -#, fuzzy +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" -msgstr "järgi nimeviiteid; arhiveeri ja taasta viidatavad failid" +msgstr "järgi viiteid; arhiveeri ja taasta viidatavad failid" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "KOMPONENT" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "alusta arhiivi liikmest KOMPONENT" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "salvesta ainult failid mis on uuemad kui KUUP-VÕI-FAIL" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "KUUPÄEV" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "võrdle kuupäevi ainult kui andmed on muutunud" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "KONTROLL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "loo enne eemaldamist varukoopia, vali versioonikontroll" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "SÕNE" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1932,96 +1951,95 @@ msgstr "" "varunda enne kustutamist, kasuta uut lõppu (vaikimisi '~', kui pole üle " "määratud keskkonnamuutujaga SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Failide nimede muutmine:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "eemalda taastamisel failide nimede algusest NUMBER komponenti" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "AVALDIS" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "kasuta failide nimede muutmiseks sed asendus avaldist" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "Failinimede otsimine (mõjutab nii kaasamist, kui välistamist):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "tõstutundetu" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "mustrid alustavad faili nime algusest" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "mustrid toimivad iga / järel (välistamise korral vaikimisi)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "tõstutundlik otsimine (vaikimisi)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "kasuta jokkersümboleid (välistamise korral vaikimisi)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "täht-täheline sõne otsimine" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "jokkerid ei leia '/'" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "jokkersümbolid leiavad '/' (välistamise korral vaikimisi)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Informatsioon:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "väljasta töödeldavate failide kohta infot" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" -msgstr "" +msgstr "VÕTMESÕNA" -#: src/tar.c:740 -#, fuzzy +#: src/tar.c:741 msgid "warning control" -msgstr "Ülekirjutamise juhtimine:" +msgstr "hoiatuste juhtimine" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "anna töö kohta infot iga NUMBER kirje järel (vaikimisi 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" -msgstr "" +msgstr "TEGEVUS" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" -msgstr "" +msgstr "käivita tegevus igas kontrollpunktis" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "väljasta teade, kui kõike viiteid pole salvestatud" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SIGNAAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2032,27 +2050,31 @@ msgstr "" "väljasta see info, kui saadetakse antud signaal. Lubatud signaalid on: " "SIGHUP, SIGQUIT, SIGINT, SIGUSR1 ja SIGUSR2; SIG prefiksi võib ära jätta" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "väljasta failide muutmise ajad UTC esituses" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "väljasta faili aeg täielikult" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "salvesta täiendav info FAILi" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "näita iga teatega ka arhiivi bloki numbrit" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "küsi iga tegevuse kohta kinnitust" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "näita tar vaikeseadeid" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2060,94 +2082,93 @@ msgstr "" "listingu või taastamise ajal, näita igat kataloogi mis ei vasta " "otsingutingimustele" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "peale teisendamist näita faili või arhiivi nime" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STIIL" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "määra nimede kvootimise stiil; lubatud väärtused on toodud allpool" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "lisaks kvoodi sõnes näidatud sümbolid" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "keela sõnes toodud sümbolite kvootimine" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Ühilduvuse võtmed:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "loomisel sama kui --old-archive. Taastamisel sama kui --no-same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Muud võtmed:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "blokeeri potentsiaalselt ohtlikud võtmed" -#: src/tar.c:927 -#, fuzzy +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" -msgstr "Korraga ainult üks võtmetest `-Acdtrux'" +msgstr "" +"Korraga võib kasutada ainult ühte võtmetest `-Acdtrux' või `--test-label'" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Konfliktsed pakkimisvõtmed" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Tundmatu signaali nimi: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Kuupäeva fail puudub" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Kasutan %s tundmatu ajaformaadi %s asemel" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Võti %s: Käsitlen aega `%s' kui %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: failide nimekiri on juba loetud" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: loetud faili nimi sisaldab sümbolit nul" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 -#, fuzzy, c-format +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 +#, c-format msgid "filter the archive through %s" -msgstr "filtreeri arhiiv läbi gzipi" +msgstr "filtreeri arhiiv läbi %s" -#: src/tar.c:1290 -#, fuzzy +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "Võtmega --quoting-style on lubatud järgnevad argumendid:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2155,172 +2176,170 @@ msgstr "" "\n" "*See* tar kasutab vaikimisi:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Vigane blokkimisfaktor" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Vigane lindi pikkus" -#: src/tar.c:1511 -#, fuzzy +#: src/tar.c:1529 msgid "Invalid incremental level value" -msgstr "Inkrementaalse faili vorming on vigane" +msgstr "Inkrementaalse varunduse taseme väärtus on vigane" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Rohkem kui üks etteantud aeg" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Vigane aukudega faili versiooni väärtus" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' ei ole sellel platvormil toetatud" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "--checkpoint väärtus ei ole täisarv" -#: src/tar.c:1830 -#, fuzzy +#: src/tar.c:1848 msgid "Invalid group" -msgstr "%s: Vigane grupp" +msgstr "Vigane grupp" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Võtmega anti vigane mood" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Vigane number" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Vigane omanik" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" +"Võti --preserve on mittesoovitatav, kasutage --preserve-permissions --" +"preserve-order" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Vigane kirje suurus" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Kirje suurus peab olema %d kordne." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Vigane elementide arv" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Lubatud on ainult üks --to-command võti" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Vigane tiheduse argument: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Tundmatu tihedus: `%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "*See* tar ei toeta võtmeid `-[0-7][lmh]'" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FAIL]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Vana võti `%c' nõuab argumenti." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence ei oma failide nimekirjata mõtet" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence ei saa valitud tööre¸iimil kasutada" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Mitme arhiivifaili kasutamine nõuab võtit `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "--listed-incremental ja --newer ei saa koos kasutada" -#: src/tar.c:2387 -#, fuzzy +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" -msgstr "--occurrence ei oma failide nimekirjata mõtet" +msgstr "--level ei oma võtmeta --listed-incremental mõtet" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Volüümi märgend on liiga pikk (piirang on %lu baiti)" msgstr[1] "%s: Volüümi märgend on liiga pikk (piirang on %lu baiti)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Ei suuda kontrollida mitme volüümilisi arhiive" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Ei saa kontrollida pakitud arhiive" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Ei saa kasutada mitme volüümilisi pakitud arhiive" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Tihendatud arhiive ei saa ühendada" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option saab kasutada ainult POSIX arhiividega" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" -msgstr "" +msgstr "Volüümi suurus ei saa olla väiksem kirje suurusest" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" -msgstr "" +msgstr "--preserve-order ei ole ühilduv võtmega --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Ega ikka ei tee küll tühja arhiivi" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Võtmeid `-Aru' ei saa kasutada võtmega `-f -'" -#: src/tar.c:2592 -#, fuzzy +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" -msgstr "Peab kasutama vähemalt üht võtmetest `-Acdtrux'" +msgstr "Peab kasutama üht võtmetest `-Acdtrux' või `--test-label'" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" -msgstr "" +msgstr "Kuna eelnevalt oli vigu, siis lõpetan veakoodiga" #: src/update.c:86 #, c-format @@ -2329,105 +2348,104 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Fail on %s baiti lühem" msgstr[1] "%s: Fail on %s baiti lühem" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Võtmesõna %s on tundmatu või pole veel realiseeritud" -#: src/xheader.c:173 -#, fuzzy +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" -msgstr "Number on piiridest väljas: %s" +msgstr "Ajatempel on piiridest väljas" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Mustrit %s ei saa kasutada" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Võtmesõna %s ei saa ümber määrata" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Vigane laiendatud päis: puudub pikkus" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Laiendatud päise pikkus on piiridest väljas" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Laiendatud päise pikkus %*s on piiridest väljas" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Vigane laiendatud päis: pikkuse järel puudub tühik" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Vigane laiendatud päis: puudub võrdusmärk" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Vigane laiendatud päis: puudub reavahetus" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Ignoreerin tundmatud laiendatud päise võtmesõna `%s'" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "Genereeritud võti/väärtus paar on liiga pikk (võti=%s, pikkus=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Laiendatud päis %s=%s on piiridest %s..%s väljas" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Vigane laiendatud päis: %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Vigane laiendatud päis: liigne %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "Vigane laiendatud päis: vigane %s: ootamatu eraldaja %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Vigane laiendatud päis: vigane %s: veider arv väärtuseid" #: src/checkpoint.c:107 -#, fuzzy, c-format +#, c-format msgid "%s: not a valid timeout" -msgstr "%s: Vigane grupp" +msgstr "%s: ei ole korrektne taimout" #: src/checkpoint.c:112 #, c-format msgid "%s: unknown checkpoint action" -msgstr "" +msgstr "%s: tundmatu kontrollpunkti tegevus" #: src/checkpoint.c:132 msgid "write" -msgstr "" +msgstr "kirjutamine" #: src/checkpoint.c:132 msgid "read" -msgstr "" +msgstr "lugemine" #. TRANSLATORS: This is a ``checkpoint of write operation'', #. *not* ``Writing a checkpoint''. @@ -2447,7 +2465,7 @@ msgstr "Kirjutamise kontrollpunkt %u" msgid "Read checkpoint %u" msgstr "Lugemise kontrollpunkt %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2455,90 +2473,87 @@ msgstr "" "genfile manipuleerib GNU paxutils testipaketi andmefailidega.\n" "VÕTMED on:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Faili loomise võtmed:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "SUURUS" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Loo määratud suurusega fail" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Kirjuta standardväljundi asemel faili NIMI" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Loe failide nimed failist FAIL" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T loeb nullidega lõpetatud nimesid" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "Täida fail antud mustriga. Muster on 'default' või 'zeros'" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Bloki suurus aukudega faili korral" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "Loo aukudega fail. Järgnev käsurida kirjeldab faili." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" -msgstr "" +msgstr "INDEKS" -#: tests/genfile.c:146 -#, fuzzy +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" -msgstr "kontrolli arhiivi peale arhiivi kirjutamist" +msgstr "Enne kirjutamist liigu antud indeksile" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Statistika faili kohta:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "Väljasta iga faili kohta stat struktuuri sisu. Vaikimisi VORMING on: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Sünkroonse täitmise võtmed:" -#: tests/genfile.c:164 -#, fuzzy +#: tests/genfile.c:163 msgid "OPTION" -msgstr " [VÕTI...]" +msgstr "VÕTI" -#: tests/genfile.c:165 -#, fuzzy +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" "Täida antud KÄSKLUS. Kasulik võtmetega --checkpoint ja --cut, --append, --" -"touch" +"touch, --unlink" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "Jõudes kontrollpunkti NUMBER, täida antud tegevus (vt. allpool)" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Määra järgmise --touch võtme ajatempel" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Esita täidetud kontrollpunktid ja käsu lõpetamise olek" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2546,248 +2561,147 @@ msgstr "" "Sünkroonse täitmise tegevused. Neid täidetakse, kui saabub --checkpoint " "võtmega määratud kontrollpunkt." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" "Sea faili suuruseks --length võtmega näidatu (või 0, kui suurust ei antud)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "Lisa faili lõppu --length parameetriga näidatud arv baite." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Uuenda faili kasutamise ja muutmise ajatempleid" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Käivita KÄSK" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" -msgstr "" +msgstr "Kustuta FAIL" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Vigane suurus: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Number on piiridest väljas: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Negatiivne suurus: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) ebaõnnestus" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" -msgstr "" +msgstr "küsitud faili pikkus %lu, tegelik %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" -msgstr "" +msgstr "loodud fail pole aukudega" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Viga `%s' juures numbri parsimisel" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Tundmatu kuupäeva vorming" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGUMENDID...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "`%s' ei saa avada" -#: tests/genfile.c:435 -#, fuzzy +#: tests/genfile.c:434 msgid "cannot seek" -msgstr "%s: Ei õnnestu liikuda positsioonile %s" +msgstr "seek ebaõnnestus" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "faili nimi sisaldab null sümbolit" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "standard väljundis ei saa aukudega faili luua, kasutage võtit --file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "vigane mask (`%s' lähedal)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Tundmatu väli `%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "ei õnnestu seada `%s' aega" -#: tests/genfile.c:700 -#, fuzzy, c-format +#: tests/genfile.c:699 +#, c-format msgid "cannot unlink `%s'" -msgstr "`%s' ei saa avada" +msgstr "`%s' ei saa kustutada" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Käsk lõpetas töö edukalt\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Käsk lõpetas veakoodiga %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Käsk katkestati signaaliga %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Käsk peatati signaaliga %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Käsk salvestas mälupildi\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Käsk katkestas\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat nõuab failinimesid" -#~ msgid "%s: illegal option -- %c\n" -#~ msgstr "%s: vigane võti -- %c\n" - -#~ msgid "" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "\n" -#~ "Teated vigadest saatke palun aadressil <%s>.\n" - -#~ msgid "Reading %s\n" -#~ msgstr "Loen %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Ületamatu tõrge: lõpetan töö" - -#~ msgid "suppress this warning." -#~ msgstr "--no-wildcards." - -#~ msgid "filter the archive through bzip2" -#~ msgstr "filtreeri arhiiv läbi bzip2" - -#~ msgid "filter the archive through gzip" -#~ msgstr "filtreeri arhiiv läbi gzipi" - -#~ msgid "filter the archive through compress" -#~ msgstr "filtreeri arhiiv läbi compressi" - -#, fuzzy -#~ msgid "filter the archive through lzma" -#~ msgstr "filtreeri arhiiv läbi gzipi" - -#, fuzzy -#~ msgid "filter the archive through lzop" -#~ msgstr "filtreeri arhiiv läbi gzipi" - -#~ msgid "Input string too long" -#~ msgstr "Sisendi sõne on liiga pikk" - -#~ msgid "Number syntax error" -#~ msgstr "Numbri süntaksi viga" - -#~ msgid "rmtd: Cannot allocate buffer space\n" -#~ msgstr "rmtd: Ei saa võtta buhvritele mälu\n" - -#~ msgid "Cannot allocate buffer space" -#~ msgstr "Buhvritele ei jätku mälu" - -#~ msgid "Try `%s --help' for more information.\n" -#~ msgstr "`%s --help' annab rohkem infot.\n" - -#~ msgid "" -#~ "Usage: %s [OPTION]\n" -#~ "Manipulate a tape drive, accepting commands from a remote process.\n" -#~ "\n" -#~ " --version Output version info.\n" -#~ " --help Output this help.\n" -#~ msgstr "" -#~ "Kasuta: %s [võti]\n" -#~ "Manipuleeri lindiseadmega, lubades käske teistest protsessidest.\n" -#~ "\n" -#~ " --version Väljasta versiooniinfo.\n" -#~ " --help Väljasta abiinfo.\n" - -#~ msgid "Seek offset error" -#~ msgstr "Otsimise indeksi viga" - -#~ msgid "Premature end of file" -#~ msgstr "Ootamatu faili lõpp" - -#~ msgid "block size" -#~ msgstr "bloki suurus" - -#~ msgid "%s: Read error at byte %s, reading %lu byte" -#~ msgid_plural "%s: Read error at byte %s, reading %lu bytes" -#~ msgstr[0] "%s: Lugemisviga baidil %s, loen %lu baiti" -#~ msgstr[1] "%s: Lugemisviga baidil %s, loen %lu baiti" - -#~ msgid "--Mangled file names--\n" -#~ msgstr "--Tükeldatud failinimed--\n" - -#~ msgid "Renamed %s to %s" -#~ msgstr "%s nimetatud %s-ks" - -#~ msgid "%s: Cannot symlink to %s" -#~ msgstr "%s: Ei saa luua %s nimeviidet" - -#~ msgid "Symlinked %s to %s" -#~ msgstr "Loodud %s nimeviide %s" - -#~ msgid "Unknown demangling command %s" -#~ msgstr "Tundmatu kokkusobitamise käsk %s" - -#~ msgid "[.]NUMBER" -#~ msgstr "[.]NUMBER" - -#~ msgid "Warning: the -I option is not supported; perhaps you meant -j or -T?" -#~ msgstr "" -#~ "Hoiatus: võtit -I ei toetata; võibolla te pidasite silmas -j või -T?" - -#~ msgid "Error exit delayed from previous errors" -#~ msgstr "Eelnevad vead ei lõpetanud veel programmi tööd, lõpetan veaga" +#~ msgid "Cannot save working directory" +#~ msgstr "Töökataloogi ei õnnestu salvestada" diff --git a/po/eu.gmo b/po/eu.gmo index 9ff2dd930b1d2d7833e203205e231151808c0720..cb615aa5768720dbc5f7eabecd6262d5bd9ac85e 100644 GIT binary patch delta 7986 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 G4ER4k`ked# delta 8232 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 diff --git a/po/eu.po b/po/eu.po index 9987a8e..8f4348a 100644 --- a/po/eu.po +++ b/po/eu.po @@ -5,14 +5,16 @@ # This file is distributed under the same license as the tar package. # # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar-1.15.91-eu\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2006-12-13 19:52+0100\n" "Last-Translator: Mikel Olasagasti \n" "Language-Team: Basque \n" +"Language: eu\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" @@ -88,7 +90,7 @@ msgstr "`%s --help' edo `%s --usage' saiatu argibide gehiagorako.\n" msgid "Report bugs to %s.\n" msgstr "Arazoen berri %s-en eman.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Sistema errore ezezaguna" @@ -100,8 +102,8 @@ msgstr "laguntza zerrenda hau eman" msgid "give a short usage message" msgstr "erabilera mezu labur bat eman" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "IZENA" @@ -139,56 +141,61 @@ msgstr "(PROGRAMA ERROREA) Aukera ezaguna izan beharko zen!?" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: `%s' aukera anbiguoa da\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: `--%s' aukerak ez du argumenturik onartzen\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: `%c%s' aukerak ez du argumenturik onartzen\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: `%s' aukerak argumentu bat behar du\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: `--%s' aukera ezezaguna\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: `%c%s' aukera ezezaguna\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: -- %c ekintza baliogabea\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: aukerak -- %c argumentu bat behar du.\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: `-W %s' aukera anbiguoa da\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: `-W %s' aukerak ez du argumenturik onartzen\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: `%s' aukerak argumentu bat behar du\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "memoria askieza" @@ -512,188 +519,188 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Ezin da urruneko shell-a abiarazi" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Seek norabidea eremuz kanpo" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Modu baliogabea eman da aukeran" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Tamaina baliogabea: %s" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Seek offset-a eremuz kanpo" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Zinta luzera baliogabea" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Seek offset-a eremuz kanpo" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Fitxategi amaiera azkarregia\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Ekintza nagusi modua:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Fitxategi Amaiera Esperogabea" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "ZENBAKIA" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FITXATEGIA" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "Ezin da `%s' ireki" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "argumentu gehiegi" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Zabor komandoa" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Honek ez dirudi tar pakete bat" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Idatziriko byte-ak guztira" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Irakurritako byte-ak guztira" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Ezabaturiko byte-ak guztira: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(tutua)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "balio baliogabea record_size-rentzat" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Ez da fitxategi izenik eman" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Ezin da sarrera/irteera estandar fitxategia egiaztatu" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Fitxategia konprimiturik dago. %s aukera erabili" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Ezin dira konprimituriko fitxategiak eguneratu" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Zintaren hasieran, uzten" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Errore gehiegi, uzten" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Grabazio tamaina = bloke %lu" msgstr[1] "Grabazio tamaina = %lu bloke" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Alineatu gabeko blokea (byte %lu) paketean" msgstr[1] "Alineatu gabeko blokea (%lu byte) paketean" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: bolumen zenbaki baliogabea du" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Bolumen zenbaki gainezkatzea" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "#%d bolumena %s -rako prestatu eta enter sakatu: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Fitxategi amaiera erabiltzaile erantzuna espero zenean" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "Oharra: Paketea ez dago osaturik" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -704,72 +711,72 @@ msgstr "" " q tar utzi\n" " y edo intro Ekintza jarraitu\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Azpishell bat sortu\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Zerrenda hau inprimatu\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Ez dago bolumen berririk; uzten.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Ez da fitxategi izenik ezarri. Berriz saiatu.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "SArrera baliogabea. ? idatzi laguntzarako.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "%s komandoak huts egin du" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s posibleki bolumen honen jarraipena da: buruak mozturiko izena du" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s ez da bolumen honen jarraipena" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s okerreko tamaina da (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Bolumen hau sekuentziatik kanpo dago" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "%s bolumena ez da %s-ren pareko" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" "%s: fitxategi izen luzeegia GNU bolumen anitzeko buruan gordetzeko, mozturik" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "" @@ -780,20 +787,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "%lu byte bakarrik irakurri daiteke %lu byte-tatik" msgstr[1] "%lu byte bakarrik irakurri daiteke %lu byte-tatik" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Eduki ezberdintasunak" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Esperogabeko Fitxategi amaiaera paketean" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Fixtategi mota ezberdinak" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Modu ezberdinak" @@ -809,144 +816,144 @@ msgstr "Gid ezberdinak" msgid "Mod time differs" msgstr "Eraldaketa data ezberdinak" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Tamaina ezberdinak" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Ez dago %s-ra loturik" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Lotura sinboliko ezberdinak" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Gailu zenbaki ezberdinak" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Egiaztatu " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: `%c' fitxategi mota ezezaguna, fitxategi arrunt batez ezberdina" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Egiaztapenak huts egin dezake jatorrizko fitxategiak kokatzerakoan." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "EGIAZTAPEN AKATSA: buru baliogabe %d aurkitu da" msgstr[1] "EGIAZTAPEN AKATSA: %d buru baliogabe aurkitu dira" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, fuzzy, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: katxe direktorioa marka bat du; ez da irauliko" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "%s eremua %s eremutik %s..%s kanpo: %s aldatzen" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "%s balioa %s eremutik %s..%s kanpo dago" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Zortzitar buru negatiboak sortzen" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: fitxategi izena luzeegia da (gehi. %d); ez da irauliko" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: fitxategi izena luzeegia da (ezin da moztu); ez da irauliko" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: lotura izena luzeegia da; ez da irauliko" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "" msgstr[1] "" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: fitxategia fitxategi sistema ezberdin batetan dago, ez da irauliko" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Fitxategi mota ezezaguna; fitxategia alde batetara utziko da" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "%s-ra lotura falta da.\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: fitxategia ez da aldatu, ez da irauliko" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: fitxategia paketea da, ez da irauliko" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 #, fuzzy msgid "directory not dumped" msgstr "%s: katxe direktorioa marka bat du; ez da irauliko" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: fitxategia aldatu egin da irakurtzen ari zenean" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: socket-a alde batetara utzi da" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: atea alde batetara utzia" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Hurrengoa burura salto egiten" @@ -954,75 +961,75 @@ msgstr "Hurrengoa burura salto egiten" msgid "Deleting non-header from archive" msgstr "paketetik burugabea ezabatzen" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: Sinesgarri izateko zaharregia den denbora marka %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: %s denbora marka %s etorkizunean da" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Esperogabeko inkonsistentziak direktorioa sortzerakoan" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Direktorioa bere egoera atera aurretik berrizendatua izan da" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Alboko fitxategiak fitxategi erregularrak bezala ateratzen" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Lotura sinbolikoak lotura gogor bezala ateratzen saiatzen" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Ezin da atera -- paketea beste bolumen baten jarraipena da" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Buru izen luzera esperogabea" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "" "%s: `%c' fitxategi mota ezezaguna, fitxategi arrunt bat bezala ateratzen" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Unekoa %s berriagoa edo data berdinekoa da" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Ez da gai fitxategi honen babeskopia egiteko" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Ezin da %s %s-ra berrizendatu" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Direktorioa %s-tik berrizendatua izan da" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Direktorioa berrizendatua izan da" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Direktorioa berria da" @@ -1137,35 +1144,35 @@ msgstr "%s: %s ezabatzen\n" msgid "%s: Cannot remove" msgstr "%s: Ezin da ezabatu" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Alde batetara uzten" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "%s blokea: ** Fitxategi Amaiera **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "%s blokea: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Zuriunea buruan zenbakizko %s balioa espero zenean" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1173,138 +1180,140 @@ msgstr "" "direla pentsatuko da" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Paketearen zortzitar %.*s balioa %s eremutik kanpo dago" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Paketeak zaharkituriko base-64 buruak ditu" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Paketeak %.*s du zenbakizko %s balioa espero zenean " #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Pakete %s balioa %s eremutik kanpo dago %s.. %s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " %s-ra lotu\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " %s fitxategi mota ezezaguna\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Lotura Luzea--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Izen Luzea--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Bolumen Burua--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--%s byte-an jarraitzen du--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Direktorioa sortzen:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Ezin da lan direktorioa aldatu" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "%s %s-ra berrizendatzen\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Ezin da %s-ra berrizendatu" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "%s %s-ra atzera berrizendatzen\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Ezin da lan direktorioa gorde" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Ezin da lan direktorioa aldatu" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Fitxategia irakurri baino lehen ezabaturik" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Fitxategia irakurri baino lehen ezabaturik" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "ume prozesua" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "prozesu arteko kanala" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Ez da paketean aurkitu" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1330,7 +1339,7 @@ msgstr "" "`%s' markatze estilo ezezaguna. Saiatu `%s --quoting-style=help' zerrenda " "eskuratzeko." -#: src/tar.c:347 +#: src/tar.c:348 #, fuzzy msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " @@ -1361,7 +1370,7 @@ msgstr "" "erabili\n" " never, simple beti babeskopia sinpleak egin\n" -#: src/tar.c:356 +#: src/tar.c:357 #, fuzzy msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" @@ -1393,80 +1402,80 @@ msgstr "" "erabili\n" " never, simple beti babeskopia sinpleak egin\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Ekintza nagusi modua:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "pakete baten edukiak zerrendatu" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "pakete batetako fitxategiak atera" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "pakete berri bat sortu" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "paketea eta fitxategi sistema arteko ezberdintasunak bilatu" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "fitxategiak paketearen amaieran gehitu" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" "paketean dauden kopiak baino berriagoak diren fitxategiak bakarrik gehitu" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "gehitu tar fitxategiak pakete batetara" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "paketetik ezabatu (ez mag zintetan!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "pakete bolumen etiketa egiaztatu eta irten" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Ekintza aldagaiak:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "sakabanatutako fitxategiak egoki kudeatu" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "GNU basbeskopia inkremenetal formatu zaharra kudeatu" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "GNU basbeskopia inkremenetal formatu berria kudeatu" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1474,156 +1483,156 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "paketeak `seek' onartzen du" -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "paketeak `seek' onartzen du" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 #, fuzzy msgid "Overwrite control:" msgstr "Gainidazketa kontrola:\n" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "fitxategia egiaztatzen saiatu idatzi aurretik" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "ezabatu fitxategiak paketera gehitu aurretik" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "ez ordezkatu dauden fitxategiak ateratzerakoan" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "ez ordezkatu ateratzerakoan dauden fitxategiak paketeko kopiak baino " "berriagoak badira" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "gainidatzi dauden fitxategiak ateratzerakoan" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "dauden direktorioen metadata mantendu" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "dauden direktorioen metadata gainidatzi ateratzerakoan (lehenetsia)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Irteera korrontea hautatu:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "fitxategiak irteera estandarrera atera" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "KOMANDOA" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "bideratu ateratako fitxategiak beste programa batetara" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "alde batetara utzi semeen irteera kodeak" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "zero ez diren semeen irteera kodeekin errore bat bezala jokatu" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Fitxategi atributu kudeaketa:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "indartu IZENA jabe bezala gehituriko fitxategientzat" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "indartu IZENA talde bezala gehituriko fitxategientzat" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATA-EDO-FITXATEGIA" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "ALDAKETAK" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "indartu (sinbolikoa) modu ALDAKETAK gehituriko lerroentzat" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METODOA" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "ez atera fitxategi eraldaketa data" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "jabe berdinaren fitxategiak ateratzen saiatu" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "atera fitxategiak zure kabuz" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "beti erabili zenbakiak erabiltzaile/talde izenen ordez" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "fitxategi baimenei buruzko argibideak atera (lehenetsia root " "erabiltzailearentzat)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1631,430 +1640,430 @@ msgstr "" "erabiltzailearen umask-a erabili paketetik baimenak ateratzerakoan " "(lehenetsia erabiltzaile arruntentzat)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "-p eta -s bikotearen berdina" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "--delay-directory-restore aukeraren eragina ezeztatu" -#: src/tar.c:529 +#: src/tar.c:530 #, fuzzy msgid "Device selection and switching:" msgstr "Gailu hautapen eta aldaketa:\n" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "PAKETEA" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "pakete fitxategia edo gailu PAKETEA erabili" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "pakete fitxategi lokala da nahiz bi puntu izan" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "Emandako rmt KOMANDOA erabili rmt ordez" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "Urruneko KOMANDOA erabili rsh ordez" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "Gailu eta dentsitatea ezarri" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "sortu/zerrendatu/atera bolumen-anitzeko paketea" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "zinta aldatu ZENBAKIA x 1024 byte idatzi ondoren" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "scipt-a abiarazi zinta bakoitzaren amaieran (-M behar du)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "erabili/eguneratu FITXATEGI bolumen zenbakia" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Gailu blokeak:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOKE" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOKE x 512 byte grabazio bakoitzeko" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "grabazio bakoitzeko byte ZENBAKIA, 512-ren multiploa" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "paketean zeroz betetako blokeak alde batetara utzi" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "irakurri ahala berriz bloke egin (4.2BSD tutuentzat)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Pakete formatu hautapena:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMATUA" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "emandako formatuko pakete bat sortu" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMATUA hauetako bat da:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "V7 tar formatu zaharra" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "GNU formatua tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU tar 1.13.x formatua" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) formatua" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) formatua" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "pax-en berdina" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "--format=v7-ren berdina" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "--format=posix-ren berdina" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "gakoa[[:]=balioavalue][,gakoa[[:]=balioa]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TESTUA" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Elkarjotzen duten konpresio aukerak" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "PROG bidez iragazi (-d onartu behar du)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Fixtategi lokal hautapena:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "Emandako FITXATEGIA paketera gehitu /Erabilgarri izena asaterisko batez " "asten bada)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "DIR" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "DIR direktoriora aldatu" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "ateratzeko edo sortzeko izenak FITXATEGIA-tik eskuratu" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "PATROIA" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "fixtategiak utzi, PATROIA bezala emandakoak" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "FITXATEGIAN zerrendaturiko patroiak alde batetara utzi" -#: src/tar.c:657 +#: src/tar.c:658 #, fuzzy msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "katxe marka duten direktorioak alde batetara utzi" -#: src/tar.c:660 +#: src/tar.c:661 #, fuzzy msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "katxe marka duten direktorioak alde batetara utzi" -#: src/tar.c:663 +#: src/tar.c:664 #, fuzzy msgid "exclude directories containing CACHEDIR.TAG" msgstr "katxe marka duten direktorioak alde batetara utzi" -#: src/tar.c:665 +#: src/tar.c:666 #, fuzzy msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "katxe marka duten direktorioak alde batetara utzi" -#: src/tar.c:668 +#: src/tar.c:669 #, fuzzy msgid "exclude everything under directories containing FILE" msgstr "katxe marka duten direktorioak alde batetara utzi" -#: src/tar.c:670 +#: src/tar.c:671 #, fuzzy msgid "exclude directories containing FILE" msgstr "katxe marka duten direktorioak alde batetara utzi" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "sahiestu automatikoki direktorioetan zehar jeistea" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "fitxategi sistema lokalean egon paketea sortzerakoan" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "direktorioetan barrena (lehenetsia)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "Ez kendu hasierako `/' fitxategi izenetatik" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "lotura sinbolikoak jarraitu; lotzen dituzten fitxategiak irauli eta paketean " "sartu" -#: src/tar.c:686 +#: src/tar.c:687 #, fuzzy msgid "follow hard links; archive and dump the files they refer to" msgstr "" "lotura sinbolikoak jarraitu; lotzen dituzten fitxategiak irauli eta paketean " "sartu" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "PARTAIDE IZEN" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATA" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "data eta ordua parekatu data bakarrik aldatzen denean" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "KONTROL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "babeskopia egin ezabatu aurretik, KONTROL bertsioa hautatu" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "KATEA" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Fitxategi izen eraldaketak:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "ESPRESIOA" -#: src/tar.c:707 +#: src/tar.c:708 #, fuzzy msgid "use sed replace EXPRESSION to transform file names" msgstr "Sed-en ordezko EXPRESIOA erabili fitxategi izenak eraldatzeko" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "kasua alde batetara utzi" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "verbatim kate parekatzea" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "irteera informatiboa:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 #, fuzzy msgid "warning control" msgstr "Gainidazketa kontrola:\n" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" "Aurrerapen mezuak bistarazi grabaketa ZENBAKI bakiotzagatik (lehenetsia 10 " "da)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "mezu bat inprimatu lotura guztiak ez badira iraultzen" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SEINALEA" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2062,287 +2071,292 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "eraldaketa datak UTC orduan bistarazi" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "irteera luzea FITXATEGIRA bidali" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "Bloke zenbakia bistarazu pakete bakoitzeko mezu bakoitzagatik" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "berrespena eskatu ekintza bakoitzean" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "tar lehenespenak bistarazi" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "fixtategi edo pakete izenak bistarazi eraldaketaren aurretik" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "ESTILOA" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "Gako karaktere gehigarriak KATE-tik" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "gakoak kendu karaktereentzat KATE-tik" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Bateragarritasun aukerak:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Beste aukerak:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "ezgaitu arriskutsu izan daitezken zenbait aukera" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Ezin duzu `-Acdtrux' aukera bat baino gehiago ezarri" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Elkarjotzen duten konpresio aukerak" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Seinale izen ezezaguna: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Data adibide fitxategia ez da aurkitu" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "%s %s data formatu ezezagunagatik aldatzen" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: fitxategi zerrenda irakurria dagoeneko" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "fitxategia gzip bidez iragazi" -#: src/tar.c:1290 +#: src/tar.c:1296 #, fuzzy msgid "Valid arguments for the --quoting-style option are:" msgstr "--quoting-style-entzat balio erabilgarriak:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Blokeo faktore baliogabea" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Zinta luzera baliogabea" -#: src/tar.c:1511 +#: src/tar.c:1529 #, fuzzy msgid "Invalid incremental level value" msgstr "Fitxategi inkremental formatu okerra" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Atari data bat baino gehiago" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' ez da onartzen plataforma honetan" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "--checkpoint balioa ez da zenbaki oso bat" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Talde baliogabea" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Modu baliogabea eman da aukeran" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Zenbaki baliogabea" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Jabe baliogabea" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Grabazio tamaina baliogabea" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Grabaszio tamaina %d-ren multiplo bat izan behar da." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Elementu kopuru baliogabea" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "--to-command aukera bat bakarrik onartzen da" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Gaizki eratutako dentsitate argumentua: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Dentsitate Ezezaguna: `%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr " `-[0-7][lmh]' aukerak ez dira onartzen tar *honetan*" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FITXATEGIA]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "`%c' zaharkituriko aukerak argumentu bat behar du" -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Pakete fitxategi anitzentzat `-M' aukera erabili behar da" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Ezin dira --listed-incremental eta --newer batera erabili" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Bolumen etiketa luzeegia da (muga %lu byte da)" msgstr[1] "%s: Bolumen etiketa luzeegia da (muga %lu byte da)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Ezin dira bolumen-anitzeko paketeak egiaztatu" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Ezin dira konprimituriko fitxategiak egiaztatu" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Ezin dira bolumen anitzeko konprimituriko paketeak erabaili" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Ezin dira konprimituriko paketeak kateatu" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option POSIX paketeekin bakarrik erabili daiteke" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr " `-Aru' aukerak bateraezinak dira `-f -' rekin" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Behintzat `-Acdtrux' aukeretako bat ezarri behar duzu" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2354,86 +2368,86 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "" msgstr[1] "" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "%s gakoa ezezaguna da edo ez dago inplementaturik oraindik" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Denbora marka eremuz kanpo dago" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "%s patroia ezin da erabili" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "%s gakoa ezin da gainidatzi" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Gaizki eratutako buru luzapena: luzera falta da" -#: src/xheader.c:549 +#: src/xheader.c:550 #, fuzzy msgid "Extended header length is out of allowed range" msgstr " %*s buru luzapen luzera eremuz kanpo dago" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr " %*s buru luzapen luzera eremuz kanpo dago" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Gaizki eratutako buru luzapena: luzera ondoren hutsunea falta da" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Gaizki eratutako buru luzapena: berdin ikurra falta da" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Gaizki eratutako buru luzapena: lerro berria falta da" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "alde batetara utzi gako buru luzapen ezezaguna `%s'" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "buru luzapena %s=%s eremuz kanpo dago %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Gaizki eratutako buru luzapena: baliogabea %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Gaizki eratutako buru luzapena: gehiegizkoa %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Gaizki eratutako buru luzapena: %s baliogabea: %c mugatzaile esperodageba" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Gaizki eratutako buru luzapena: %s baliogabea: balio kopuru bitxia" @@ -2474,78 +2488,78 @@ msgstr "Idazketa %u egiaztapen puntua" msgid "Read checkpoint %u" msgstr "Irakurketa %u egiaztapen puntua" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Pakete sortze aukerak:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "TAMAINA" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Emandako TAMAINAko paketea sortu" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Fitxategi IZENEAN idatzi irteera estandarren ordez" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Fitxategi izenak PAKETEtik irakurri" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Bloke tamaina fitxategi sakabanatuentzat" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Fitxategi sakabanatuak sortu. Komanod lerroaren besteak fitxategi mapa dakar." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 #, fuzzy msgid "Seek to the given offset before writing data" msgstr "fitxategia egiaztatzen saiatu idatzi aurretik" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Fixtategi estatistika aukerak:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Eduki eta egitura estatusa inprimatu emandako fitxategi bakoiztarentzat. " "Lehenetsiriko FORMATUA: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Sinkronizatutako exekuzio aukerak:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [AUKERA...]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 #, fuzzy msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " @@ -2554,171 +2568,185 @@ msgstr "" "Emandako KOMANDOA exekutatu. Erabilgarri --checkpoint eta hauetako batekin; " "--cut, --append, --touch" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Ezarri data hurrengo --touch aukerarentzat" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "FITXATEGIAREN irakurketa eta eraldaketa denborak aldatu" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "KOMANDOA exekutatu" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Tamaina baliogabea: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Inodo zenbakia eremuz kanpo dago" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, fuzzy, c-format msgid "Negative size: %s" msgstr "Tamaina baliogabea: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) -ek huts egin du" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Errorea zenbakia analizatzean hemendi gertu: `%s'" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Data formatu ezezaguna" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARG...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "Ezin da `%s' ireki" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "%s: Ezin da %s-ra seek egin" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "fitxategia izenak karaktere baliogabea du" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "ezin dira sakabanaturiko fitxategiaksortu irteera estandarrean. --file " "erabili" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "maskara baliogabea (`%s'-etik gertu)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "`%s' eremu ezezaguna" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "ezin da `%s'-ren denbora ezarri" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "Ezin da `%s' ireki" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Komandoa behar bezala irten da\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Komandoa %d egoerarekin huts egin du\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Komandoa %d seinalearekin amaitu da\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Komandoa %d seinalearekin geratu da\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Komando iraulketa nagusia\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Komandoa amaitua\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat -ek fitxategi izenak behar ditu" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Ezin da lan direktorioa gorde" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "Ezin da %s %s-ra berrizendatu" + +#~ msgid "suppress this warning." +#~ msgstr "ohar hau kendu." + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: -- %c legezkanpoko aukera\n" +#~ msgid "Reading %s\n" +#~ msgstr "%s irakurtzen\n" + #~ msgid "" #~ "\n" #~ "Report bugs to <%s>.\n" @@ -2726,15 +2754,6 @@ msgstr "--stat -ek fitxategi izenak behar ditu" #~ "\n" #~ "Erroreen berri <%s>-ra eman.\n" -#~ msgid "Reading %s\n" -#~ msgstr "%s irakurtzen\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Errorea berreskura ezina da: irteten" - -#~ msgid "suppress this warning." -#~ msgstr "ohar hau kendu." - #~ msgid "filter the archive through bzip2" #~ msgstr "fitxategia bzip2 bidez iragazi" @@ -2786,6 +2805,9 @@ msgstr "--stat -ek fitxategi izenak behar ditu" #~ msgid "Premature end of file" #~ msgstr "Fitxategi amaiera azkarregia" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Errorea berreskura ezina da: irteten" + #~ msgid "block size" #~ msgstr "bloke tamaina" diff --git a/po/fi.gmo b/po/fi.gmo index 900159bd7648e40d61075be6b582daffd65478a7..338d9566571a82d4ab151732f7c776a5c4500c2e 100644 GIT binary patch delta 7178 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, 2002-2006. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.16.1\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2006-12-09 18:58+0200\n" "Last-Translator: Lauri Nurmi \n" "Language-Team: Finnish \n" +"Language: fi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -85,7 +87,7 @@ msgstr "Komennot ”%s --help” ja ”%s --usage” antavat lisää tietoa.\n" msgid "Report bugs to %s.\n" msgstr "Ilmoita ohjelmistovioista (englanniksi) osoitteeseen %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Tuntematon järjestelmävirhe" @@ -97,8 +99,8 @@ msgstr "näytä tämä ohje" msgid "give a short usage message" msgstr "näytä lyhyt käyttöohje" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NIMI" @@ -136,56 +138,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: valitsin ”%s” on moniselitteinen\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: valitsin ”--%s” ei salli argumenttia\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: valitsin ”%c%s” ei salli argumenttia\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: valitsin ”%s” vaatii argumentin\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: tunnistamaton valitsin ”--%s”\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: tunnistamaton valitsin ”%c%s”\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: virheellinen valitsin -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: valitsin vaatii argumentin -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: valitsin ”-W %s” on moniselitteinen\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: valitsin ”-W %s” ei salli argumenttia\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: valitsin ”%s” vaatii argumentin\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "muisti lopussa" @@ -513,190 +520,190 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Etäkuorta ei voi käynnistää" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Siirtymän suunta sallitun välin ulkopuolella" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Valitsimelle annettiin virheellinen tila" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Virheellinen koko: %s" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Siirtymä sallitun välin ulkopuolella" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Virheellinen nauhan pituus" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Siirtymä sallitun välin ulkopuolella" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Ennenaikainen tiedoston loppu\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Päätoimintatila:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Odottamaton tiedoston loppu arkistossa" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "MÄÄRÄ" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "TIED" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "%s: Siirtyminen kohtaan %s ei onnistu" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "liian monta argumenttia" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Roskakomento" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Tämä ei näytä tar-arkistolta" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Kirjoitettuja tavuja yhteensä" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Poistettuja tavuja yhteensä: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(putki)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Virheellinen arvo kentälle record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Arkiston nimeä ei ole annettu" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Vakiosyötteessä/tulosteessa olevaa arkistoa ei voi varmistaa" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Arkisto on tiivistetty. Käytä valitsinta %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Pakattuja arkistoja ei voi päivittää" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Nauhan alussa, lopetetaan" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Liian monta virhettä, lopetetaan" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Tietueen koko = %lu lohko" msgstr[1] "Tietueen koko = %lu lohkoa" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Kohdistamaton lohko (%lu tavu) arkistossa" msgstr[1] "Kohdistamaton lohko (%lu tavua) arkistossa" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Arkistossa ei voi siirtyä taaksepäin; sitä ei ehkä voi lukea ilman " "valitsinta -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek ei pysähtynyt tietueen rajalle" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: sisältää virheellisen arkiston osan järjestysnumeron" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Arkisto-osan järjestysnumeron ylivuoto" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Valmistele osa #%d arkistolle %s ja paina return: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Tiedoston loppu odotetun käyttäjän syötteen sijaan" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "VAROITUS: Arkisto on epätäydellinen" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -708,67 +715,67 @@ msgstr "" " q Keskeytä tar\n" " y tai rivinv. Jatka suoritusta\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Käynnistä alikuori\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Näytä tämä lista\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Ei uutta arkiston osaa, poistutaan.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Tiedostonimeä ei annettu. Yritä uudelleen.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "Komento %s epäonnistui" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s jatkuu mahdollisesti tällä arkiston osalla: otsake sisältää typistetyn " "nimen" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s ei jatku tällä arkiston osalla" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s on väärän kokoinen (%s ≠ %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Tämä arkiston osa ei ole järjestyksessä" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Arkistoa ei ole nimetty täsmää nimiöön %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Arkiston osa %s ei täsmää nimiöön %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -776,7 +783,7 @@ msgstr "" "%s: tiedostonimi on liian pitkä tallennettavaksi moniosaisen GNU-arkiston " "otsakkeeseen; nimi typistetty" -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "rmtlseek ei pysähtynyt tietueen rajalle" @@ -788,20 +795,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Voitiin lukea vain %lu tavua %lu tavusta" msgstr[1] "Voitiin lukea vain %lu tavua %lu tavusta" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Sisällöt eroavat" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Odottamaton tiedoston loppu arkistossa" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Tiedoston tyyppi eroaa" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Tila eroaa" @@ -817,145 +824,145 @@ msgstr "GID eroaa" msgid "Mod time differs" msgstr "Muutosaika eroaa" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Koko eroaa" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Ei ole linkitetty tiedostoon %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symlinkki eroaa" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Laitenumero eroaa" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Tarkasta " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Tuntematon tiedostotyyppi ”%c”, vertailtu normaalina tiedostona" # Mitäh? -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Arkisto sisältää tiedostonimiä, joiden etuliitteet on poistettu." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Tarkastus ei ehkä löydä alkuperäisiä tiedostoja." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "TARKASTUSVIRHE: havaittu %d virheellinen otsake" msgstr[1] "TARKASTUSVIRHE: havaittu %d virheellistä otsaketta" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Yksinäinen nollalohko kohdassa %s" -#: src/create.c:68 +#: src/create.c:72 #, fuzzy, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: näyttää välimuistihakemistolta, ei lisätä" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "arvo %s on sallitun %s-välin %s..%s ulkopuolella, korvataan arvolla %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "arvo %s on sallitun %s-välin %s..%s ulkopuolella" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Luodaan otsakkeet negatiivisilla oktaaleilla" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: tiedostonimi on liian pitkä (maksimi %d), ei lisätä" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: tiedostonimi on liian pitkä (ei voida jakaa), ei lisätä" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: linkin nimi on liian pitkä, ei lisätä" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Tiedosto kutistui %s tavun verran, tasataan nollilla" msgstr[1] "%s: Tiedosto kutistui %s tavun verran, tasataan nollilla" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: tiedosto ei ole samalla tiedostojärjestelmällä, ei lisätä" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Tuntematon tiedostotyyppi, tiedostoa ei huomioida" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "Puuttuvat linkit tiedostoon %s.\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: tiedosto on muuttumaton, ei lisätä" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: tiedosto on arkistossa, ei lisätä" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 #, fuzzy msgid "directory not dumped" msgstr "%s: näyttää välimuistihakemistolta, ei lisätä" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: tiedosto muuttui lukemisen aikana" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: pistoketta ei huomioida" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: ovea ei huomioida" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Siirrytään seuraavaan otsakkeeseen" @@ -963,75 +970,75 @@ msgstr "Siirrytään seuraavaan otsakkeeseen" msgid "Deleting non-header from archive" msgstr "Poistetaan epäotsake arkistosta" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: epätodennäköisen vanha aikaleima %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: aikaleima %s on %s sekuntia tulevaisuudessa" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Odottamaton ristiriita luotaessa hakemistoa" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Hakemisto nimettiin uudelleen ennen kuin sen tilaa voitiin purkaa" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Puretaan jatkuvat tiedostot normaaleiksi tiedostoiksi" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Yritetään purkaa symboliset linkit koviksi linkeiksi" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Ei voi purkaa -- tiedosto on jatkoa toisesta arkiston osasta" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Odottamaton tiedoston loppu sovitetuissa nimissä" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Tuntematon tiedostotyyppi ”%c”, purettiin normaaliksi tiedostoksi" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Nykyinen %s on uudempi tai yhtä vanha" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Tätä tiedostoa ei voitu varmuuskopioida" -#: src/extract.c:1402 +#: src/extract.c:1568 #, fuzzy, c-format msgid "Cannot rename %s to %s" msgstr "%s: Uudelleennimeäminen nimelle %s ei onnistu" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Hakemisto %s on nimetty uudelleen" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Hakemisto on nimetty uudelleen" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Hakemisto on uusi" @@ -1144,35 +1151,35 @@ msgstr "%s: Poistetaan %s\n" msgid "%s: Cannot remove" msgstr "%s: Ei voi poistaa" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Jätetään pois" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "lohko %s: ** NUL-lohko **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "lohko %s: ** Tiedoston loppu **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "lohko %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Tyhjiä merkkejä otsakkeessa, odotettiin numeerista %s-arvoa" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1180,143 +1187,145 @@ msgstr "" "kahden komplementiksi" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Arkiston oktaaliarvo %.*s on sallitun %s-välin ulkopuolella" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Arkisto sisältää käytöstä poistuvia base-64-otsakkeita" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" "Arkiston etumerkillinen base-64-merkkijono %s on sallitun %s-välin " "ulkopuolella" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Arkiston base-256-arvo on sallitun %s-välin ulkopuolella" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Arkisto sisältää merkkijonon %.*s, odotettiin numeerista %s-arvoa" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Arkiston arvo %s on sallitun %s-välin %s..%s ulkopuolella" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " linkki tiedostoon %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " tuntematon tiedostotyyppi %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Pitkä linkki--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Pitkä nimi--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Arkiston osan otsake--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Jatkuu tavusta %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Luodaan hakemisto:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Työhakemistoa ei voi vaihtaa" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Nimetään uudelleen %s -> %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Uudelleennimeäminen nimelle %s ei onnistu" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Nimetään %s takaisin nimelle %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Työhakemistoa ei voi tallentaa" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Työhakemistoa ei voi vaihtaa" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Tiedosto oli poistettu ennen sen lukemista" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Tiedosto oli poistettu ennen sen lukemista" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "lapsiprosessi" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "prosessienvälinen kanava" # ... ja sen pitää päätyä kääntäjien ongelmaksi? -#: src/names.c:601 +#: src/names.c:594 #, fuzzy msgid "Pattern matching characters used in file names" msgstr "Tiedostonimissä on käytetty jokerimerkkejä. Käytä" -#: src/names.c:603 +#: src/names.c:596 #, fuzzy msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "valitsinta --wildcards täsmäyksen käyttöön ottamiseksi, tai" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Ei löytynyt arkistosta" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Vaadittua esiintymää ei löytynyt arkistosta" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Arkistoa ei ole nimetty täsmää nimiöön %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1341,7 +1350,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1359,7 +1368,7 @@ msgstr "" " %s -tvf arkisto.tar # Listaa kaikki arkisto.tar:in tiedostot.\n" " %s -xf arkisto.tar # Pura kaikki tiedostot arkisto.tar:ista.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1380,79 +1389,79 @@ msgstr "" " muuten yksinkertaisia\n" " never, simple tee aina yksinkertaisia varmuuskopioita\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Päätoimintatila:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "listaa arkiston sisältö" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "pura tiedostoja arkistosta" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "luo uusi arkisto" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "etsi arkiston ja tiedostojärjestelmän väliset erot" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "lisää tiedostoja arkiston loppuun" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "lisää vain arkistokopiota uudemmat tiedostot" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "lisää tar-tiedostoja arkistoon" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "poista tiedostoja arkistosta (ei toimi magneettinauhoilla!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Toimintovalinnat:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "käsittele harvat tiedostot tehokkaasti" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "käsittele vanha GNU-muotoinen lisääntyvä varmuuskopio" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "käsittele uusi GNU-muotoinen lisääntyvä varmuuskopio" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "jatka lukukelvottomista tiedostoista huolimatta" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1465,308 +1474,308 @@ msgstr "" "annettu komentirivillä tai -T-valitsimella; oletusMÄÄRÄ on 1" # Muualla seek on siirtymistä... -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "arkisto on selattava" # Muualla seek on siirtymistä... -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "arkisto on selattava" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "yritä varmistaa arkisto kirjoittamisen jälkeen" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "poista tiedostot arkistoon lisäämisen jälkeen" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "älä korvaa olemassaolevia tiedostoja purettaessa" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "älä korvaa olemassaolevia tiedostoja, jotka ovat arkistokopioitaan uudempia" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "ylikirjoita olemassaolevat tiedostot purettaessa" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "poista jokainen tiedosto ennen sen päälle purkamista" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "tyhjennä rakenne ennen hakemiston purkamista" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "säilytä olemassaolevien hakemistojen metatiedot" -#: src/tar.c:466 +#: src/tar.c:467 #, fuzzy msgid "overwrite metadata of existing directories when extracting (default)" msgstr "ylikirjoita olemassaolevat tiedostot purettaessa" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Valitse tulostusvirta:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "pura tiedostot vakiotulosteeseen" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "KOMENTO" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "putkita puretut tiedostot toiselle ohjelmalle" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "jätä lapsiprosessien paluuarvot huomiotta" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "käsittele lapsiprosessien nollasta poikkeavat paluuarvot virheinä" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Tiedostojen ominaisuuksien käsittely:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "pakota NIMI lisättyjen tiedostojen omistajaksi" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "pakota NIMI lisättyjen tiedostojen ryhmäksi" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "PÄIVÄYS-TAI-TIED" -#: src/tar.c:493 +#: src/tar.c:494 #, fuzzy msgid "set mtime for added files from DATE-OR-FILE" msgstr "tallenna vain PÄIVÄYS-TAI-TIEDostoa uudemmat tiedostot" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "MUUTOS" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "pakota (symbolinen) tila MUUTOS lisätyille" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "älä pura tiedoston muutosaikaa" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "yritä purkaa tiedostot samalla omistajuudella" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "pura tiedostot itsenäsi" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "käytä aina numeroita käyttäjän/ryhmän nimissä" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "lajittele purettavat tiedostonimet täsmäämään arkistoon" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "sama kuin -p ja -s yhdessä" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 #, fuzzy msgid "Device selection and switching:" msgstr "Laitteen valinta ja vaihtaminen:\n" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARKISTO" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "käytä arkistotiedostoa tai -laitetta ARKISTO" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "arkisto on paikallinen vaikka nimessä olisi kaksoispiste" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "käytä rmt-KOMENTOA rmt:n sijaan" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "käytä etäKOMENTOa rsh:n sijaan" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "anna asema ja tiheys" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "luo/listaa/pura moniosainen arkisto" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "vaihda nauhaa MÄÄRÄ × 1024 kirjoitetun tavun jälkeen" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "aja skripti joka nauhan lopussa (valitsin -M tulee käyttöön)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "käytä/päivitä arkiston osan numero TIEDostossa" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Laitteen lohkot:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "LOHKOT" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "LOHKOT × 512 tavua tietuetta kohti" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "MÄÄRÄ tavua tietuetta kohti, 512:n monikerta" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "älä huomioi nollattuja lohkoja arkistossa (merkitsee tiedoston loppua)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "suorita lohkominen uudelleen luettaessa (4.2BSD-putkia varten)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Arkistomuodon valinta:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "MUOTO" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "luo annetun muotoinen arkisto" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "MUOTO on yksi seuraavista:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "vanha V7-tar-muoto" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "GNU-muoto tar-versioilla ≤ 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU tar 1.13.x -muoto" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) -muoto" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) -muoto" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "sama kuin pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "sama kuin --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "sama kuin --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "avainsana[[:]=arvo][,avainsana[[:]=arvo]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "määrittele pax-avainsanoja" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEKSTI" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1774,174 +1783,174 @@ msgstr "" "luo arkisto nimiöllä TEKSTI. Listattaessa/purettaessa käytä TEKSTIä " "nimiönhakulausekkeena" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Ristiriitaiset pakkausvalitsimet" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "OHJ" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "ohjaa OHJelman läpi (on hyväksyttävä -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Paikallisten tiedostojen valinta:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "lisää annettu TIEDosto arkistoon (hyödyllinen, jos nimi alkaa viivalla)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "HAK" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "siirry hakemistoon HAK" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "hae purettavat/luotavat nimet TIEDOSTOsta" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T lukee nollaan päättyviä nimiä, poistaa käytöstä -C:n" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "HAHMO" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "jätä pois HAHMOn mukaiset tiedostot" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "jätä pois TIEDOSTOssa listatut hahmot" -#: src/tar.c:657 +#: src/tar.c:658 #, fuzzy msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "jätä pois välimuistihakemistot" -#: src/tar.c:660 +#: src/tar.c:661 #, fuzzy msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "jätä pois TIEDOSTOn sisältävät hakemistot" -#: src/tar.c:663 +#: src/tar.c:664 #, fuzzy msgid "exclude directories containing CACHEDIR.TAG" msgstr "jätä pois TIEDOSTOn sisältävät hakemistot" -#: src/tar.c:665 +#: src/tar.c:666 #, fuzzy msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "jätä pois TIEDOSTOn sisältävät hakemistot" -#: src/tar.c:668 +#: src/tar.c:669 #, fuzzy msgid "exclude everything under directories containing FILE" msgstr "jätä pois TIEDOSTOn sisältävät hakemistot" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "jätä pois TIEDOSTOn sisältävät hakemistot" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "estä automaattinen eteneminen alihakemistoihin" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "pysy nykyisessä tiedostojärjestelmässä arkistoa luotaessa" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "etene alihakemistoihin (oletus)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "älä poista ”/”-merkkiä tiedostonimien alusta" -#: src/tar.c:684 +#: src/tar.c:685 #, fuzzy msgid "follow symlinks; archive and dump the files they point to" msgstr "seuraa symlinkkejä; " -#: src/tar.c:686 +#: src/tar.c:687 #, fuzzy msgid "follow hard links; archive and dump the files they refer to" msgstr "seuraa symlinkkejä; " -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "TIED-NIMI" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "aloita arkiston tiedostosta TIED-NIMI" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "tallenna vain PÄIVÄYS-TAI-TIEDostoa uudemmat tiedostot" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "PÄIVÄYS" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "vertaa vain tiedoston muutosaikaa" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "HALLINTA" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "varmuuskopiointi ennen poistoa, valitse versionHALLINTA" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "MERKKIJONO" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1949,103 +1958,103 @@ msgstr "" "varmuuskopiointi ennen poistoa, älä käytä tavanomaista jälkiliitettä (joka " "on ”~”, ellei muuttujaa SIMPLE_BACKUP_SUFFIX ole asetettu)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 #, fuzzy msgid "strip NUMBER leading components from file names on extraction" msgstr "poista MÄÄRÄn verran osia tiedostonimien alusta" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 #, fuzzy msgid "ignore case" msgstr "poisjättäminen ei huomioi kirjainkokoa" -#: src/tar.c:718 +#: src/tar.c:719 #, fuzzy msgid "patterns match file name start" msgstr "poisjättöhahmoja verrataan nimen alkuun" -#: src/tar.c:720 +#: src/tar.c:721 #, fuzzy msgid "patterns match after any `/' (default for exclusion)" msgstr "poisjättöhahmoja verrataan jokaisen ”/”:n jälkeen" -#: src/tar.c:722 +#: src/tar.c:723 #, fuzzy msgid "case sensitive matching (default)" msgstr "poisjättäminen huomioi kirjainkoon (oletus)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "poisjättöhahmon jokerimerkit eivät täsmää ”/”-merkkiin" -#: src/tar.c:730 +#: src/tar.c:731 #, fuzzy msgid "wildcards match `/' (default for exclusion)" msgstr "poisjättöhahmon jokerimerkit vastaavat merkkiä ”/”" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Tietoja antava tuloste:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "listaa käsiteltävät tiedostot" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 #, fuzzy msgid "display progress messages every NUMBERth record (default 10)" msgstr "näytä edistymisviesti 10 sekunnin välein" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "näytä viesti, ellei kaikkia linkkejä lisätty" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2053,58 +2062,63 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "näytä tiedostojen muutosajat UTC-aikoina" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "ohjaa monisanainen tuloste TIEDostoon" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "näytä lohkonumero arkistossa viestien yhteydessä" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "kysy varmistusta jokaiselle toiminnolle" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "näytä tarin oletukset" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" "luettele hakuehtoihin täsmäämättömät hakemistot luetellessa tai purettaessa" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Yhteensopivuusvalitsimet:" -#: src/tar.c:784 +#: src/tar.c:787 #, fuzzy msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" @@ -2112,65 +2126,65 @@ msgid "" msgstr "" "luotaessa sama kuin --old-archive purettaessa sama kuin --no-same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Muut valitsimet:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "poista käytöstä joitakin potentiaalisesti vahingollisia valitsimia" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Vain yhtä valitsimista ”-Acdtrux” voi käyttää kerrallaan" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Ristiriitaiset pakkausvalitsimet" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Tuntematon signaalin nimi: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 #, fuzzy msgid "Date sample file not found" msgstr "Päiväystiedostoa ei löytynyt" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Korvataan tuntematon päiväysmuoto %2$s arvolla %1$s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Valitsin %s: Käsittellään päiväys %s arvona %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, fuzzy, c-format msgid "%s: file list already read" msgstr "%s: tiedosto on arkistossa, ei lisätä" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: tiedostonimi sisältää nul-merkin" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "ohjaa arkisto gzip-ohjelman läpi" -#: src/tar.c:1290 +#: src/tar.c:1296 #, fuzzy msgid "Valid arguments for the --quoting-style option are:" msgstr "Kelvolliset argumentit --quoting-style -valitsimille ovat:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2178,168 +2192,168 @@ msgstr "" "\n" "*Tämä* tar käyttää oletuksena:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Virheellinen lohkomiskerroin" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Virheellinen nauhan pituus" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Annettu useampi kuin yksi kynnyspäiväys" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' ei ole tuettu tällä alustalla" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Virheellinen ryhmä" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Valitsimelle annettiin virheellinen tila" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Virheellinen määrä" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Virheellinen omistaja" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Virheellinen tietueen koko" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Tietueen koon on oltava %d:n monikerta." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Virheellinen osien määrä" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Kelvoton tiheysargumentti: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Tuntematon tiheys: ”%c”" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "*Tämä* tar ei tue valitsimia ”-[0-7][lmh]”" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[TIEDOSTO]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Vanha valitsin ”%c” vaatii argumentin." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "valitsin --occurence on merkityksetön ilman tiedostoluetteloa" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "valitsinta --occurence ei voi käyttää pyydetyssä toimintatilassa" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Usean arkistotiedoston käyttäminen vaatii valitsimen ”-M”" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Valitsimia --listed-incremental ja --newer ei voi käyttää yhdessä" -#: src/tar.c:2387 +#: src/tar.c:2406 #, fuzzy msgid "--level is meaningless without --listed-incremental" msgstr "valitsin --occurence on merkityksetön ilman tiedostoluetteloa" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Arkiston osan nimiö on liian pitkä (raja on %lu tavu)" msgstr[1] "%s: Arkiston osan nimiö on liian pitkä (raja on %lu tavua)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Moniosaisia arkistoja ei voi tarkastaa" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Pakattuja arkistoja ei voi varmistaa" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Pakattuja moniosaisia arkistoja ei voi käyttää" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Pakattuja arkistoja ei voi liittää toisiinsa" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "Valitsinta --pax-option voi käyttää vain POSIX-arkistoille" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Kieltäydytään pelkurimaisesti luomasta tyhjää arkistoa" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Valitsimet ”-Aru” eivät ole yhteensopivia valitsinten ”-f -” kanssa" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Vähintään yhtä valitsimista ”-Acdtrux” on käytettävä" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2351,65 +2365,65 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Tiedosto kutistui %s tavun verran" msgstr[1] "%s: Tiedosto kutistui %s tavun verran" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Avainsana %s on tuntematon tai sillä ei vielä ole toteutusta" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Aikaleima ei ole sallitulla välillä" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Hahmoa %s ei voi käyttää" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Avainsanaa %s ei voi ohittaa" -#: src/xheader.c:541 +#: src/xheader.c:542 #, fuzzy msgid "Malformed extended header: missing length" msgstr "Väärän muotoinen laajennettu otsake: yhtäsuuruusmerkki puuttuu" -#: src/xheader.c:549 +#: src/xheader.c:550 #, fuzzy msgid "Extended header length is out of allowed range" msgstr "" "Arkiston etumerkillinen base-64-merkkijono %s on sallitun %s-välin " "ulkopuolella" -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "" "Arkiston etumerkillinen base-64-merkkijono %s on sallitun %s-välin " "ulkopuolella" -#: src/xheader.c:568 +#: src/xheader.c:569 #, fuzzy msgid "Malformed extended header: missing blank after length" msgstr "Väärän muotoinen laajennettu otsake: tyhje puuttuu pituuden jälkeen" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Väärän muotoinen laajennettu otsake: yhtäsuuruusmerkki puuttuu" -#: src/xheader.c:582 +#: src/xheader.c:583 #, fuzzy msgid "Malformed extended header: missing newline" msgstr "Väärän muotoinen laajennettu otsake: yhtäsuuruusmerkki puuttuu" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" @@ -2417,28 +2431,28 @@ msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Laajennettu otsake %s=%s on sallitun välin %s..%s ulkopuolella" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Väärän muotoinen laajennettu otsake: virheellinen %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, fuzzy, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Väärän muotoinen laajennettu otsake: yhtäsuuruusmerkki puuttuu" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Väärän muotoinen laajennettu otsake: virheellinen %s: odottamaton rajoitin %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, fuzzy, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Väärän muotoinen laajennettu otsake: yhtäsuuruusmerkki puuttuu" @@ -2479,248 +2493,262 @@ msgstr "Kirjoituksen tarkistuspiste %u" msgid "Read checkpoint %u" msgstr "Lukemisen tarkistuspiste %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Luo datatiedostot GNU tar:in testausta varten.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Muut valitsimet:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 #, fuzzy msgid "Create file of the given SIZE" msgstr "luo annetun muotoinen arkisto." -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "pura tiedostot vakiotulosteeseen" -#: tests/genfile.c:134 +#: tests/genfile.c:133 #, fuzzy msgid "Read file names from FILE" msgstr "Luettiin %s tavua arkistosta %s" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T lukee nollatavuun päättyviä nimiä" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 #, fuzzy msgid "Seek to the given offset before writing data" msgstr "yritä varmistaa arkisto kirjoittamisen jälkeen" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [VALITSIN...]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Suorita KOMENTO" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Virheellinen koko: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "I-solmun numero ei ole sallitulla välillä" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, fuzzy, c-format msgid "Negative size: %s" msgstr "Virheellinen koko: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) epäonnistui" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Tuntematon järjestelmävirhe" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARG...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "%s: Siirtyminen kohtaan %s ei onnistu" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "tiedostonimi sisältää nollatavun" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr " tuntematon tiedostotyyppi %s\n" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "%s: Siirtyminen kohtaan %s ei onnistu" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "%s: Siirtyminen kohtaan %s ei onnistu" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Komennon suoritus päättyi onnistuneesti\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, fuzzy, c-format msgid "Command failed with status %d\n" msgstr "Lapsiprosessi kuoli signaalilla %d" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Komento keskeytyi signaaliin %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Komento pysähtyi signaaliin %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Komento keskeytyi\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Sovitetut tiedostonimet--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Työhakemistoa ei voi tallentaa" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s: Uudelleennimeäminen nimelle %s ei onnistu" + +#~ msgid "suppress this warning." +#~ msgstr "--no-wildcards tämän varoituksen vaientamiseksi." + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: virheellinen valitsin -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Luetaan %s\n" + #~ msgid "" #~ "\n" #~ "Report bugs to <%s>.\n" @@ -2729,15 +2757,6 @@ msgstr "--Sovitetut tiedostonimet--\n" #~ "Ohjelmistovioista voi ilmoittaa (englanniksi) osoitteeseen\n" #~ "<%s>.\n" -#~ msgid "Reading %s\n" -#~ msgstr "Luetaan %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Virhe ei ole korjattavissa, poistutaan nyt" - -#~ msgid "suppress this warning." -#~ msgstr "--no-wildcards tämän varoituksen vaientamiseksi." - #~ msgid "filter the archive through bzip2" #~ msgstr "ohjaa arkisto bzip2-ohjelman läpi" @@ -2784,6 +2803,9 @@ msgstr "--Sovitetut tiedostonimet--\n" #~ msgid "Premature end of file" #~ msgstr "Ennenaikainen tiedoston loppu" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Virhe ei ole korjattavissa, poistutaan nyt" + #~ msgid "block size" #~ msgstr "lohkokoko" diff --git a/po/fr.gmo b/po/fr.gmo index ef19c5d53ccdc395e149ccc75834d71a2292e949..46894b947d6c56f398f8db98303ee5b8cc377296 100644 GIT binary patch delta 16598 zcma*t2Ygh;+W7IaNeB=+B!m*kfe=DTAR&MdAfbgGLJJ6}u*sez3!B|#OG3M>AflpR zSqt3)iU@+R3W$h85YdZ@f~Xf87Hrsk?Oy-C=gbKNU;p>L`?6jR0#B0U_dB-6Kk!9N?4fD#_yNY^ zPpIR+F&UG4YFb0gvmA#vP@djX3u!IMoTGwswVy51Xh|yNsYrXY#n=K@BmdJL;2+wj zox+j$BX+{vEKO^KC76WskXvf2Q5tdx2jIKd2HW%ssR#7wMK7ori3vChn_>{#;|lDI z52Ez+1g7CR%)$EEszJlCFXb}41~;KR=nrg#t$J%(SIj~gk(nVf4l?DKjxV7!w_$_QrjRB7lKtVAcu2)&QF7=49$@KBU`7t$szbSoL@X*J3X zPNO{Vdz1&I_S3WuI2xrVbCE;Z3X~~3gwmrgaSSH*SLYXFTguB(rt&^a#A7HOeHYvD ze60cFCly^$hIA@QoGn2ecVHKM$?`{RPC1#0l=FKbH_~RH%<+87H7EhRAEWUAO3x3W zjO00t<@s96fhwBYVPg(lVL1ZjK}E>9S~*IPZ9y5j7p(d}P=c)gAf*$j($-=dJcBZ_ z-(ojx%6!O348T~PuT3UX7iXZ{xES;CZj_;Y8<}P;HctiHK$H=y!q&J2rD2D#C4Pv> z_$zkDHiI>71dc$t|0uVOhakl5|jpPM!D}BL#_4yJry0Oh#RI_oQ_hy5>s#?cEn8>kB2b{ z&tQA}9;Ly}hpT-e6LreNQAWf-xo$Da$lQ)iaQE;KJ06+CRLGDiR_{}pA`v|%2kW0Nor10gcf191v<TCeDC<9Z zq-t1SlsPLwS$3B>?*WvC>=~m*=3|teMUPbtZH+P&T`>)SA zvdlwT5g8fk>rjI09+YLb3*|vaQ1WB!A5ul4&VW&%o&Z$R0gcA+f4 zFR%-Co2ZucWXzy^6Uu(F4<$CvVaQLW;UrBPg4d$7>6bfg5E;jJhmaX(6o?L)cWNt6*gH<|I53vGnHSPxUN2};lVpe&mi7>{?L z#K=~ZIerE+@k5jc#}}!W*I;Z+*@w+>Dausci8^jTS#?hrG5*qnx2b4?=P(|>MHzwE zscO0DIGA!F%ADSYG6I`$1ipaspr+H*&X$65eI7~!r=xUiB}$AuhB9^Ugvcb4sdJ^e zK|5?oITKspNR$T7L>ZykR=Lb7yRZ)Rev~bB0k*=sP#&}s6YwnR_$|s*HlMDhAe2l- z8jy$5qiHBZxePnwPLz>(9p~Z4C_^`GhH6+Pa!+j$&b0CUfYQ^r+9a2#$zxxp7G!BgiNHC3r7Lz#mz0>vozTY}Q_ zJ5Z+PVPtR9o^1_2D-6Fh|DtUgxx6X_&CaqV~W*{`=LxpIZ99OM2Y@` zn2hhEJWwl9QGB1;{;c1i$&!B7+Ne=bE5tu~Tjj4Du zN>6s1uqCDV3lm|zZ zshunthf*#=S>J1rAkwy?OyPc%xjl+9=Wk;N{2JxK&C0D{M;V!E<&1wLGHa=j9&ANv z`Dv7W;8V*#up{N>PQHe)4|c)(unoR|bV~aOWva$-l3ZVj-SB3V*xHK{E1%#%ObpFc zd-fER281ycpS9}GqfR;1rKV;C%6Ye-G~h|h!Vgex9ABYcPQ!5;o60aL4rM`eM6?dTtFbmg{7E+cUtbp(Ujjt>2YVD8uCJvshWdQzr=DYN(WA&Jn$QA zfC+xpkPav#k%w(${m&&MbG5>((6sd^J>QFRqjT64Z2|RGYmPDnolqV;(Q+XUr@R?^ zo(4_xbrMMoypv z<##9zN?4#qa41R)c~Ks8H%gD6#g=#hTVV7;#$PHD$;c4(K-oxgunA7ZHdu;sgQeIH zAH{e)k2&}o_QJl4R1i9`8RfMo9omkq@imnDUcjFC`y$4_4w>}DYRm0~gDCe$xv&bG z<0kBZyOHf*dmm+ra{r;Gz=<*vcikhi4wHUm#7BzMj4qhl;f+GF#a;fd#I48 zd<|P+H1+K<38lpYa6FF1$+!;N;8!RkQ~z4ErS?I2zyOpHwd0LUT?NV%{kW8X#FS;K zVez5s)Jvl;rg0z_rDdhq5O2oDxCU3_R!qXa%dKxalqtChWrU8Pbl_W*^Wv^ot1AuV z{&t*#H=#5<^e!10;J=#jcxBz4K2h1%GaVS)0gjJ z{AEaD?^Z)M7E>tSjMB4RI2GTw>aVy*HDD&zrM?&k;vBT&Rve7=*YKHzV{jC%!z=JZ z)UoYawE+!W%lP-8!bOEVa6Jyi6L<|aS*N1kje{sZfqn6NtG?TMweIJkM12*?NN&Ul zcof@U!UnY;WMVza15tuGKSZXSOd-lh>_-{0Kd>KWZBz}IgE^FUV=`VqX-LCOs$s)W z=6oqiEJRR(^*l<$vhP*zg6SwRavk=>&~`FOWX_@l%g@*rJKv|~cqqyZXJUI?jnnW^ zl#!~#(vcpILg}doSH{~TLQyalt{0Jp>QXZ683b756k)h~?Bd{1d z;5M9r|3n$u&JU@fyb`6yORyt8h!Ska@dF#9wpG0=etTGr*qCjqflh43c_B>3+fn}h z)OM5cVBJS}!C)13#cFJcU!puPX1j`!?kGL>qD<8a%Lg!(@*!-FA7OX=3FW+$9cne? zp>*&@49UKT)0<2c%85HrmeCQEA$rHEum6PVQ8L!2 zel*GrCSxz0fjw~*$|`soWm*4<(y+w6>VAE366Ip-kD({X$OwFmP4S9->cUZ2hq8e> z&PBP=Ef|B_QOCP`TJGy-H$TWPosgqpf2lw){|;ZuC?5b<2d0A z$^|J0)LhTPzLf7miG>r`96v{ifj>~kl&4e!hog+pXv+yG!8Z-1W3#Zctbc<{2P$sC zLAVoJ;|06|V-Kn+$wdjC=_n(y95Zn_K@a%5r+gGU~8uSQ@sYeh3C|7D~{bMwyCsN7R3k$wpb$x1g+w zCovvBL}}>H7-~-@t6Hto37AB=%qlNO59RgP78@K@(Vm8~lMTi^oP>?=4qSxyp%;^$ z$2!2-&2jxqj?$?T^>=J0u(f?r|>9QwR!xdWxV8s&kHq4e|{%*WW{ zYKtC+8I+fx^mqr#eb1m=|2s-U+P|Pia^MThe-kREQgJnw;wU_d^|8^5>N7kM>rn1w z*$ty9XJR4t#(}sThvH#ugE9Y9%PtwyD33)y`ccmNBt%A9*zJT0stMSIvIivw)}Y+@ zd7OYTFY#i+B9!y~#5nBovg%njCR3h>IXDl?a0j-;_*c{vcgIA^p;2VIk(rG;-i*1p z0|((3*72?<86C<~uqi%;G8HFKf~w)GDn>e34#G~a#^&AgM z2Ol=eA?AQgPb%~`)E^ELP#*LsO1J_$tZ>{(&;5UEWgbe=f@P zt5F(u$f{5Jm%3jb&gS`A1sS>F%b1R_XVn~Lqs;we9EP`H0iMP}?D)3&FC#vb2OY$| zcmXRg#}U}{UB-VTnQ3HX2=7Iiqwi3HE9E_FSz#Z_OHk(YaZJFs zFd4tb3~chgilIT+obol;0_R~7UXO$EEcU~sbIiY!OwliIJDIci^7vXP|D{-=oKh-`~d;YQWDwto!;T&)Hi5jVipM=zb8>x^f zIEI7p-#-{igO3!~q8Hp~RsRoV0v6L60OvN#jq3`{<`ly|V z11WC~k&za?j}lC&U#J5Uu@mLhC^wGaSUiPwF!_RdyQSh7%ITPmRVWSHjsQyq%`N}ZUG5=3E?1Jx*V_5+T_F<+~O-HAOYzlzdu`Og_Tu_Q^Amf5;T5f>a+y@sUsPF|D(`evC4h1iIrc=v74;p z!jD#7rc-`;6n}79=Z?TQ(!bRq?OC3$ZMP0yXL$lolAh;OGq`pLh2-{ z@4^10hseuZ*ZjIrmqQvvswO>b9q2@UHhC6_`TLpjR#GoY^GFRyq2*Nk(>$#H8BMv6 z>;kO)BVM!zNb9J7fF$cze(x%@Wq6$Q4##5X`G?qw@)R6Ms`-tt$>8fU|E0AKzEmr} z$jVDF{YjoUG>`agU;QKw`57Fj{Toc-0Cj(2AJXmQ*JCc}TGFeO zWxuTXrI4wh?mV8w3#3X?Q_^pwC#@6TBX1)$v&!#V&)3*h%>UbgRc~&R305nMx!^Sp zEGBIv4WOJ)Dj?sGb4u|fspeP0u^|)=lCB^xzXb~IPW;ZQn~LW1i^$w&Rmyp?Zw(;* zECqhD0sl{}Q0f^^2~3c+pPL}7l)tccjknqRQNET z6CNiuu})+UHFxcwIM$#1AxuUmsW1NU>($mz{ z{Qg1SO<^6Wq5K_`M&@Hu1M8#$tfu@4W}wVbn6#gAA`O{@8%gr}NpbPthpFF9=|OxC z_mbvIqC5;gB7H`FHt9=JXblze3sR8ZTcksz6_kgQ9wgtIhjx(T_!vAxzAj!vl3!rIUXf?;~AFs`>pwW-iB`z$6-4^YclD=bN7$dpMyRsSYR9#Xm?JNbizv zB6&G43XjP}{Fag5iOum3?7(#$@B_*Irm189NM16_0og}|)q({sg`v=F* z$^6T22I(6rK9>vm1#mw$w#r|awR~n^6=@aqV@aLJKZ#f2W7fH6EU7a8K>MC@v=sQY zvtlCJ(tLg@2VSr)YL9nQex%k-I#O=I1uLnmPr91&8zlKPpuRro4eHmBejv3Y)%?CC z-;%;KY>tbp125n|Wd7sG+)8T0O@?ri4ZGrJ)V07*Ni#|E8;9{KYyP3ugmWiQ{*=_t zs&8*8H0F3tt@2K;f5j@t;77K8Y`s)oMe0Fn$ptdEE11mF?7g3oR+H~)UBoHcpZxZJ z7arR6=N56346nx*(2Ij*em&sH(Nq1Ae%&_MhLn3M4BcxlGjjBSss7wJE!D5rt}71& zyg5C4R#jE?D02sUczk6&{hrc5mEC9bO!fE7jfZnNdr|Axl;diG6bi2#t zsnYFk-R>(3Rv7Mpv@56P25EAt)34hrik)RaPtbq)(Tt4${#JF;KPZg_zW3byDMVr`*l=f zm%W(FDxCfbd!VE|@=3o#w#1|vm4;qwce)Hm*gwFtXW(7YF?6Z4VPCB`stlMa(t0q6O@GU z--K+L5s>pGT;Chk%NAFBu~*@G`N^qeK2OlAjkdzH*0|_uBnjW35pJJ z@i>g|C;90e3}deDa57<1eeoWCsrHnX`i(%i{)k{~{`6^ulZHnYk2oDYnJMuGU3SLR zt_SR1LwER`l}5U5FDWrtA#|w3Q&GX7`1Mksr-HMXCJ(23eV!6#QY&!!&3?;p$ZFP8 zBjd*OvDKL{Wpv^AaA<5nlH0Yw9MOznHSr^%DT|6(dA4uc^umiBsqi?QrB1`=&(SVb zx;+8iAN0zWVK^f1jZL+6ESbwD!4hAyXU2s-V)VHD@O?%7L&O=;Qss0xO6)!ckpVK? z_F^9D{Y&f8b&roz-JZ+OmYx&ITv^VrvDL{M(u&M6uQj4>ztcgeOK)UF$$FDCW&67H|)>&?9+M7e|Grdx8w%0`q=;uTkPGU7%OU z)*2{hQkj_N zfh+gg8k*5SK+70L95Z@GMX{HyxT;?Rw;ZvS<=(4)iOF&VE4? z*w{Zy_J*t7-uP^WfeSX7L8g4VAefXP_v+=AO zbupvC!YwN&A|r<#pVi3@5GsBNv7#x%G_Ozg7IS)}Uc$f`U`YjCF11euWyMDJ&UrAp zv%?_dRKqovtggyzcwY9ri}4zn>Yg3dKj2%S8}kDa)e_)xRBf*2ton&--BaZz;LDx# z$?KFV_~6-J^eI_*;Ko-}ToNd4IF1cDXuiQqeUamVEjB%Fva`%> zcNq)mbWrvgx2J+AH1z8Gbo13er}B(#>IAOQ9cgSkLBr{y&x|97)n~x}@8I8Tt~Fb) z`W^`9&EFMXy0As0(Sn4i29v6{(cgfF4KiG^C@s=)QC5r`4Q~xKjVudoj_H_Yz2K~` z0^OZPAhS~aI=ik!TwJ*Qa!1HjbKa5dx_m3>N1ozTyLlpgsP&mZ7cM*5JXP+gJ{PLD z%S-exC&|n6Ki=`O=hvL=@Hn|^C7ojtT=uE**W1h6-@LzU;=I@X?`E4{6mp4bd6|6a z{C(4F?)~4jre>J!e60C-`w{@P+a6xLd~w158lIW~m$vYBJ)7!&`@SSMK4}<8|4~!gt@YHau(9{B-kv=4XrH zlNDihw|bj=kjNtNRd3@X#@rmV(cwQAB!>H-iF2uJe(1=Qv-z86tDTh^Eq^}k3q}&|+*PM& zh`e>ms<*kTxA|D(yr+HgI9lZNt8Wu|EZ+)cK6{1ihw^#!e|{EKuia=1FWFEpRt;Nt z()#S&k@8u@tD0|iYb|OQXM_ra2YcC^**A4Jd$~O*!NKrZ-;~SOC)(N#<2y+v!z-;d zznp5_F1&6-UjN}WA5Z4s8%zV!dHGX^(|a}p*{@nNY%z; zF`)wWX=TWAbn!(dE#wM51I)2yEDYAE`I%+s-5}#+eQJ?27lQSP6{N_n%}LrgrvxgW zWAlO(*_Gr|Ce`0Vn_~DXoNmIC;gN@w+arY!tg^)xs?V^qn;jjBhylM5y!dk0`Fb$d zb1>lXIsMh!!X0i%3g>M}PP%M#cyke>G?jb$%8ba&EsJcO)fZRwHnt8Q&#(CeyI5g; zgT4M>C)=>_^f%kJqD_1?I!kpG8l1@D@$0Uz?b#N#9^s!Kyt?fOS^x40!@HQZ;FY

    UGuI4Sm*qE;hd6`6Rd-%3G4acRi$~+ExfGG;kTiLcQdp>_g z7?I?ib)({kSevuF1LXtE?FjlKsgI4eHJdCSTD+Tme7p@CH9CJ%xMFu3*iWp3o%#ebXcD(*7slS z?S}0*$X3NjAs?Rvvg~}}TMy^-H0GDMA4fh=zJyvXsx zo~Txn)7YSW9s*Qi?b4Ou!G~Lh4B|~YozZ{-InO8c^gTv@R4Y3 z7mP)lf*2Cmmw)$~%o-bQnk&SQVM*TmS^dFW0 delta 11338 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 z zT*nk*aY4r8=(Oqo{WYA(q5Ws)vx|B$ucK(`ob(R)81fg170yXj$ZIvvcJ0$QwAdPKnYF{bHI+<5<$Khy%oA;@Q!guBwG+;I;MG#^=?k#}+0OX6^?zm8iJ<(&_%<22J;@biq5zfSvPqL))I zCT~vY$i+pNPs9^5sOR7n;y!sG_I1t;!@ktzu;BhPNlMW$g3!^4XhDou!Eu_XQjnP+ zZJZ1JH|2Knsl*l{kNS~w-csszL=2%LgV;lyC8`lRF6#b+IN>TqBceEQp4!Lx5@o^P zv-_#r619ngwC%#T@Dtob{7C*15k`a)IttOQ;|B47s74)(BZ>Cp#c-&`KY*k-4co8- zag+Qd;wSQ0B9HtvJb=%R)8y5O)ifmGE$0Kh&gT$!pPlH~iMDW}8}R~d-=L1En*Z}e zKjLerF$ZfBE1Y@)HYW0k2AsDM({VGghI}p-CC0P(^?8;PiOJ+paBzzCH^&CrV*aDe z`y}EU`*DNUUG}GuRebD9O)?65w?xN#Lt}c`hhoaP?7w6G> z&HX|~=Gf8cBi+MCXQmCy%E+AR4QrL^-O*}9#Yw5z|HsF+f9rL=_MdIL`Pqv)hP%9Z zoho`ub;Hf5~6JLRgc{aN=$E^q0c9lhS373~u}Yq$clveGis-C>j5!&1}J zGqT)6)7+CMr49F{^iH-n_FnC>Q~E~v+1m!pcX^WseeaDQ+`^kQB*fcdNGJQ?kjXyw zzG3@a_RO?UAFn+!+ z(zsIHr?w3nl`;9$HoNLPW`Fd8Mt=X#Id3g`&(FJX`9NoJ{vPZ_MRN-b1*r7*WDP-UNps0_77tL, jusqu'en 2004 -# Christophe Combelles , 2007, 2008, 2009 +# Christophe Combelles , 2007, 2008, 2009, 2010 # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar-1.22\n" +"Project-Id-Version: tar-1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2009-12-06 17:08+0100\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-23 01:11+0100\n" "Last-Translator: Christophe Combelles \n" "Language-Team: French \n" +"Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -87,7 +89,7 @@ msgstr "Pour en savoir davantage, faites : « %s --help » ou « %s --usage ».\ msgid "Report bugs to %s.\n" msgstr "Rapportez toute anomalie à %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Erreur système inconnue" @@ -99,8 +101,8 @@ msgstr "Afficher cette aide-mémoire" msgid "give a short usage message" msgstr "Afficher un court mode d'emploi" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NOM" @@ -138,56 +140,61 @@ msgstr "(PROGRAM ERROR) L'option devrait avoir été reconnue !?" msgid "write error" msgstr "erreur d'écriture" -#: gnu/getopt.c:531 gnu/getopt.c:547 -#, fuzzy, c-format +#: gnu/getopt.c:529 gnu/getopt.c:545 +#, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s : l'option « %s » est ambiguë\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 -#, fuzzy, c-format +#: gnu/getopt.c:578 gnu/getopt.c:582 +#, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s : l'option « --%s » n'a pas d'argument\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 -#, fuzzy, c-format +#: gnu/getopt.c:591 gnu/getopt.c:596 +#, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s : l'option « %c%s » n'a pas d'argument\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 -#, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s : l'option « %s » doit avoir un argument\n" +#: gnu/getopt.c:639 gnu/getopt.c:658 +#, c-format +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s : l'option « --%s » doit avoir un argument\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 -#, fuzzy, c-format +#: gnu/getopt.c:696 gnu/getopt.c:699 +#, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s : l'option « --%s » est inconnue\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 -#, fuzzy, c-format +#: gnu/getopt.c:707 gnu/getopt.c:710 +#, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s : l'option « %c%s » est inconnue\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 -#, fuzzy, c-format +#: gnu/getopt.c:759 gnu/getopt.c:762 +#, c-format msgid "%s: invalid option -- '%c'\n" -msgstr "%s : l'option « -- %c » n'est pas valable\n" +msgstr "%s : l'option -- '%c' n'est pas valable\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 -#, fuzzy, c-format +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 +#, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s : l'option « -- %c » a besoin d'un argument\n" +msgstr "%s : l'option -- '%c' a besoin d'un argument\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 -#, fuzzy, c-format +#: gnu/getopt.c:885 gnu/getopt.c:901 +#, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s : l'option « -W %s » est ambiguë\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 -#, fuzzy, c-format +#: gnu/getopt.c:925 gnu/getopt.c:943 +#, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s : l'option « -W %s » ne prend pas d'argument\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s : l'option « -W %s » doit avoir un argument\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "mémoire épuisée" @@ -252,12 +259,12 @@ msgstr "^[nN]" #: gnu/version-etc.c:76 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "" +msgstr "Packagé par %s (%s)\n" #: gnu/version-etc.c:79 #, c-format msgid "Packaged by %s\n" -msgstr "" +msgstr "Packagé par %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's @@ -396,33 +403,34 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: gnu/version-etc.c:247 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Report bugs to: %s\n" -msgstr "Rapportez toute anomalie à %s.\n" +msgstr "" +"\n" +"Signalez toute anomalie à : %s\n" #: gnu/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report %s bugs to: %s\n" -msgstr "Rapportez toute anomalie à %s.\n" +msgstr "Signalez les anomalies de %s à : %s\n" #: gnu/version-etc.c:253 #, c-format msgid "%s home page: <%s>\n" -msgstr "" +msgstr "Page d'accueil de %s : <%s>\n" #: gnu/version-etc.c:255 -#, fuzzy, c-format +#, c-format msgid "%s home page: \n" -msgstr "Page d'accueil de %s : .\n" +msgstr "Page d'accueil de %s : \n" #: gnu/version-etc.c:258 -#, fuzzy msgid "General help using GNU software: \n" msgstr "" -"Aide générale sur l'utilisation de programmes GNU : .\n" +"Aide générale sur l'utilisation des programmes GNU : \n" #. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. #. Directly translating this to another language will not work, first because @@ -431,7 +439,7 @@ msgstr "" #: lib/paxerror.c:58 lib/paxerror.c:71 #, c-format msgid "%s: Cannot %s" -msgstr "%s : la fonction %s a échoué" +msgstr "%s : %s impossible" #. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. #. Directly translating this to another language will not work, first because @@ -440,7 +448,7 @@ msgstr "%s : la fonction %s a échoué" #: lib/paxerror.c:84 #, c-format msgid "%s: Warning: Cannot %s" -msgstr "%s : AVERTISSEMENT : la fonction %s a échoué" +msgstr "%s : AVERTISSEMENT : %s impossible" #: lib/paxerror.c:93 #, c-format @@ -533,200 +541,195 @@ msgstr "stdout" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Impossible de se connecter à %s : échec de résolution" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Impossible de lancer un interpréteur de commandes distant" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Direction de positionnement hors plage" -#: rmt/rmt.c:419 -#, fuzzy +#: rmt/rmt.c:438 msgid "Invalid seek direction" -msgstr "Mode non valable donné en option" +msgstr "Direction de recherche non valable" -#: rmt/rmt.c:427 -#, fuzzy +#: rmt/rmt.c:446 msgid "Invalid seek offset" -msgstr "Taille non valable : %s" +msgstr "Décalage de recherche non valable" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Positionnement relatif hors plage" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 -#, fuzzy +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" -msgstr "Longueur de cartouche non valable" +msgstr "Nombre d'octets non valable" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 -#, fuzzy +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" -msgstr "Positionnement relatif hors plage" +msgstr "Nombre d'octets hors plage" -#: rmt/rmt.c:539 -#, fuzzy +#: rmt/rmt.c:558 msgid "Premature eof" -msgstr "rmtd : fin de fichier prématurée\n" +msgstr "Fin de fichier prématurée" -#: rmt/rmt.c:582 -#, fuzzy +#: rmt/rmt.c:601 msgid "Invalid operation code" -msgstr "Mode d'opération principal :" +msgstr "Code d'opération non valable" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" -msgstr "" +msgstr "Opération non prise en charge" -#: rmt/rmt.c:645 -#, fuzzy +#: rmt/rmt.c:664 msgid "Unexpected arguments" -msgstr "Fin prématurée rencontrée dans l'archive." +msgstr "Arguments inattendus" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" +"Manipule un lecteur de cartouches en acceptant des commandes d'un processus " +"distant" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "NOMBRE" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" -msgstr "" +msgstr "définit le niveau de débogage" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FICHIER" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" -msgstr "" +msgstr "définit le nom de fichier de sortie de débogage" -#: rmt/rmt.c:696 rmt/rmt.c:764 -#, fuzzy, c-format +#: rmt/rmt.c:715 rmt/rmt.c:783 +#, c-format msgid "cannot open %s" -msgstr "Impossible d'ouvrir « %s »" +msgstr "impossible d'ouvrir %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "trop d'arguments" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Commande rejetée" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Ceci ne ressemble pas à une archive de type « tar »" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Nombre total d'octets écrits" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Nombre total d'octets lus" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Nombre total d'octets effacés : %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(tube)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Valeur incorrecte pour « record_size »" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Aucun nom d'archive donné" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "" "Une archive utilisant l'entrée/sortie standard ne peut pas être vérifiée" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "L'archive est compressée. Utilisez l'option %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Une archive compressée ne peut pas être mise à jour" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Début de la cartouche atteinte ; arrêt du programme." -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Trop d'erreurs, arrêt du programme." -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Taille de l'enregistrement = %lu bloc" msgstr[1] "Taille de l'enregistrement = %lu blocs" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Bloc non aligné (%lu octet) dans l'archive" msgstr[1] "Bloc non aligné (%lu octets) dans l'archive" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Impossible de reculer dans le fichier d'archive ; il se peut qu'il soit " "illisible sans l'option « -i »" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek ne s'est pas arrêté à une limite d'enregistrement" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s : contient un numéro de volume non valable" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Débordement du numéro de volume" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Préparez le volume n°%d pour %s et appuyez sur Entrée : " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "" "Fin de fichier rencontrée alors qu'une réponse de l'utilisateur était " "attendue" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "AVERTISSEMENT : l'archive est incomplète" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -737,67 +740,67 @@ msgstr "" " q Arrêter tar\n" " y ou newline Continuer le traitement\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Générer un sous-shell\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Afficher cette liste\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Pas de nouveau volume ; fin du traitement.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Nom de fichier non spécifié. Essaye encore :).\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Données non valables en entrée. Tapez « ? » pour obtenir de l'aide.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "Échec de la commande %s" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "La suite de %s est probablement sur ce volume : l'en-tête contient un nom " "tronqué." -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "La suite de %s n'est pas sur ce volume." -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s a une taille incorrecte (%s != %s + %s)." -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Ce volume est hors séquence (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Archive non étiquetée pour correspondre à %s." -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Le volume %s ne correspond pas à %s." -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -805,7 +808,7 @@ msgstr "" "%s : nom de fichier tronqué, car trop long pour être stocké dans un en-tête " "GNU multi-volumes" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "l'écriture ne s'est pas arrêté sur une limite de bloc" @@ -816,20 +819,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Seulement %lu octet sur %lu a pu être lu" msgstr[1] "Seulement %lu octets sur %lu ont pu être lus" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Les contenus sont différents." -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Fin prématurée rencontrée dans l'archive." -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Le type de fichier est différent." -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Le mode est différent." @@ -845,150 +848,150 @@ msgstr "Le GID est différent." msgid "Mod time differs" msgstr "La date de modification est différente." -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "La taille est différente." -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "N'est pas lié à %s." -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Le lien symbolique est différent." -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Le numéro de périphérique est différent." -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Vérification " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "" "%s : type de fichier inconnu « %c », recherche de différence comme pour un " "fichier normal" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "L'archive contient des noms de fichiers dont le préfixe a été enlevé" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" "La vérification peut échouer lors de la localisation des fichier originaux." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "ÉCHEC DE VÉRIFICATION : %d en-tête non valable détecté." msgstr[1] "ÉCHEC DE VÉRIFICATION : %d en-têtes non valables détectés." -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Bloc zéro solitaire repéré à %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s : contient une étiquette de répertoire cache %s ; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "Valeur %s en dehors de la plage de %s : %s..%s ; remplacement par %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "Valeur %s en dehors de la plage de %s : %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Génération d'en-têtes octaux négatifs" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s : le nom de fichier est trop long (%d max) ; fichier non archivé" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" "%s : le nom de fichier est trop long (ne peut être scindé) ; fichier non " "archivé" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s : le nom du lien est trop long ; fichier non archivé" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s : fichier réduit de %s octet ; remplissage avec des zéros" msgstr[1] "%s : fichier réduit de %s octets ; remplissage avec des zéros" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "" "%s : le fichier est sur un système de fichiers différent ; fichier non " "archivé" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "contenu non archivé" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s : type de fichier inconnu ; fichier ignoré" -#: src/create.c:1472 -#, fuzzy, c-format +#: src/create.c:1527 +#, c-format msgid "Missing links to %s." -msgstr "Liens manquants vers %s.\n" +msgstr "Liens manquants vers %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s : le fichier n'est pas modifié ; fichier non archivé" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s : le fichier est l'archive elle-même ; fichier non archivé" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "répertoire non archivé" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s : fichier modifié pendant sa lecture" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s : socket ignorée" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s : porte ignorée" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "On saute à l'en-tête suivant" @@ -996,74 +999,74 @@ msgstr "On saute à l'en-tête suivant" msgid "Deleting non-header from archive" msgstr "Suppression d'un « non en-tête » de l'archive" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s : l'horodatage %s est trop vieux pour être plausible" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s : l'horodatage %s est situé %s secondes dans le futur." -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s : incohérence inattendue lors de la création du répertoire" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s : répertoire renommé avant l'extraction de son état" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Extraction des fichiers contigus comme des fichiers réguliers" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Tentative d'extraction des liens symboliques comme des liens physiques" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s : extraction impossible (morceau de fichier issu d'un autre volume)" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "En-tête à nom long inattendu" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s : type de fichier inconnu « %c », extrait comme un fichier normal." -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Le %s actuel est au moins aussi récent" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s : impossible d'archiver ce fichier." -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Impossible de renommer %s en %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s : le répertoire a été renommé depuis %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s : le répertoire a été renommé." -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s : le répertoire est nouveau." @@ -1174,36 +1177,36 @@ msgstr "%s : suppression de %s\n" msgid "%s: Cannot remove" msgstr "%s : suppression impossible" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s : omis" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "bloc %s : ** Bloc de NULs **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "bloc %s : ** Fin de fichier **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "bloc %s : " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "" "Blancs dans l'en-tête alors qu'une valeur numérique de type %s était attendue" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1211,27 +1214,27 @@ msgstr "" "complément à 2 supposé" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "La valeur octale de l'archive %.*s est en dehors de la plage de %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "L'archive contient des en-têtes obsolètes en base 64." -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Une chaîne en base 64 signée %s de l'archive est hors de la plage %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Une valeur en base 256 de l'archive est en dehors de la plage %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "" @@ -1239,122 +1242,121 @@ msgstr "" "attendue." #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "La valeur de l'archive %s est hors des limites de %s : %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " lien vers %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " type de fichier inconnu %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Lien long--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Nom long--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--En-tête de volume--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Suite à l'octet %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Création du répertoire :" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Impossible de changer le répertoire de travail" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "%s renommé en %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s : impossible de renommer en %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "%s finalement renommé en %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Le répertoire de travail ne peut pas être sauvegardé" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Impossible de changer le répertoire de travail" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s : fichier supprimé avant d'avoir été lu" -#: src/misc.c:774 -#, fuzzy, c-format +#: src/misc.c:866 +#, c-format msgid "%s: Directory removed before we read it" -msgstr "%s : fichier supprimé avant d'avoir été lu" +msgstr "%s : Répertoire supprimé avant d'avoir été lu" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "processus enfant" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "canal inter-processus" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -"Caractères de correspondance de motif utilisé dans le nom de fichier. " -"Veuillez " +"Caractères de correspondance de motif utilisé dans les noms de fichiers." -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -"utiliser « --wildcards » pour activer la correspondance de motif ou « --no-" -"wildcards » pour" +"Utilisez « --wildcards » pour activer la correspondance de motif ou « --no-" +"wildcards » pour supprimer cet avertissement" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s : non trouvé dans l'archive" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s : occurence requise non trouvée dans l'archive" -#: src/names.c:894 -#, fuzzy +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Mauvaise correspondance d'étiquette d'archive" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" -msgstr "--preserve-order n'est pas compatible avec --listed-incremental" +msgstr "" +"L'utilisation de l'option -C à l'intérieur de la liste de fichiers n'est pas " +"permise avec --listed-incremental" -#: src/names.c:900 -#, fuzzy +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" -msgstr "--preserve-order n'est pas compatible avec --listed-incremental" +msgstr "Une seule option -C est autorisée avec --listed-incremental" #: src/tar.c:81 #, c-format @@ -1380,7 +1382,7 @@ msgstr "" "Type de protection de caractères inconnu « %s ». Essayez « %s --quoting-" "style=help » pour avoir une liste." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1401,7 +1403,7 @@ msgstr "" "manière détaillée.\n" " tar -xf archive.tar # Extrait tous les fichiers de archive.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1414,92 +1416,92 @@ msgid "" msgstr "" "Le suffixe de sauvegarde est « ~ », à moins qu'il ne soit défini avec « --" "suffix » ou SIMPLE_BACKUP_SUFFIX.\n" -"Le contrôle de version peut être défini avec « --backup » ou VERSION_CONTROL, " -"les valeurs sont :\n" +"Le contrôle de version peut être défini avec « --backup » ou " +"VERSION_CONTROL, les valeurs sont :\n" "\n" " none, off Ne jamais faire de sauvegarde.\n" " t, numbered Faire des sauvegardes numérotées.\n" " nil, existing Numérotées si déjà numérotées, sinon simples.\n" " never, simple Faire toujours des sauvegardes simples.\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Mode d'opération principal :" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "Afficher le contenu de l'archive" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "Extraire les fichiers de l'archive" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "Créer une nouvelle archive" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "Trouver les différences entre l'archive et le système de fichiers" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "Ajouter des fichiers à la fin de l'archive" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" "Ajouter seulement les fichiers plus récents que les copies présentes dans " "l'archive" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "Ajouter des fichiers tar à une archive" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "Effacer de l'archive (pas sur les bandes magnétiques !)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "Tester l'étiquette du volume d'archive et terminer" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Modificateurs d'opération :" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" "Économiser efficacement l'espace dans les fichiers dispersés (fichiers à " "trous)" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAJEUR[.MINEUR]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" "Définir la version du format de dispersion à utiliser (implique « --sparse »)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "Prendre en charge les sauvegardes incrémentales à l'ancien format GNU" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "Prendre en charge les sauvegardes incrémentales au nouveau format GNU" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" -msgstr "" +msgstr "niveau de vidage d'archive incrémentale au nouveau format GNU" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "Ne pas s'arrêter à cause des non-zéros sur les fichiers illisibles" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1512,167 +1514,168 @@ msgstr "" "fichiers est fournie soit sur la ligne de commande, soit avec l'option « -T " "». NOMBRE vaut 1 par défaut." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "L'archive peut être parcourue" -#: src/tar.c:436 -#, fuzzy +#: src/tar.c:437 msgid "archive is not seekable" -msgstr "L'archive peut être parcourue" +msgstr "L'archive ne peut pas être parcourue" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" "Ne pas vérifier les numéros de périphériques lors de la création d'archives " "incrémentales" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "vérifier les numéros de périphériques lors de la création d'archives " "incrémentales (par défaut)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Contrôle de l'écrasement :" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "Tenter de vérifier l'archive après écriture" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "Supprimer les fichiers après les avoir ajoutés à l'archive" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "Ne pas écraser les fichiers préexistants lors de l'extraction" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "Ne pas écraser les fichier préexistants qui sont plus récents que leur copie " "dans l'archive" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "Écraser les fichiers préexistants lors de l'extraction" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "Effacer chaque fichier préexistant avant l'extraction" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "Vider les hiérarchies avant d'extraire les répertoires" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "Préserver les métadonnées des répertoires préexistants" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "Écraser les métadonnées des répertoires préexistants lors de l'extraction " "(comportement par défaut)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Choix du flux de sortie :" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "Extraire les fichiers vers la sortie standard" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "COMMANDE" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "Renvoyer par tube les fichiers extraits vers un autre programme" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "Ignorer les codes de retour des processus enfants" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" "Traiter les codes de retours non nuls des processus enfants comme des erreurs" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Traitement des attributs de fichiers :" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "Utiliser NOM comme propriétaire des fichiers ajoutés" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "Utiliser NOM comme groupe des fichiers ajoutés" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATE-OU-FICHIER" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" "Définir la date de modification des fichiers ajoutés avec DATE-OU-FICHIER" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "CHANGEMENTS" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" "Utiliser les CHANGEMENTS de mode (symboliques) pour les fichiers ajoutés" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "MÉTHODE" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" "Préserve la date d'accès des fichiers archivés, soit en la restaurant après " -"lecture (MÉTHODE = « replace » par défaut) ou en ne définissant pas les dates " -"initialement (MÉTHODE = « system »)" +"lecture (MÉTHODE = « replace » par défaut) ou en ne définissant pas les " +"dates initialement (MÉTHODE = « system »)" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "Ne pas extraire la date de modification du fichier" -#: src/tar.c:504 -#, fuzzy +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" -msgstr "Essayer d'extraire les fichiers avec le même propriétaire" +msgstr "" +"essayer d'extraire les fichiers avec le même propriétaire que dans l'archive " +"(par défaut pour le superutilisateur)" -#: src/tar.c:506 -#, fuzzy +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" -msgstr "Vous approprier les fichiers extraits" +msgstr "" +"S'approprier les fichiers lors de l'extraction (par défaut pour les " +"utilisateurs ordinaires)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "Toujours utiliser les valeurs numériques des utilisateurs/groupes" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "Extraire les informations de permissions sur les fichiers (par défaut pour " "le superutilisateur)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1680,15 +1683,15 @@ msgstr "" "Appliquer l'umask de l'utilisateur lors de l'extraction des permissions (par " "défaut pour les utilisateurs normaux)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "Trier les noms à extraire dans le même ordre que l'archive" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "Équivalent à « -p -s » à la fois" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1696,139 +1699,139 @@ msgstr "" "Reporter à la fin de l'extraction le changement des dates de modification et " "des permissions des répertoires extraits" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "Annule l'effet de l'option « --delay-directory-restore »" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Sélection et option de périphérique :" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIVE" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "Utiliser le fichier ou le périphérique ARCHIVE" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "Le fichier d'archive est local même si « : » a été spécifié" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "Utiliser la COMMANDE rmt fournie au lieu de rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "Utiliser la COMMANDE distante à la place de rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "Spécifier le lecteur et la densité" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "Créer/lister/extraire une archive multi-volumes" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "Changer de cartouche après avoir écrit NOMBRE x 1024 octets" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "Exécuter le script à la fin de chaque cartouche (implique « -M »)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "Utiliser/mettre à jour le numéro de volume dans le FICHIER" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Blocs du périphérique :" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOCS" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOCS x 512 octets par enregistrement" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "NOMBRE d'octets par enregistrement (multiple de 512)" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "Ignorer les blocs de zéros dans l'archive (càd EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "Refaire les blocs pendant la lecture (pour les tubes BSD 4.2)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Sélection du format d'archive :" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMAT" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "Créer l'archive au format désiré." -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMAT peut prendre une des valeurs suivantes :" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "Vieux format tar V7" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "Format GNU issu de tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "Format GNU tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "Format POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "Format POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "Identique à pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "Identique à « --format=v7 »" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "Identique à « --format=posix »" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "mot_clé[[:]=valeur][,mot_clé[[:]=valeur]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "Mots-clés de contrôle pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEXTE" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1837,85 +1840,85 @@ msgstr "" "l'extraction, utiliser le TEXTE comme motif de correspondance (glob) au nom " "de volume." -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Options de compression :" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" "Utiliser le suffixe de l'archive pour déterminer le programme de compression" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" "Ne pas utiliser l'extension du fichier d'archive pour déterminer le " "programme de compression" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "Filtrer à travers le PROG (doit accepter l'option « -d »)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Sélection des fichiers locaux :" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "Ajouter le FICHIER donné à l'archive (utile si son nom commence par un tiret)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "RÉP" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "Utiliser RÉP comme répertoire de travail" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "Lire depuis le FICHIER la liste des noms à extraire ou à créer" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -"« -T » permet de lire les noms terminés par un NULL et désactive l'option « -C " -"»" +"« -T » permet de lire les noms terminés par un NULL et désactive l'option « -" +"C »" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "désactive l'effet de l'option --null précédente" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -"Enlever la protection de caractères des noms de fichiers lus avec « -T » (par " -"défaut)" +"Enlever la protection de caractères des noms de fichiers lus avec « -T " +"» (par défaut)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -"Ne pas enlever la protection de caractères des noms de fichiers lus avec « -T " -"»" +"Ne pas enlever la protection de caractères des noms de fichiers lus avec « -" +"T »" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "MOTIF" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "Exclure les fichiers correspondant au MOTIF" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "Exclure les motifs listés dans le FICHIER" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1923,99 +1926,99 @@ msgstr "" "Exclure le contenu des répertoires contenant CACHEDIR.TAG, sauf le fichier " "de tag lui-même" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "Tout exclure dans les répertoires contenant CACHEDIR.TAG" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "Exclure les répertoires contenant CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" "Exclure le contenu des répertoires contenant le FICHIER, sauf le FICHIER lui-" "même" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "Tout exclure dans les répertoires contenant le FICHIER" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "Exclure les répertoires contenant le FICHIER" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "Exclure les répertoires de contrôle de version (CVS, .svn, etc.)" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" -msgstr "" +msgstr "exclure les fichiers de sauvegarde et de verrou" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "Empêcher la descente automatique dans les sous-répertoires" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" "Rester dans le système de fichiers local lors de la création de l'archive" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "Parcourir les sous-répertoires de manière récursive (par défaut)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "Ne pas enlever le « / » au début des noms de fichiers" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "Suivre les liens symboliques ; archiver les fichiers vers lesquels ils " "pointent" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" "Suivre les liens physiques : archiver les fichiers vers lesquels ils pointent" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "NOM-DE-MEMBRE" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "Débuter au NOM-DE-MEMBRE dans l'archive" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "Stocker seulement les fichiers plus récents que DATE-OU-FICHIER" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATE" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "Ne comparer que la date et l'heure de modification des données" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "CONTRÔLE" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" "Faire une copie de sauvegarde avant suppression, choisir le CONTRÔLE de " "version" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "CHAÎNE" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -2024,109 +2027,108 @@ msgstr "" "habituel (« ~ » sauf s'il est définit par la variable d'environnement " "SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Transformation des noms de fichiers :" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" "Supprimer NOMBRE composants au début des noms de fichiers à l'extraction" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "EXPRESSION" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" "Utiliser l'EXPRESSION de remplacement « sed » pour transformer les noms de " "fichiers" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Options de correspondance de noms de fichiers (pour les motifs d'exclusion " "et d'inclusion)" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "Ignorer la casse (majuscules/minuscules)" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "Les motifs doivent correspondre au début des noms de fichiers" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" "Les motifs peuvent correspondre après n'importe quel « / » (par défaut pour " "l'exclusion)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "Correspondance sensible à la casse (comportement par défaut)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" "Utiliser des caractères de correspondance (par défaut pour l'exclusion)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "Correspondance exacte de chaîne" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "« / » ne correspond à aucun caractère de correspondance" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" "« / » peut correspondre à un caractère de correspondance (par défaut pour " "l'exclusion)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Options d'affichage :" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "Afficher de manière détaillée les fichiers traités" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" -msgstr "" +msgstr "MOTCLÉ" -#: src/tar.c:740 -#, fuzzy +#: src/tar.c:741 msgid "warning control" -msgstr "Contrôle de l'écrasement :" +msgstr "Contrôle d'avertissement" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" "Afficher un message de progression tous les NOMBRE enregistrements (10 par " "défaut)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "ACTION" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "exécuter l'ACTION à chaque point de contrôle" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" "Afficher un message si tous les liens n'ont pas pu être suivis et archivés" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SIGNAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2138,27 +2140,31 @@ msgstr "" "sont : SIGHUP, SIGQUIT, SIGINT, SIGUSR1 et SIGUSR2. Les noms sans préfixe « " "SIG » sont aussi acceptés" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "Afficher les dates de modification de fichier en UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "afficher l'heure du fichier en pleine résolution" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "Envoyer la sortie détaillée vers le FICHIER" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "Afficher le numéro du bloc de l'archive avec chaque message" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "Demander confirmation pour chaque action" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "Afficher les paramètres par défaut de tar" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2166,33 +2172,33 @@ msgstr "" "Lors du listage ou de l'extraction, lister chaque répertoire qui ne concorde " "pas avec le critère de recherche" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "Afficher les noms des fichiers ou des archives après transformation" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STYLE" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" "Définir le style de protection de caractères appliqués aux noms. Voir ci-" "dessous pour les valeurs du STYLE" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "Protéger aussi les caractères faisant partie de la CHAÎNE" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "Enlever la protection des caractères faisant partie de la CHAÎNE" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Options de compatibilité :" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2200,64 +2206,64 @@ msgstr "" "Lors de la création, identique à « --old-archive ». Lors de l'extraction, " "identique à « --no-same-owner »" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Autres options :" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "Désactiver certaines options potentiellement néfastes" -#: src/tar.c:927 -#, fuzzy +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" -msgstr "Vous ne pouvez pas sélectionner plus d'une option parmi « -Acdtrux »" +msgstr "" +"Vous ne pouvez pas sélectionner plus d'une option parmi « -Acdtrux » ou « --" +"test-label »" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Options de compression non compatibles entre elles" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Type de signal inconnu : %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Fichier d'échantillon de date non trouvé" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Remplacement par %s du format de date inconnu %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Option %s : date « %s » traitée comme %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s : la liste de fichiers est déjà lue" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s : le nom de fichier lu contient un caractère nul" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 -#, fuzzy, c-format +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 +#, c-format msgid "filter the archive through %s" -msgstr "Filtrer l'archive à travers « xz »" +msgstr "Filtrer l'archive à travers %s" -#: src/tar.c:1290 -#, fuzzy +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" -msgstr "Les arguments valables pour les options « --quoting-style » sont :" +msgstr "Les arguments valables pour l'option « --quoting-style » sont :" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2265,54 +2271,52 @@ msgstr "" "\n" "Les valeurs par défaut de *ce* tar sont :\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Facteur de bloc non valable" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Longueur de cartouche non valable" -#: src/tar.c:1511 -#, fuzzy +#: src/tar.c:1529 msgid "Invalid incremental level value" -msgstr "Mauvais format de fichier incrémental" +msgstr "Mauvaise valeur pour le niveau incrémental" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Plus d'une date seuil" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Version de la dispersion non valable" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" "--atime-preserve='system' n'est pas pris en charge sur cette plateforme" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "la valeur de « --checkpoint » n'est pas un entier" -#: src/tar.c:1830 -#, fuzzy +#: src/tar.c:1848 msgid "Invalid group" -msgstr "%s : groupe non valable" +msgstr "Groupe non valable" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Mode non valable donné en option" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Nombre non valable" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Propriétaire non valable" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2320,69 +2324,69 @@ msgstr "" "L'option --preserve est obsolète, utilisez --preserve-permissions --preserve-" "order à la place" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Taille d'enregistrement non valable" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "La taille d'un enregistrement doit être un multiple de %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Nombre d'éléments incorrect" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Une seule option « --to-command » est permise" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Argument de densité incorrect : %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Densité inconnue : « %c »" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Les options « -[0-7][lmh] » ne sont pas prises en charge par *ce* tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FICHIER]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "L'ancienne option « %c » a besoin d'un argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence n'a pas de sens sans une liste de fichiers" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" -msgstr "« --occurrence » ne peut être utilisée dans le mode d'opération demandé" +msgstr "" +"« --occurrence » ne peut être utilisée dans le mode d'opération demandé" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Les fichiers d'archives multiples ont besoin de l'option « -M »" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Impossible de combiner « --listed-incremental » avec « --newer »" -#: src/tar.c:2387 -#, fuzzy +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" -msgstr "--preserve-order n'est pas compatible avec --listed-incremental" +msgstr "--level n'a aucun sens sans --listed-incremental" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2391,50 +2395,49 @@ msgstr[0] "" msgstr[1] "" "%s: l'étiquette du volume est trop longue (la limite est %lu octets)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Impossible de vérifier des archives multi-volumes" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Impossible de vérifier des archives compressées" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Impossible d'utiliser des archives multi-volumes compressées" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Impossible de concaténer des archives compressées" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option peut être utilisée uniquement avec des archives POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" "La longueur du volume ne peut pas être inférieure à la taille de " "l'enregistrement" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order n'est pas compatible avec --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Je refuse de créer un fichier d'archive vide (oui je suis lâche)" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Les options « -Aru » sont incompatibles avec « -f - »" -#: src/tar.c:2592 -#, fuzzy +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" -msgstr "Vous devez choisir une des options « -Acdtrux » " +msgstr "Vous devez choisir une option parmi « -Acdtrux » ou « --test-label »" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Arrêt avec code d'échec à cause des erreurs précédentes" @@ -2446,57 +2449,56 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s : fichier réduit de %s octet" msgstr[1] "%s: fichier réduit de %s octets" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Le mot clé %s est inconnu ou n'est pas encore implémenté" -#: src/xheader.c:173 -#, fuzzy +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" -msgstr "Nombre en dehors de la plage permise : %s" +msgstr "L'horodatage est en dehors de la plage permise" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Le motif %s ne peut être utilisé" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Le mot clé %s ne peut pas être surdéfini" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "En-tête étendu incorrect : longueur manquante" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "La longueur de l'en-tête étendu est hors plage" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "La longueur de l'en-tête étendu %*s est hors plage" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "En-tête étendu incorrect : espace blanche manquante après la longueur" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "En-tête étendu incorrect : signe d'égalité manquant" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "En-tête étendu incorrect : retour à la ligne manquant" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Le mot clé inconnu « %s » pour l'en-tête étendu a été ignoré" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" @@ -2504,27 +2506,27 @@ msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "L'en-tête étendu %s=%s est hors plage %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "En-tête étendu incorrect : %s=%s non valable" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "En-tête étendu incorrect : %s=%s en trop" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "En-tête étendu incorrect : %s non valable : délimiteur %c non prévu" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "En-tête étendu incorrect : %s non valable : nombre impair de valeurs" @@ -2565,7 +2567,7 @@ msgstr "Point de contrôle d'écriture %u" msgid "Read checkpoint %u" msgstr "Point de contrôle de lecture %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2574,98 +2576,96 @@ msgstr "" "GNU paxutils.\n" "Les options sont :\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Options de création de fichier :" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "TAILLE" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Créer le fichier à la TAILLE donnée" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Écrire dans le fichier NOM, plutôt que sur la sortie standard" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Lire les noms de fichier depuis le FICHIER" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T permet de lire les noms terminés par un NULL" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Remplir le fichier avec le MOTIF donné. MOTIF est « default » ou « zeros »" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Taille d'un bloc pour le fichier dispersé" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Générer un fichier dispersé (avec des trous). Le reste de la ligne de " "commande définit la carte du fichier." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "DÉCALAGE" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Se déplacer du DÉCALAGE donné avant d'écrire des données" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Options des statistiques de fichiers :" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Afficher le contenu des structures « stat » pour chaque fichier donné. Le " "FORMAT par défaut est :" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Options d'exécution synchrone :" -#: tests/genfile.c:164 -#, fuzzy +#: tests/genfile.c:163 msgid "OPTION" -msgstr " [OPTION...]" +msgstr "OPTION" -#: tests/genfile.c:165 -#, fuzzy +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -"Exécuter la COMMANDE donnée. Utile avec « --checkpoint » et l'une des options " -"« --cut », « --append » ou « --touch »" +"Exécuter les ARGS. Utile avec « --checkpoint » et l'une des options « --cut " +"», « --append », « --touch » ou « --unlink »" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "Exécuter l'action donnée (voir plus bas) dès qu'un point de contrôle NOMBRE " "est atteint" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Définir la date pour la prochaine option « --touch »" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" "Afficher les points de contrôle exécutés et les codes de sortie de la " "COMMANDE" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2673,7 +2673,7 @@ msgstr "" "Actions d'exécution synchrone. Celles-ci sont exécutées lorsque le numéro du " "point de contrôle donné par « --checkpoint » est atteint." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2681,145 +2681,148 @@ msgstr "" "Tronquer le FICHIER à la taille donnée par la précédente option « --length " "» (ou 0 si elle n'est pas fournie)." -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "Ajouter TAILLE octets au FICHIER. La TAILLE est fournie par la précédente " "option « --length »" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Mettre à jour les dates d'accès et de modification du FICHIER" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Exécuter la COMMANDE" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" -msgstr "" +msgstr "Supprimer FICHIER" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Taille non valable : %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Nombre en dehors de la plage permise : %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Taille négative : %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "La fonction stat(%s) a échoué" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "taille de fichier demandée : %lu, taille réelle : %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "le fichier créé n'est pas dispersé" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Erreur à la lecture du nombre près de « %s »" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Format de date inconnu" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGS...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "Impossible d'ouvrir « %s »" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "Impossible à parcourir" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "Le nom de fichier contient un caractère nul" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "Un fichier dispersé ne peut pas être généré sur la sortie standard. Utilisez " "l'option « --file »" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "Masque incorrect (près de « %s »)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Champ inconnu « %s »" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "Impossible de définir la date de « %s »" -#: tests/genfile.c:700 -#, fuzzy, c-format +#: tests/genfile.c:699 +#, c-format msgid "cannot unlink `%s'" -msgstr "Impossible d'ouvrir « %s »" +msgstr "Impossible de supprimer « %s »" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "La commande s'est terminée correctement\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "La commande a échoué avec le code %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "La commande s'est terminée sur le signal %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "La commande s'est interrompue sur le signal %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "La commande a généré un core dump\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "La commande s'est terminée\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat nécessite un nom de fichier" +#~ msgid "Cannot save working directory" +#~ msgstr "Le répertoire de travail ne peut pas être sauvegardé" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s : l'option « -- %c » n'est pas permise\n" diff --git a/po/ga.gmo b/po/ga.gmo index c5106d3b5ca65c560578334f0e3442715313e29d..96a04199296d011c092a2fd319dc04a24db8d802 100644 GIT binary patch delta 10634 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 CypkLM delta 10848 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, 2003, 2004, 2006, 2007, 2008, 2009. +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.22\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2009-03-25 20:27-0600\n" "Last-Translator: Kevin Scannell \n" "Language-Team: Irish \n" +"Language: ga\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -88,7 +90,7 @@ msgstr "" msgid "Report bugs to %s.\n" msgstr "Seol tuairiscí fabhtanna chuig %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Earráid anaithnid chórais" @@ -100,8 +102,8 @@ msgstr "taispeáin an chabhair seo" msgid "give a short usage message" msgstr "taispeáin beagán eolais faoin úsáid" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "AINM" @@ -140,56 +142,61 @@ msgstr "" msgid "write error" msgstr "earráid sa scríobh" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: Tá an rogha `%s' débhríoch\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `--%s'\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `%c%s'\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: tá argóint de dhíth i ndiaidh na rogha `%s'\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: rogha anaithnid `--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: rogha anaithnid `%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: rogha neamhbhailí -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: tá argóint de dhíth i ndiaidh na rogha -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: Tá an rogha `-W %s' débhríoch\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `-W %s'\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: tá argóint de dhíth i ndiaidh na rogha `%s'\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "cuimhne ídithe" @@ -548,144 +555,144 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Ní féidir cianbhlaosc a rith" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Treo 'seek' as raon" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Mód neamhbhailí ar rogha" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Méid neamhbhailí: %s" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Fritháireamh 'seek' as raon" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Fad téipe neamhbhailí" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Fritháireamh 'seek' as raon" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Comhadchríoch gan choinne\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Príomh-mhód oibre:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Comhadchríoch gan choinne" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "UIMHIR" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "COMHAD" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "ní féidir `%s' a oscailt" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "an iomarca argóintí" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Ordú dramhaíola" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Ní cosúil le cartlann `tar' é seo" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Bearta scríofa go hiomlán" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Bearta léite go hiomlán" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Bearta scriosta go hiomlán: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(píopa)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Luach neamhbhailí do record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Ní thugtar ainm na cartlainne" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Ní féidir cartlann stdin/stdout a fhíorú" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Is cartlann chomhbhrúite í seo. Úsáid an rogha %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Ní féidir cartlanna comhbhrúite a nuashonrú" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Tosach na téipe, ag scor anois" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "An iomarca earráidí, ag scor" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" @@ -695,7 +702,7 @@ msgstr[2] "Méid taifid = %lu bhloc" msgstr[3] "Méid taifid = %lu mbloc" msgstr[4] "Méid taifid = %lu bloc" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" @@ -705,38 +712,38 @@ msgstr[2] "Bloc neamhailínithe (%lu bheart) sa chartlann" msgstr[3] "Bloc neamhailínithe (%lu mbeart) sa chartlann" msgstr[4] "Bloc neamhailínithe (%lu beart) sa chartlann" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Ní féidir an chartlann a chúlú; is dócha gur doléite í gan -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "Níor stopadh rmtlseek ag teorainn taifid" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: tá uimhir imleabhair neamhbhailí ann" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Uimhir imleabhair thar maoil" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "" "Socraigh an t-imleabhar #%d le haghaidh %s agus brúigh an eochair iontrála: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Fuarthas comhadchríoch in áit freagra ón úsáideoir" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "RABHADH: Tá an chartlann neamhiomlán" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -748,67 +755,67 @@ msgstr "" " q Tobscoir tar\n" " y nó líne nua Lean ar aghaidh\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Sceith fobhlaosc\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Priontáil an liosta seo\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Níl aon imleabhar nua; ag scor.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Ainm an chomhaid gan sonrú. Bain triail eile as.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Ionchur neamhbhailí. Iontráil ? chun cabhair a fháil.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "Theip ar ordú %s" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "Seans go leanann %s ar aghaidh ar an imleabhar seo: tá ainm teasctha sa " "cheanntásc" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "Ní leanann %s ar an imleabhar seo" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "Níl %s an méid ceart (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Tá an t-imleabhar seo as ord (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Lipéad ar chartlann nach comhoiriúnaithe le %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Níl an t-imleabhar %s comhoiriúnaithe le %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -816,7 +823,7 @@ msgstr "" "%s: ní féidir an comhadainm seo a stóráil i gceanntásc il-imleabhar GNU; " "teasctha" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "níor stop an scríobh ag teorainn bhloic" @@ -830,20 +837,20 @@ msgstr[2] "Níorbh fhéidir ach %lu de %lu bheart a léamh" msgstr[3] "Níorbh fhéidir ach %lu de %lu mbeart a léamh" msgstr[4] "Níorbh fhéidir ach %lu de %lu beart a léamh" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Tá difríocht idir na hábhair" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Comhadchríoch gan choinne i gcartlann" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Tá difríocht idir na cineálacha comhaid" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Tá difríocht idir na móid" @@ -859,42 +866,42 @@ msgstr "Tá difríocht idir na GIDanna" msgid "Mod time differs" msgstr "Tá difríocht idir na hamanna modhnaithe" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Tá difríocht idir na méideanna" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Ní ceangailte le %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Tá difríocht idir na naisc shiombalacha" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Tá difríocht idir na huimhreacha gléis" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Fíoraigh " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Cineál anaithnid comhaid `%c', déan diff mar ghnáthchomhad" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Tá comhaid sa chartlann agus a réimíreanna scriosta." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Nach féidir i gcónaí na bunchomhaid a aimsiú agus le linn fíoraithe." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" @@ -904,46 +911,46 @@ msgstr[2] "THEIP AR DHEIMHNIÚ: aimsíodh %d cheanntásc neamhbhailí" msgstr[3] "THEIP AR DHEIMHNIÚ: aimsíodh %d gceanntásc neamhbhailí" msgstr[4] "THEIP AR DHEIMHNIÚ: aimsíodh %d ceanntásc neamhbhailí" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Bloc nialasach scoite ag %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: tá clib chomhadlainne taisce %s ann; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "tá an luach %s as raon %s: %s..%s; ag cur %s ina ionad" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "tá an luach %s as raon %s: %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Ceanntásca ochtnártha diúltacha á gcruthú" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: ainm comhaid rófhada (uasmhéid %d); gan dumpáil" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: ainm comhaid rófhada (ní féidir é a scoilt); gan dumpáil" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: ainm naisc rófhada; gan dumpáil" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" @@ -953,55 +960,55 @@ msgstr[2] "%s: %s bheart níos lú sa chomhad; ag stuáil le nialais" msgstr[3] "%s: %s mbeart níos lú sa chomhad; ag stuáil le nialais" msgstr[4] "%s: %s beart níos lú sa chomhad; ag stuáil le nialais" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: is ar chóras comhad eile é an comhad; gan dumpáil" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "ábhar gan dumpáil" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Cineál anaithnid comhaid; ag déanamh neamhshuim air" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "Naisc le %s ar iarraidh.\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: comhad gan athrú; gan dumpáil" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: is ionann é agus an chartlann féin; gan dumpáil" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "níor dumpáladh an chomhadlann" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: athraíodh an comhad agus á léamh" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: rinneadh neamhshuim ar an soicéad" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: rinneadh neamhshuim ar an doras" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Ag bogadh go dtí an chéad cheanntásc eile" @@ -1009,76 +1016,76 @@ msgstr "Ag bogadh go dtí an chéad cheanntásc eile" msgid "Deleting non-header from archive" msgstr "Comhad nach ceanntásc á scriosadh ón chartlann" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: ní dócha go bhfuil an stampa ama ársa %s ceart" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: tá an stampa ama %s %s soicind amach anseo" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Bunoscionntacht gan choinne agus comhadlann á cruthú" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "" "%s: Athainmníodh an chomhadlann sularbh fhéidir a stádas a bhaint amach" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Comhaid theorantacha á mbaint amach mar ghnáthchomhaid" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "" "Ag déanamh iarracht ar naisc shiombalacha a bhaint amach mar naisc chrua" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Ní féidir an comhad a bhaint amach -- ar lean ó imleabhar eile" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Ceanntásc ainm fada gan choinne" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Cineál anaithnid comhaid `%c', á bhaint amach mar ghnáthchomhad" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Tá an %s reatha níos nuaí nó ar comhaois" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Níorbh fhéidir cúltaca a dhéanamh" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Ní féidir %s a athainmniú go %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Athainmníodh an chomhadlann ó %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Athainmníodh an chomhadlann" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Comhadlann nua" @@ -1190,35 +1197,35 @@ msgstr "%s: %s á scriosadh\n" msgid "%s: Cannot remove" msgstr "%s: Ní féidir scriosadh a dhéanamh" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: ag fágáil ar lár" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "bloc %s: ** bloc de NULanna **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "bloc %s: ** Deireadh comhaid **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "bloc %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Bearnaí sa cheanntásc; ag súil le luach uimhriúil %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1226,141 +1233,143 @@ msgstr "" "ag glacadh le comhlánú dénártha" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Tá an luach ochtnártha %.*s as raon %s sa chartlann" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Tá ceanntásca le bunuimhir 64 i léig sa chartlann" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Teaghrán %s le sín agus bunuimhir 64 as raon %s sa chartlann" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Tá an luach le bunuimhir 256 as raon %s sa chartlann" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Tá %.*s sa chartlann; ag súil le luach uimhriúil %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Tá an luach cartlainne %s as raon %s: %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " nasc le %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " cineál anaithnid comhaid %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Nasc Fada--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Ainm Fada--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Ceanntásc Imleabhair--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Ar lean ag beart %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Comhadlann á cruthú:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Ní féidir an chomhadlann reatha a athrú" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "%s á athainmniú go %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Ní féidir athainmniú go %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "%s á athainmniú go %s arís\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Ní féidir an chomhadlann reatha a shábháil" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Ní féidir an chomhadlann reatha a athrú" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Scriosadh an comhad sular léadh é" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Scriosadh an comhad sular léadh é" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "macphróiseas" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "bealach idir próisis" -#: src/names.c:601 +#: src/names.c:594 #, fuzzy msgid "Pattern matching characters used in file names" msgstr "Aimsíodh saoróga in ainmneacha comhaid." -#: src/names.c:603 +#: src/names.c:596 #, fuzzy msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "Úsáid --wildcards chun comhoiriúnú patrún a chumasú, nó --no-wildcards" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Ní sa chartlann é" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Níl rud riachtanach sa chartlann" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Lipéad ar chartlann nach comhoiriúnaithe le %s" + +#: src/names.c:953 #, fuzzy msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "Níl --preserve-order comhoiriúnach do --listed-incremental" -#: src/names.c:900 +#: src/names.c:959 #, fuzzy msgid "Only one -C option is allowed with --listed-incremental" msgstr "Níl --preserve-order comhoiriúnach do --listed-incremental" @@ -1387,7 +1396,7 @@ msgstr "" "Stíl anaithnid athfhriotail `%s'. Bain triail as `%s --quoting-style=help' " "chun liosta a fheiceáil." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1407,7 +1416,7 @@ msgstr "" "(foclach).\n" " tar -xf cartlann.tar # Bain gach comhad amach as cartlann.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1429,80 +1438,80 @@ msgstr "" "bhfuil\n" " never, simple déan cúltacaí simplí i gcónaí\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Príomh-mhód oibre:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "taispeáin an t-ábhar i gcartlann" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "bain comhaid as cartlann" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "cruthaigh cartlann nua" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "taispeáin difríochtaí idir cartlann agus córas comhaid" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "iarcheangail le deireadh cartlainne" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "ná hiarcheangail ach comhaid mhionathraithe leis an gcartlann" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "iarcheangail comhaid tar le cartlann" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "scrios as an gcartlann (nach ar théipeanna maighnéadacha!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "tástáil lipéad imleabhair na cartlainne agus scoir" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Mionathraitheoirí oibríochta:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "caith le gannchomhaid go héifeachtach" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "PRÍOMH[.MION]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" "socraigh leagan fhormáid na ngannchomhad le húsáid (--sparse intuigthe)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "déan cúltaca incriminteach de shean-nós GNU" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "déan cúltaca incriminteach nua-aoise GNU" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "ná scoir le stádas earráide má tá comhad doléite ann" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1514,126 +1523,126 @@ msgstr "" "extract nó --list agus nuair a thugtar liosta comhad ar líne na n-orduithe " "nó leis an rogha -T; de réir réamhshocraithe UIMHIR=1" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "tá an chartlann inchuardaithe" -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "tá an chartlann inchuardaithe" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" "ná seiceáil uimhreacha gléasanna agus cartlanna incriminteacha á gcruthú" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "seiceáil uimhreacha gléasanna agus cartlanna incriminteacha á gcruthú " "(réamhshocrú)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Rialú forscríofa:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "fíoraigh an chartlann i ndiaidh ag scríobh" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "scrios comhaid i ndiaidh iad a chur leis an gcartlann" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "ná forscríobh comhaid atá ann le linn baint amach" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "ná forscríobh comhaid atá ann má tá siad níos nuaí ná na cinn sa chartlann" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "forscríobh comhaid atá ann le linn baint amach" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "scrios gach comhaid sula scríobhtar air" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "folmhaigh géagchóras sula mbaintear comhadlann amach" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "ná forscríobh meiteashonraí comhadlainne" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "forscríobh meiteashonraí de chomhadlanna atá ann agus cartlanna á mbaint " "amach (réamhshocrú)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Roghnaigh sruth aschurtha:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "bain comhaid amach agus scríobh ar an ngnáth-aschur" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "ORDÚ" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "píopaigh comhaid bhainte go ríomhchlár eile" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "ná bac le cóid scortha na macphróiseas" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "láimhseáil cóid scortha nach nialas ó mhacphróisis mar earráidí" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Tréithe comhaid á láimhseáil:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "éiligh AINM mar úinéir de chomhaid bhreise" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "éiligh AINM mar ghrúpa de chomhaid bhreise" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DÁTA-NÓ-COMHAD" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "socraigh am mionathraithe na gcomhad nua de réir DÁTA-NÓ-COMHAD" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "ATHRUITHE" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "déan ATHRUITHE ar mhód de chomhaid bhreise" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "MODH" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1643,31 +1652,31 @@ msgstr "" "ndiaidh na comhaid a léamh (MODH='replace', réamhshocraithe), nó gan a " "bheith ag socrú na n-amanna sa chéad áit (MODH='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "ná bain am mionathraithe an chomhaid" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "bain triail as úinéireacht a choinneáil" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "bain comhaid amach mar thusa féin" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "bain úsáid as uimhreacha d'ainmneacha úsáideora/grúpa" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "bain eolas faoi cheadanna (réamhshocrú don fhorúsáideoir)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1675,15 +1684,15 @@ msgstr "" "cuir umask an úsáideora i bhfeidhm agus ceadanna á mbaint ón chartlann " "(réamhshocrú do ghnáthúsáideoirí)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "sórtáil ainmneacha le cur in oiriúint" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "ar comhbhrí le -p agus -s araon" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1691,139 +1700,139 @@ msgstr "" "ná socraigh amanna mionathraithe ná ceadanna de na comhadlanna go dtí go " "bhfuil an bhaint curtha i gcrích" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "cealaigh an éifeacht de rogha --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Roghnú gléis agus malartú:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "CARTLANN" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "bain úsáid as cartlann chomhaid nó gléas CARTLANN" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "is logánta í an chartlann fiú má tá idirstad ina hainm" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "bain úsáid as ORDÚ in ionad rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "bain úsáid as ORDÚ cian in ionad rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "sonraigh tiomántán agus a dhlús" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "cruthaigh/liostaigh/bain amach cartlann le hiliomad imleabhair" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "athraigh téip i ndiaidh UIMHIR × 1024 beart" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "rith script i ndiaidh gach téip (-M intuigthe)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "úsáid/nuashonraigh an uimhir imleabhair i gCOMHAD" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Blocáil ghléis:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOIC" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOIC × 512 beart sa taifead" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "UIMHIR beart sa taifead, iolraí de 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "déan neamhshuim ar bhloic nialasacha sa chartlann (is ionann le EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "athbhlocáil le linn léimh (le píopaí 4.2BSD)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Roghnú formáide:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMÁID" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "cruthaigh cartlann san fhormáid seo" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "Is FORMÁID ceann de na rudaí seo:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "seanfhormáid V7 tar" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "formáid de réir GNU tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "formáid de réir GNU tar 1.13" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "formáid POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "formáid POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "ar comhbhrí le pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "is ionann le --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "is ionann le --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "lorgfhocal[[:]=luach][,lorgfhocal[[:]=luach]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "rialaigh lorgfhocail pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TÉACS" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1831,79 +1840,79 @@ msgstr "" "cruthaigh cartlann le TÉACS mar ainm imleabhair; úsáid TÉACS mar phatrún " "globála ar an ainm imleabhair agus an chartlann á liostú/baint amach" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Roghanna comhbhrúite:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "úsáid iarmhír na cartlainne chun an modh comhbhrúite a dhéanamh amach" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" "ná húsáid iarmhír na cartlainne chun an clár comhbhrúite a dhéanamh amach" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "CLÁR" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "scag le CLÁR (ní foláir -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Roghnú comhaid logánta:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "cuir an COMHAD sainithe leis an gcartlann (is áisiúil an rogha seo nuair atá " "dais ag tosach an chomhadainm)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "COMHADLANN" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "athraigh go dtí COMHADLANN" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "tóg ainmneacha le baint/cruthú as comhad COMHAD" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "léigh ainmneacha, foirceanta le NULanna; múch -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "díchumasaigh an rogha --null roimhe seo" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" "bain comharthaí athfhriotail ó chomhadainmneacha a léadh le -T (réamhshocrú)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "ná bain comharthaí athfhriotail ó chomhadainmneacha a léadh le -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "PATRÚN" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "fág comhaid as an áireamh, tugtha mar PHATRÚN" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "fág as an áireamh aon phatrún atá i gCOMHAD" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1911,94 +1920,94 @@ msgstr "" "gabh thar ábhar na gcomhadlann ina bhfuil CACHEDIR.TAG, seachas an comhad " "clibe féin" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "gabh thar gach rud faoi chomhadlanna ina bhfuil CACHEDIR.TAG" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "gabh thar chomhadlanna ina bhfuil CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "gabh thar ábhar na gcomhadlann ina bhfuil COMHAD, seachas COMHAD féin" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "gabh thar gach rud faoi chomhadlanna ina bhfuil COMHAD" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "gabh thar chomhadlanna a bhfuil COMHAD iontu" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "gabh thar chomhadlanna a bhaineann le córas rialaithe foinsí" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "ná téigh isteach i bhfochomhadlanna go huathoibríoch" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "ná fág an córas comhaid seo agus cartlann á cruthú" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "téigh isteach i gcomhadlanna (réamhshocrú)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "ná struipeáil `/' tosaigh ó ainmneacha comhaid" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "lean naisc shiombalacha; cartlannaigh agus dumpáil na comhaid a nascann na " "naisc leo" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" "lean naisc chrua; cartlannaigh agus dumpáil na comhaid a nascann na naisc leo" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "AINM-BAILL" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "tosaigh ag ball AINM-BAILL sa chartlann" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "ná sábháil comhaid níos nuaí ná DÁTA-NÓ-COMHAD" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DÁTA" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "déan comparáid le dáta/am modhnaithe" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "MODH" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "déan cúltaca sula scriostar, roghnaigh modh oibre maidir le leaganacha" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "TEAGHRÁN" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -2006,101 +2015,101 @@ msgstr "" "déan cúltaca roimh bhaint, agus sáraigh an gnáth-iarmhír ('~' mura dtugtar é " "leis an athróg thimpeallachta SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Trasfhoirmiú ainmneacha comhaid:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "struipeáil UIMHIR comhpháirt tosaigh ó ainmneacha comhaid" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "SLONN" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" "Úsáid ordú ionadaíochta SLONN, i bhformáid \"sed\", chun ainmneacha comhaid " "a thrasfhoirmiú" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Roghanna maidir le comhoiriúnú ainmneacha comhaid (cuirfear iad seo i " "bhfeidhm do phatrúin eisiata agus do phatrúin iniata araon):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "ná bí cásíogair" # subject is "exclude patterns" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "comhoiriúnaíonn patrúin do thosach ainm an chomhaid" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "comhoiriúnaíonn patrúin tar éis gach `/' (réamhshocrú i gcás eisiata)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "dealaigh idir litreacha beaga/móra (réamhshocrú)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "úsáid saoróga (réamhshocrú do phatrúin eisiata)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "comhoiriúnú teaghráin carachtar ar charachtar" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "ní ghlacann saoróga le `/'" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "comhoiriúnaíonn saoróga do `/' (réamhshocrú le patrúin eisiata)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Aschur faisnéiseach:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "taispeáin gach comhad atá próiseáilte, go foclach" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 #, fuzzy msgid "warning control" msgstr "Rialú forscríofa:" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "cuir dul chun cinn ar taispeáint, gach UIMHIRú taifid (réamhshocrú 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "GNÍOMH" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "déan GNÍOMH ag gach seicphointe" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "taispeáin eolas mura bhfuil gach nasc dumpáilte" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "COMHARTHA" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2112,27 +2121,32 @@ msgstr "" "Ceadaítear na comharthaí seo a leanas: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 agus " "SIGUSR2; glacfar leis na hainmneacha céanna gan an réimír SIG freisin" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "taispeáin dátaí mionathraithe de réir UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "scríobh aschur foclach i gCOMHAD" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "taispeáin bloc sa chartlann le gach teachtaireacht" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "iarr deimhniú ar gach gníomh" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "taispeáin réamhshocruithe tar" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2140,33 +2154,33 @@ msgstr "" "agus á liostú nó á bhaint amach, taispeáin gach comhadlann nach bhfuil " "comhoiriúnaithe don chuardach" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "taispeáin ainmneacha comhaid/cartlainne i ndiaidh trasfhoirmithe" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STÍL" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" "socraigh stíl athfhriotail ainmneacha; féach thíos le haghaidh luachanna " "bailí do STÍL" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "cuir carachtair athfhriotail timpeall na carachtair ó TEAGHRÁN" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "ná húsáid comharthaí athfhriotail timpeall carachtair ó TEAGHRÁN" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Roghanna Comhoiriúnachta:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2174,64 +2188,64 @@ msgstr "" "is ionann le --old-archive le linn cruthaithe; is ionann le --no-same-owner " "le linn baint" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Roghanna eile:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "cuir bac ar úsáid de roghanna gurbh fhéidir leo a bheith urchóideach" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Ná tabhair ach ceann de na roghanna `-Acdtrux'" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Roghanna contrártha comhbhrúite" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Comhartha anaithnid: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Comhad samplach dáta gan aimsiú" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Formáid dáta anaithnid; ag baint úsáid as %s in ionad %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Rogha %s: Ag caitheamh le dáta `%s' mar %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: léadh an liosta comhad cheana" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: tá carachtar nialasach sa chomhadainm a léadh" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "scag an chartlann le xz" -#: src/tar.c:1290 +#: src/tar.c:1296 #, fuzzy msgid "Valid arguments for the --quoting-style option are:" msgstr "Argóintí bailí do roghanna --quoting-style:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2239,53 +2253,53 @@ msgstr "" "\n" "Luachanna réamhshocraithe don tar *seo*:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Fachtóir bacainneach neamhbhailí" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Fad téipe neamhbhailí" -#: src/tar.c:1511 +#: src/tar.c:1529 #, fuzzy msgid "Invalid incremental level value" msgstr "Drochfhormáid incriminteach" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Níos mó ná spriocdháta amháin" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Leagan neamhbhailí ar fhormáid na ngannchomhad" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "ní thacaítear le --atime-preserve='system' ar an chóras seo" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "ní mór do luach --checkpoint a bheith ina slánuimhir" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Grúpa neamhbhailí" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Mód neamhbhailí ar rogha" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Uimhir neamhbhailí" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Úinéir neamhbhailí" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2293,69 +2307,69 @@ msgstr "" "tá an rogha --preserve dulta i léig, bain úsáid as --preserve-permissions --" "preserve-order ina háit" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Méid taifid neamhbhailí" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Ní foláir méid taifid a bheith iolraí de %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Tá líon na mball neamhbhailí" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Ní cheadaítear ach aon rogha --to-command amháin" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Tá an argóint dlúis míchumtha: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Dlús anaithnid: `%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Níl na roghanna `-[0-7][lmh]' ar fáil sa leagan seo tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[COMHAD]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Tá gá le hargóint ar an seanrogha `%c'." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "tá an rogha --occurrence gan bhrí in éagmais liosta comhad" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "níl an rogha --occurrence ar fáil sa mhód iarrtha" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Ní foláir an rogha `-M' le níos mó ná cartlann amháin" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Ní féidir --listed-incremental a úsáid le --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 #, fuzzy msgid "--level is meaningless without --listed-incremental" msgstr "Níl --preserve-order comhoiriúnach do --listed-incremental" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2365,48 +2379,48 @@ msgstr[2] "%s: Lipéad imleabhair rófhada (%lu bheart ar a mhéad)" msgstr[3] "%s: Lipéad imleabhair rófhada (%lu mbeart ar a mhéad)" msgstr[4] "%s: Lipéad imleabhair rófhada (%lu beart ar a mhéad)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Ní féidir cartlanna le hiliomad imleabhair a fhíorú" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Ní féidir cartlanna comhbhrúite a fhíorú" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Ní féidir úsáid a bhaint as cartlanna il-ranna comhbhrúite" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Ní féidir cartlanna comhbhrúite a iarcheangal" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "níl an rogha --pax-option le fáil ach le cartlanna POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Ní cheadaítear fad an imleabhair a bheith níos lú ná an mhéid taifid" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "Níl --preserve-order comhoiriúnach do --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Ní chruthófar cartlann fholamh (go cladhartha)" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Níl na roghanna `-Aru' ar fáil in éineacht le `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Ní foláir rogha amháin de `-Acdtrux' ar a laghad" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Scor le stádas teipthe de bharr earráidí roimhe seo" @@ -2421,58 +2435,58 @@ msgstr[2] "%s: Chrap an comhad %s bheart" msgstr[3] "%s: Chrap an comhad %s mbeart" msgstr[4] "%s: Chrap an comhad %s beart" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Tá an lorgfhocal %s anaithnid nó nach bhfuil sé curtha i bhfeidhm fós" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Stampa ama as raon" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Ní féidir an patrún %s a úsáid" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Ní féidir an lorgfhocal %s a shárú" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Ceanntásc míchumtha breisithe: fad ar iarraidh" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Fad an cheanntáisc breisithe as raon" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Fad %*s as raon sa cheanntásc breisithe" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Ceanntásc míchumtha breisithe: spás bán ar iarraidh tar éis an fhaid" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Ceanntásc míchumtha breisithe: sín chothroime ar iarraidh" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Ceanntásc míchumtha breisithe: líne nua ar iarraidh" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" "Lorgfhocal anaithnid `%s' sa cheanntásc breisithe; ag déanamh neamhshuim air" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" @@ -2480,29 +2494,29 @@ msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Tá an ceanntásc breisithe %s=%s as raon %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Ceanntásc míchumtha breisithe: %s=%s neamhbhailí" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Ceanntásc míchumtha breisithe: %s=%s sa bhreis" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Ceanntásc míchumtha breisithe: %s neamhbhailí: bhíothas ag súil le " "teormharcóir %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Ceanntásc míchumtha breisithe: %s neamhbhailí: corruimhir de luachanna" @@ -2543,7 +2557,7 @@ msgstr "Seicphointe scríofa %u" msgid "Read checkpoint %u" msgstr "Seicphointe léimh %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2552,73 +2566,73 @@ msgstr "" "paxutils.\n" "Is iad na ROGHANNA:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Roghanna - cruthú comhad:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "MÉID" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Cruthaigh comhad leis an MÉID seo" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Scríobh i gcomhad AINM, in ionad an ghnáth-aschuir" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Léigh ainmneacha comhaid ó COMHAD" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "Léann -T ainmneacha, foirceanta le NULanna" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Líon an comhad leis an PATRÚN sonraithe. Is é PATRÚN 'default' nó 'zeros'" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Méid bhloic sa gannchomhad" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Cruthaigh gannchomhad. Tugtar an mapa comhaid ar an chuid eile de líne na n-" "orduithe." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "FRITHÁIREAMH" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Léim go dtí an FRITHÁIREAMH roimh scríobh na sonraí" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Roghanna - staitisticí comhaid" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Taispeáin inneachar an struct stat le haghaidh gach comhad sonraithe. " "FORMÁID réamhshocraithe: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Roghanna - feidhmiú sioncrónach:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [ROGHA...]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 #, fuzzy msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " @@ -2627,20 +2641,20 @@ msgstr "" "Rith an tORDÚ sonraithe. Is áisiúil an rogha seo le --checkpoint agus ceann " "de --cut, --append, nó --touch" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "Déan an gníomh sonraithe (féach thíos) nuair a shroichtear seicphointe UIMHIR" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Socraigh an dáta le haghaidh an chéad rogha --touch eile" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Taispeáin na seicphointí a ritheadh agus stádas scortha den ORDÚ" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2648,7 +2662,7 @@ msgstr "" "Gníomhartha rite sioncrónaigh. Ritear iad seo nuair a shroichtear an uimhir " "sheicphointe a sonraíodh leis an rogha --checkpoint" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2656,146 +2670,160 @@ msgstr "" "Teasc COMHAD go dtí an mhéid a sonraíodh leis an rogha --length roimhe seo " "(nó teasc go dtí 0, mura sonraítear an rogha seo)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "Iarcheangail MÉID beart le COMHAD. Tógtar MÉID ón rogha --length roimhe seo." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Nuashonraigh na hamanna rochtana/mionathraithe de CHOMHAD" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Rith ORDÚ" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Méid neamhbhailí: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Uimhir as raon: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Méid diúltach: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "theip ar stat(%s)" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "fad iarrtha %lu, fíorfhad %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "ní gannchomhad é an comhad cruthaithe" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Earráid agus uimhir á parsáil i ngar do `%s'" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Formáid anaithnid ar an dáta" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGÓINTÍ...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "ní féidir `%s' a oscailt" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "ní féidir 'seek' a dhéanamh" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "tá carachtar nialasach sa chomhadainm" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "ní féidir gannchomhaid a chruthú ar an ngnáth-aschur; úsáid rogha --file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "masc mícheart (i ngar do `%s')" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Réimse anaithnid `%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "ní féidir an t-am a shocrú ar `%s'" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "ní féidir `%s' a oscailt" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "D'éirigh leis an ordú\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Theip ar an ordú le stádas %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Stopadh an t-ordú le comhartha %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Stopadh an t-ordú ar chomhartha %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Rinne an t-ordú córdhumpa\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Ordú críochnaithe\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "Tá ainmneacha comhaid de dhíth ar --stat" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Ní féidir an chomhadlann reatha a shábháil" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "Ní féidir %s a athainmniú go %s" + +#~ msgid "suppress this warning." +#~ msgstr "chun an rabhadh seo a mhúchadh." + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: rogha neamhcheadaithe -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "%s á léamh\n" + #~ msgid "" #~ "\n" #~ "Report bugs to <%s>.\n" @@ -2803,15 +2831,6 @@ msgstr "Tá ainmneacha comhaid de dhíth ar --stat" #~ "\n" #~ "Seol tuairiscí fabhtanna chuig <%s>.\n" -#~ msgid "Reading %s\n" -#~ msgstr "%s á léamh\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Ní féidir biseach a dhéanamh i ndiaidh earráid: ag scor" - -#~ msgid "suppress this warning." -#~ msgstr "chun an rabhadh seo a mhúchadh." - #~ msgid "filter the archive through bzip2" #~ msgstr "scag an chartlann le bzip2" @@ -2861,6 +2880,9 @@ msgstr "Tá ainmneacha comhaid de dhíth ar --stat" #~ msgid "Premature end of file" #~ msgstr "Comhadchríoch gan choinne" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Ní féidir biseach a dhéanamh i ndiaidh earráid: ag scor" + #~ msgid "Warning: the -I option is not supported; perhaps you meant -j or -T?" #~ msgstr "Rabhadh: níl an rogha -I ar fáil; ar mhaith leat -j nó -T?" diff --git a/po/gl.gmo b/po/gl.gmo index 80ef7438bc6e43bcebca3ae81310f1b82f79243a..33e4d429fe219679f559571bc9354403139bfaab 100644 GIT binary patch delta 2710 zcmXxmX>3(R7=Ym^P)ZjIEt^G_%O*<~Zf_}IifihL@=f_P{6 z4Q=ON^zTM7N}Y@Lvjs=ff7nT-m10Um9`~`C{GdqM79F6@khIu#%{eB)!!Btp_ zd$0iCMKf>(^D$*$2#c@~OK>MnrT=h(iX*#-Ht-k5v4COD!CLhGDBgizVD|vghBL{h z_cPH6tV7#-3LU^Pq{;9hI zYo9>hTZR*H1IF=bG$Wl@jF)gK=J3b9Hya)3X0+e7q2%9`zQ6+;K8bdGE_(4xw1I2r z%yZdUHZ%_11661SHb?g@NS|SUD=$bId~Qe@fJF;Ddcqq)?zgtLf`udOL2UR-wIsEr5xLE3BHFj z(X^K)ah4Tq!D;vg`oh;(gjq~i%W*a~BA;-ai!=EQ9q8rgekkkZ`}ye7t>;pSd(d{f zkU4}~m|RF@1V7~N`c25Q(2O?xB9i5B9Ao$qxgtmT33M)$xGGy@&z0MDZh-9R&t&W`h#PC)-| z8amTzjNx`n!GmarhcFX6(Dy!wyp*KkZcky0`o%!(K6YrsmFV%=8rh23+&_md)nRn) z-$y&NR1v1%;w*O&n+ez6qx%riTas4pB223@v-m?%PdrNOBr1sBQW;g8jb#hr-f^&& z1VNGlE7bjeiiNn6aQ)df-6ezTS|Zi+Z<-qkXKyk6t;8mxw>;2W!N-Ue!jobq<`OaD z3Bpuc+%x{eWtm5qQA>ZqtgRv3uuppaS5Uc^aGfo#v!#isA(nd+mA;YpN1FNpQGFdY z6Y~jAMIGTLUQ9ep^p;vGeTZseyZK*5uzcNRHdlXC%8B)ad&8YxMD!z;5(^0T#Dl~l z!ZMtAglO=F@;I@YxQDo#@O1d&WGU<+>_#UTmPHTBa2t_Ea8kk!Vk6;^v@Gc%+=uCe zKO((_eH^wDLx>HX+cUQGZ~t@9^3IJpZ>41y#|snFV~LWo_^kYRNqb)2t69tITIyTt a>bI4}>YF-G=lz=2esOGLXVbWf^#1`r5brVo delta 2860 zcmZ|Qe@vBC9LMo5Dxjzcm|m#RiiI)c41538qXn zn~N(kgthoE9>-Mt41H#v4N;lJgIkz_f8iXQ%%~4xHWpzqYTyn`$79H!4R8tKWt@*= zs2BC|R_Z4Y^}P+wJ*aVdqn~?beN^&!a0S)DUChFaWV193VH{Rq0&c_%tahL8#V5Ew zh=q6_7vV3c45ZF5TZs8shFh@!`!JXB?Isny;Y40b9W1~A)?f*~gX-wIdwvHW;Xac* zX5wT>t}s0m#|_5T~HpJZmmkd}v@-n4|uOx%rr^iWH364mh_s@+Yb4~wU9 z5PhhQ)}h*MMpn;ykhQh9G1?DmDF;z|0y!{(r7mXA!5zjGFlYR7dZj_QW7612^3LF!ByI?wm>|I#_8!@3$Rq1Oy0jyxr96xL*$@}K*zMT8XX8|O zc}ruor!f~b;4V~0AEIXZ2^Qcb)WBn?lrN%p?d~$vQZ%BD<6%@rF1Y94ppM_4s3i=M z?i}`?ZKuL=+hJ7d`%#%Vjhexr^IKfX{Roy|CV5?juERp&j-<37kVm#7`8{rjlrL(adknEPzjhpN@1CiWKU z#ZS2V?@-?xL60yWKjdpMgzESJGD-U!OYwWuDaa(hYM+bhxB^)Pt4BY+fm*Uts3rUo zwYh&qvd%ACtomS{#!?Du7bvkLjMh8*(G{IDy?`ZM`# z=P=^x+F&YM2`!1Tr_EbNXw$AF^aJ$@p}q4A@iL+8J+JexQX9SUFBr9fR8|pf(OPV` zR=N6aTtTcMbk0@cV?>}0?D%#Pn zMr&p}FiaE?THj_uWiz22uc8gvK|D*;5w89k(5splLG~d^8^0;U{PVg!a%V1Z2HFo z)fuCSb0f{$8Y7FFS|4=PNVUPgzb&#Y($v)2yDY17oh`4_t` B9c%yq diff --git a/po/gl.po b/po/gl.po index 170fc84..3e50950 100644 --- a/po/gl.po +++ b/po/gl.po @@ -2,14 +2,16 @@ # Copyright (C) 2002 Free Software Foundation, Inc. # Jacobo Tarrío Barreiro , 2002. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.13.25\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2002-03-26 19:17+0100\n" "Last-Translator: Jacobo Tarrío Barreiro \n" "Language-Team: Galician \n" +"Language: gl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" @@ -88,7 +90,7 @@ msgstr "" "Informe dos erros no programa a .\n" "Informe dos erros na traducción a .\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Erro do sistema descoñecido" @@ -100,8 +102,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -139,56 +141,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: a opción \"%s\" é ambigua\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: a opción \"--%s\" non admite un argumento\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: a opción \"%c%s\" non admite un argumento\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: a opción \"%s\" precisa dun argumento\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: opción \"--%s\" non recoñecida\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: opción \"%c%s\" non recoñecida\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: opción non válida -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: a opción precisa dun argumento -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: a opción \"-W %s\" é ambigua\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: a opción \"-W %s\" non admite un argumento\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: a opción \"%s\" precisa dun argumento\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "memoria esgotada" @@ -517,189 +524,189 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Non se pode executar un intérprete de comandos remoto" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Dirección de desprazamento fóra de rango" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Proporcionouse na opción un modo non válido" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Marca de tempo non válida" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Desprazamento fóra de rango" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Lonxitude da fita non válida" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Desprazamento fóra de rango" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Fin de ficheiro prematura\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "%s: opción non válida -- %c\n" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Fin de ficheiro inesperado nos nomes alterados" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "Non se puido abrir %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Comando lixo" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Isto non semella un arquivo tar" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Bytes totais escritos: %s (%sB, %sB/s)\n" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Bytes totais escritos: %s (%sB, %sB/s)\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(canalización)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Valor non válido para record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Non se proporcionou o nome do arquivo" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Non se poden verifica-los arquivos da entrada/saída estándar" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Non se poden actualiza-los arquivos comprimidos" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "No comezo da cinta, saíndo agora" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Demasiados erros, saíndo" -#: src/buffer.c:744 +#: src/buffer.c:821 #, fuzzy, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Tamaño do rexistro = %lu bloques" msgstr[1] "Tamaño do rexistro = %lu bloques" -#: src/buffer.c:765 +#: src/buffer.c:842 #, fuzzy, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Bloque desaliñado (%lu bytes) no arquivo" msgstr[1] "Bloque desaliñado (%lu bytes) no arquivo" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Non se pode recuar no arquivo; pode ser ilexible sen -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: contén un número de volume non válido" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Desbordamento no número de volume" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Prepare o volume #%d para %s e prema enter: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Chegouse á fin de ficheiro onde se esperaba unha resposta do usuario" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "AVISO: O arquivo está incompleto" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -711,71 +718,71 @@ msgstr "" " ! Executar outro intérprete de comandos\n" " ? Amosar esta lista\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Non hai novos volumes; saíndo.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, fuzzy, c-format msgid "%s command failed" msgstr "O comando \"%s\" fallou" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s non continúa neste volume" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s non continúa neste volume" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s ten un tamaño incorrecto (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Este volume está fora da secuencia" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "O arquivo non está etiquetado para coincidir con %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "O volume %s non coincide con %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "A fin do ficheiro (EOF) do arquivo %s non se atopa no límite do bloque" @@ -787,20 +794,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "So se puido ler %lu de %lu bytes" msgstr[1] "So se puido ler %lu de %lu bytes" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "O contido é diferente" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Fin de ficheiro inesperado no arquivo" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "O tipo de ficheiro é diferente" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "O modo é diferente" @@ -816,145 +823,145 @@ msgstr "Os gid son diferentes" msgid "Mod time differs" msgstr "A data de modificación é diferente" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "O tamaño é diferente" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Non ligado a %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "A ligazón simbólica é diferente" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "O número de dispositivo é diferente" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verificar " -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "" "%s: Tipo de ficheiro \"%c\" descoñecido; trátase coma un ficheiro normal" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" -#: src/compare.c:599 +#: src/compare.c:593 #, fuzzy, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "FALLO NA VERIFICACION: detectáronse %d cabeceiras non válidas" msgstr[1] "FALLO NA VERIFICACION: detectáronse %d cabeceiras non válidas" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "valor %s fóra do rango de %s %s..%s; substituíndo %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "valor %s fóra do rango de %s %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Xerando cabeceiras octais negativas" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, fuzzy, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: ficheiro sen cambios; non se envorca" -#: src/create.c:634 +#: src/create.c:621 #, fuzzy, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: ficheiro sen cambios; non se envorca" -#: src/create.c:661 +#: src/create.c:648 #, fuzzy, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: ficheiro sen cambios; non se envorca" -#: src/create.c:1078 +#: src/create.c:1062 #, fuzzy, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: O ficheiro encolleu %s bytes; enchendo con ceros" msgstr[1] "%s: O ficheiro encolleu %s bytes; enchendo con ceros" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: o ficheiro está nun sistema de ficheiros diferente; non se envorca" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 #, fuzzy msgid "contents not dumped" msgstr " (memoria volcada)" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Tipo de ficheiro descoñecido; ignórase este ficheiro" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr " ligazón a %s\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: ficheiro sen cambios; non se envorca" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: o ficheiro é o arquivo; non se envorca" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: o ficheiro cambiou mentres se lía" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: ignórase o socket" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: ignórase a porta" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Pasando á seguinte cabeceira" @@ -962,76 +969,76 @@ msgstr "Pasando msgid "Deleting non-header from archive" msgstr "Borrando o que non sexan cabeceiras do arquivo" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, fuzzy, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: a marca de tempo %s está %lu segundos no futuro" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Inconsistencia inesperada ao crea-lo directorio" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Renomeouse o directorio antes de poder estrae-lo seu estado" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Extraendo os ficheiros contiguos coma ficheiros normais" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Tentando extrae-las ligazóns simbólicas coma ligazóns duras" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Non se pode extraer -- o ficheiro é continuación doutro volume" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Fin de ficheiro (EOF) inesperado no arquivo" -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "" "%s: Tipo de ficheiro \"%c\" descoñecido, extraéndoo coma ficheiro normal" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Non se puido copiar este ficheiro" -#: src/extract.c:1402 +#: src/extract.c:1568 #, fuzzy, c-format msgid "Cannot rename %s to %s" msgstr "%s: Non se pode renomear a %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Renomeouse o directorio" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Renomeouse o directorio" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: O directorio é novo" @@ -1145,36 +1152,36 @@ msgstr "%s: Borrando %s\n" msgid "%s: Cannot remove" msgstr "%s: Non se pode eliminar" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Omitíndoo" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "bloque %s: ** Bloque de nulos **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "bloque %s: ** Fin de Ficheiro **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "bloque %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "" "Atopáronse espacios na cabeceira onde se esperaba un valor númerico de %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1182,138 +1189,140 @@ msgstr "" "a 2" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "O valor octal do arquivo %.*s está fóra do rango de %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "O arquivo contén cabeceiras base-64 obsoletas" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "A cadea base-64 asinada do arquivo %s está fóra do rango de %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "O valor base-256 do arquivo está fóra do rango de %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "O arquivo contén %.*s onde se esperaba un valor numérico de %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "O valor do arquivo %s está fóra do rango de %s %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " ligazón a %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " Tipo de ficheiro %s descoñecido\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Cabeceira de Volume--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Continúa no byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Creando o directorio:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Non se pode cambia-lo directorio de traballo" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Renomeando %s a %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Non se pode renomear a %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Renomeando %s a %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Non se pode armacena-lo directorio de traballo" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Non se pode cambia-lo directorio de traballo" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Ficheiro eliminado antes da súa lectura" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Ficheiro eliminado antes da súa lectura" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "proceso fillo" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "canle interproceso" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Non atopado no arquivo" -#: src/names.c:622 +#: src/names.c:615 #, fuzzy, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Non atopado no arquivo" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "O arquivo non está etiquetado para coincidir con %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1337,7 +1346,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 #, fuzzy msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " @@ -1358,7 +1367,7 @@ msgstr "" " # dando moitos datos\n" " %s -xf arquivo.tar # Extraer tódolos ficheiros de arquivo.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 #, fuzzy msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" @@ -1380,80 +1389,80 @@ msgstr "" " nil, existing numera se existen copias de seguridade numeradas\n" " never, simple sempre fai copias de seguridade sinxelas\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" -#: src/tar.c:394 +#: src/tar.c:395 #, fuzzy msgid "create a new archive" msgstr "Fin de ficheiro inesperado no arquivo" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1461,568 +1470,568 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" -#: src/tar.c:452 +#: src/tar.c:453 #, fuzzy msgid "remove files after adding them to the archive" msgstr "Borrando a especificación de unidade dos nomes do arquivo" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 #, fuzzy msgid "extract files to standard output" msgstr "Erro ao gravar na saída estándar" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" -#: src/tar.c:556 +#: src/tar.c:557 #, fuzzy msgid "create/list/extract multi-volume archive" msgstr "Non se pode verifica-los arquivos multi-volume" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" -#: src/tar.c:582 +#: src/tar.c:583 #, fuzzy msgid "Archive format selection:" msgstr "Arquivar da entrada estándar" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Opcións de compresión conflictivas" -#: src/tar.c:615 +#: src/tar.c:616 #, fuzzy msgid "use archive suffix to determine the compression program" msgstr "Non se puido escribir no programa de compresión" -#: src/tar.c:617 +#: src/tar.c:618 #, fuzzy msgid "do not use archive suffix to determine the compression program" msgstr "Non se puido escribir no programa de compresión" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" -#: src/tar.c:641 +#: src/tar.c:642 #, fuzzy msgid "change to directory DIR" msgstr "Non se pode cambia-lo directorio de traballo" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" -#: src/tar.c:682 +#: src/tar.c:683 #, fuzzy msgid "don't strip leading `/'s from file names" msgstr "Eliminadndo o \"%.*s\" inicial dos nomes dos membros" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "O volume %s non coincide con %s" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2030,291 +2039,296 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" +msgstr "Proporcionouse na opción un modo non válido" + +#: src/tar.c:758 +msgid "print file time to its full resolution" msgstr "" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" -#: src/tar.c:761 +#: src/tar.c:764 #, fuzzy msgid "ask for confirmation for every action" msgstr "Non se puido le-la confirmación do usuario" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Non pode especificar máis dunha das opcións \"-Acdtrux\"" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Opcións de compresión conflictivas" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr " Tipo de ficheiro %s descoñecido\n" -#: src/tar.c:1017 +#: src/tar.c:1020 #, fuzzy msgid "Date sample file not found" msgstr "Non se atopou o ficheiro de data" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Substituíndo o formato de data descoñecido %2$s por %1$s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, fuzzy, c-format msgid "%s: file list already read" msgstr "%s: o ficheiro é o arquivo; non se envorca" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "%s: o ficheiro é o arquivo; non se envorca" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Factor de bloqueo non válido" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Lonxitude da fita non válida" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Máis dunha data de umbral" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Grupo non válido" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Proporcionouse na opción un modo non válido" -#: src/tar.c:1894 +#: src/tar.c:1912 #, fuzzy msgid "Invalid number" msgstr "Número de inode non válido" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Propietario non válido" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Tamaño de rexistro non válido" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "O tamaño do rexistro debe ser múltiplo de %d." -#: src/tar.c:2000 +#: src/tar.c:2019 #, fuzzy msgid "Invalid number of elements" msgstr "Lonxitude da fita non válida" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, fuzzy, c-format msgid "Unknown density: `%c'" msgstr "Patrón descoñecido `%s'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Opcións `-[0-7][lmh]' non soportadas por *este* tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "A antiga opción \"%c\" precisa dun argumento." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 #, fuzzy msgid "Multiple archive files require `-M' option" msgstr "Varios ficheiros de arquivo requiren a opción \"-M\"" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Non se pode combinar --listed-incremental con --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, fuzzy, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: A etiqueta do volume é longa de máis (o límite é %lu bytes)" msgstr[1] "%s: A etiqueta do volume é longa de máis (o límite é %lu bytes)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Non se pode verifica-los arquivos multi-volume" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Non se poden verifica-los arquivos comprimidos" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Non se poden empregar arquivos comprimidos multi-volume" -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "Non se poden actualiza-los arquivos comprimidos" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "De xeito cobarde rexéitase crear un ficheiro baleiro" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "As opcións \"-Aru\" son incompatibles con \"-f -\"" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Debe especificar unha das opcións \"-Acdtrux\"" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2326,84 +2340,84 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: O ficheiro encolleu %s bytes" msgstr[1] "%s: O ficheiro encolleu %s bytes" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Marca de tempo fóra de rango" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "A cadea base-64 asinada do arquivo %s está fóra do rango de %s" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, fuzzy, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "O valor do arquivo %s está fóra do rango de %s %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2444,248 +2458,259 @@ msgstr "Punto de control de escritura %d" msgid "Read checkpoint %u" msgstr "Punto de control de lectura %d" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Xera-los ficheiros de datos para a suite de probas de GNU tar.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Opcións de compresión conflictivas" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "Erro ao gravar na saída estándar" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr "" "\n" "Emprego: %s [OPCIÓN]...\n" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 #, fuzzy msgid "Update the access and modification times of FILE" msgstr "%s: Non se puido cambia-la hora de acceso e modificación" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Marca de tempo non válida" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Número de inode fóra de rango" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Erro do sistema descoñecido" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, fuzzy, c-format msgid "cannot open `%s'" msgstr "Non se puido abrir %s" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Non se pode pechar" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr "Patrón descoñecido `%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "Non se puido evalua-lo ficheiro %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "Non se puido abrir %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, fuzzy, c-format msgid "Command failed with status %d\n" msgstr "O fillo morreu co sinal %d" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Nomes de ficheiro alterados--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Non se pode armacena-lo directorio de traballo" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s: Non se pode renomear a %s" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: opción non admitida -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Lendo %s\n" + #, fuzzy #~ msgid "" #~ "\n" @@ -2695,12 +2720,6 @@ msgstr "--Nomes de ficheiro alterados--\n" #~ "Informe dos erros no programa a .\n" #~ "Informe dos erros na traducción a .\n" -#~ msgid "Reading %s\n" -#~ msgstr "Lendo %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "O erro non é recuperable: sáese agora" - #, fuzzy #~ msgid "filter the archive through compress" #~ msgstr "%s: o ficheiro é o arquivo; non se envorca" @@ -2743,6 +2762,9 @@ msgstr "--Nomes de ficheiro alterados--\n" #~ msgid "Premature end of file" #~ msgstr "Fin de ficheiro prematura" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "O erro non é recuperable: sáese agora" + #~ msgid "block size" #~ msgstr "tamaño de bloque" diff --git a/po/hr.gmo b/po/hr.gmo index 05afdbc28c9819229c97688e595747bdf531afaf..779da718e0ef459b341f5d1904bad2d75a25b6c7 100644 GIT binary patch delta 2709 zcmXxke@xVM9LMoDiNNtIz+a(2ca%^9c^ry{D2Kl|grpyUS%4ixC?O=GB8|@Bnzm-6 zSgSVKnEs(|v5d>*`Y~FhtxcDkTWc*%)*q}5Z8gh(%6h)e?|sJm9-sU2z0Z&L=l%Vj zYP?$?x}FjHuF(dFEMj(!*-88&o)20e(JUFOaUnKhF7C#MaTrtZ9P0N|xEycbgP4|N zwg$bp7`reXkKiJ+kbOXB0T({TH2fBG@JF1Fcd!hTS%oI9!UwPuwXnl{_;45>!YR~3 zXHetZMg1v1K% zhK2YEDg)D4fHC)*ZN?%j!9HBZ{C1j-R(2INz~AV_LYBD>n^E77;}X1#kp-d#P9mTB zz6!O0?WpkvQ41JDhP1Cx3%i2z@LvqM>7=s_9f1!uPylsfCvuOyhdw-m8t7-#eY42v zSSq7&mbMrpa6EJoGY z`%w4Q;8JWtFAkwH62@Zu1(#tuKh}NasD-wo<{el-{*}^WT+qO0P!oUc-1t3efEm=z zGpH;Ll#8l?04f8m&i8I)PCM#2ih7VHQ1g6-{MiqDs5ozi=)}-TW?9;4D)Qu50qTZQ z=XwJwg}taVJ%pNQ4E0!@LuKR&&c$g|vCg3GzlF+BD!c4w!V1(zL+9Cs2DpHa;0?@2 z7Z)j9D@Hf^u@r+?gzsZDUPNUijqPbcrKqE#(Y|^TQZowEm z|2ycY%7e(5w%2hOm9lXx$Lm;vOUS2+tPWS;tJsKVu>#}W_lmCywV{Kkjl6?v@G@>f zmxn?Q(W#@OA{#=bavU}BRn(Eh@-S+Z=jg^uNIlz4q~0u+ z!B~T3p;BLgy1xsx;lZWkUuSWe3;fxad}xASQD=S!S7IL9*Up>paeN(>`bpGtej6zx z%j2Lm-g?vmwmJ5oHgE(l8Q(@V(a?RSj9`J9W6Y9YF?6!m{UYQFZ6^N+(wec3V8QGAH1_DNJmenKte7V?Bz zJo!_`JgCRA3N@ixfY3c^tBC_dE1|Pjwq7ElP4yQ^X$fjVH80UY^bmbS1rco$kKH9-oh;Cvz zp%;sva1;9p9i5tLMvt^wC83O}#Stp#ZG_T)P|yF9bhZ*or zR1qdP{q4A$SWl=%f`r}^Rm3hL+M4OyN7NB}l>d5yPLom-Zr|$FC{8C$TMV^3by8iJq-uL)?f86KC`}6r6 zmv$bj4t+C!?jfTDiABUebIgw6R4gBq{qbhkU_UOvgLo4j#hY;quf?BG-=D$Nm^jbu zMl8WXY`}&15+>o>m}(ZXkEx_^<9kfRKXD1h(d+e?i3M1M>bMWn@Cfo}VLozk442{z zYM`l%O6_E$zPH`63)Rm+(Ud;g3HniAcmtK{kFWqIF&mRW8QvHIPR!14mFx`jvD43~t~$jWlaQ z)tE*9_AnKV^f)T@W2jwz66wo6cl-^NvIO#1gtuWH22q=A1lQmcR%4QjchHO4e6OM= z^fhWCGgug+lI=FzjBTiyj9@N)f!b_w9A2H@JU*1#YSci2s3jUk&G<{_`XVw0%i!>{ zkF5;#167C0^g&cRM=+!ZV^oy7Gq?`Z7=>nDi5gf3DwSc>7eBy6JcoS6E}}Ye^H3eE zL(Oy>>b+)kVJ~X4KZopB8(v2K8LYj}4gJ7OqrQ;BbTsn})Y9xg9@!pL2T!5)z#!)1 zX;dbnS=jZMjamvXD)mQ^ZDyxY?VUvpfb%z7N#om^fd|RDm7xaYMP=d;vVZJN=XwG) z&|gq9z2w|aC7qh#8q{gphWdUjYNEYJvg~<`!grN_t<`&YHGYeF;b&Bb38X>yvylB~ zYf(#4h1&gIR7M^{4dgKDhiC+qv2oNfJ&)>8gSm>}GI9*H|026oZqx^5FA*djB<>=# zo7K37P^XuR8rEP`dI{|v#vR!cx8fF}nW!W-6H5KvgpW{Z(fO~Ltw+)mL%rC!77q}b zy^3bzkJLyjHac~sTcw_eY(i9~$_On%386i3AEDooJBWJ;W&IwVf0c&FC;x&m MU zz^N;xJDhqu>WAcZqQbcs?YIe76Z#);z`3WNX)TdT=Pdt!s(QhL=k&m42d&nCsk(a|Eq8|Cht1@l7$Q z-bR0Gi>t3Q(C+iMx|)4~mZqN0K>xstiB${sHtxH^qwsX%Td@hAyj3|KS59t0e%?w? z?!fW1!EkN*zp;zD0-YVcwidsy$L9((Hv4^%Hrr{_*EUe@Ze7^b=?yeq@p1Ts`?I+J E093pjod5s; diff --git a/po/hr.po b/po/hr.po index 78dac08..5281adf 100644 --- a/po/hr.po +++ b/po/hr.po @@ -4,14 +4,16 @@ # ... wishes to thank everybody who helped in good faith. # # Well, in 03:12 hrs (for 1st pass)!! who beats me I owe him a pizza ;-) -- TM +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.13.25\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2002-04-26 10:49+MET(DST)(UTC+2)\n" "Last-Translator: Mirsad Todorovac \n" "Language-Team: Croatian \n" +"Language: hr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-2\n" "Content-Transfer-Encoding: 8bit\n" @@ -89,7 +91,7 @@ msgstr "" "\n" "Prijavi gre¹ke i bugove na .\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Nepoznata pogre¹ka u sistemu" @@ -101,8 +103,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -140,56 +142,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: opcija `%s' nije jednoznaèna\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: opcija `--%s' ne dozvoljava argument\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: opcija `%c%s' ne dozvoljava argument\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: za opciju `%s' neophodan je argument\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: ne prepoznajem opciju `--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: ne prepoznajem opciju `%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: pogre¹na opcija -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: opcija zahtijeva neophodan argument -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: opcija `-W %s' nije jednoznaèna\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: opcija `-W %s' ne dozvoljava argument\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: za opciju `%s' neophodan je argument\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "iscrpljena memorija" @@ -520,193 +527,193 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Ne mogu pokrenuti udaljenu (remote) ljusku" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Seek smjer izvan opsega" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Pogre¹an mod dan opcijom" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Pogre¹na oznaka vremena" # FIXME -- find xlation for 'seek offset' -- TM -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Seek ofset izvan opsega" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Pogre¹na duljina trake" # FIXME -- find xlation for 'seek offset' -- TM -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Seek ofset izvan opsega" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Prerani eof\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "%s: pogre¹na opcija -- %c\n" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Neoèekivani EOF u arhivi" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "%s: Neuspjeli seek na %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Neispravna naredba" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Ovo ne izgleda kao tar arhiva" # FIXME -- ovo neæe raditi ako je prevedeno -- Denis? -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Ukupno ispisano bajtova: %s (%sB, %sB/s)\n" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" # FIXME -- ovo neæe raditi ako je prevedeno -- Denis? -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Ukupno ispisano bajtova: %s (%sB, %sB/s)\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(cjevovod - pipe)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Pogre¹na vrijednost za record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Nije dano ime arhive" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Ne mogu verificirati stdin/stdout arhive" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Ne mogu a¾urirati komprimirane arhive" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Poèetak trake, zavr¹avam" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Previ¹e pogre¹aka, zavr¹avam" -#: src/buffer.c:744 +#: src/buffer.c:821 #, fuzzy, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Velièina sloga = %lu blokova" msgstr[1] "Velièina sloga = %lu blokova" -#: src/buffer.c:765 +#: src/buffer.c:842 #, fuzzy, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Neporavnat (unaligned) blok (%lu bajtova) unutar arhive" msgstr[1] "Neporavnat (unaligned) blok (%lu bajtova) unutar arhive" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Ne mogu se pomicati unazad unutar arhive; mo¾e biti neèitljiva bez -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: sadr¾i pogre¹an broj dijela arhive" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Prekoraèenje u broju dijela arhive" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Pripremite dio arhive #%d za %s i pritisni :" -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Naðen EOF gdje sam oèekivao odgovor korisnika" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "UPOZORENJE: Arhiva nije kompletirana" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -718,72 +725,72 @@ msgstr "" " ! Pokreni podljusku operativnog sistema\n" " ? Ispi¹i ovu listu\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Nema novog dijela arhive; zavr¹avam.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, fuzzy, c-format msgid "%s command failed" msgstr "Neuspjela `%s' naredba" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s nije nastavljen za ovom dijelu arhive" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s nije nastavljen za ovom dijelu arhive" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s je pogre¹ne velièine (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Ovaj dio arhive je izvan slijeda" # FIXME -- clean against source! (TM) -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Arhiva nije oznaèena labelom da odgovara %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Dio arhive %s ne odgovara %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "" @@ -794,20 +801,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Uspio proèitati samo %lu od %lu bajtova" msgstr[1] "Uspio proèitati samo %lu od %lu bajtova" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Sadr¾aji se razlikuju" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Neoèekivani EOF u arhivi" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Tipovi datoteka se razlikuju" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Mod se razlikuje" @@ -823,145 +830,145 @@ msgstr "Gid se razlikuje" msgid "Mod time differs" msgstr "Mod time (vrijeme modifikacije) se razlikuje" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Velièina se razlikuje" # FIXME -- language purists might lynch me for this "polinkan" -- TM -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Nije polinkan na %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Simbolièki link se razlikuje" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Broj ureðaja (device number) se razlikuje" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verificiraj " -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Nepoznat tip datoteke '%c', diff-iran kao normalna datoteka" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" -#: src/compare.c:599 +#: src/compare.c:593 #, fuzzy, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "NEUSPJELA VERIFIKACIJA: detektirano %d pogre¹nih zaglavlja" msgstr[1] "NEUSPJELA VERIFIKACIJA: detektirano %d pogre¹nih zaglavlja" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "vrijednost %s izvan %s raspona %s..%s; substituiram %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "vrijednost %s izvan %s raspona %s..%s" # FIXME -- find `pade¾' here from source -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Generiram negativna oktalna zaglavlja" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, fuzzy, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: datoteka nepromijenjena; ne arhiviram ju" -#: src/create.c:634 +#: src/create.c:621 #, fuzzy, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: datoteka nepromijenjena; ne arhiviram ju" -#: src/create.c:661 +#: src/create.c:648 #, fuzzy, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: datoteka nepromijenjena; ne arhiviram ju" -#: src/create.c:1078 +#: src/create.c:1062 #, fuzzy, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Datoteka se skratila za %s bajtova; nadopunjujemo nulama" msgstr[1] "%s: Datoteka se skratila za %s bajtova; nadopunjujemo nulama" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: datoteka je na drugom datoteènom sustavu; ne arhiviram ju" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Nepoznat tip datoteke; datoteka ignorirana" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr " link do %s\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: datoteka nepromijenjena; ne arhiviram ju" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: datoteka je arhiva; ne arhiviram ju" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: datoteka se promijenila dok smo ju èitali" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: socket ignoriran" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: door ignoriran" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Preskaèem do slijedeæeg zaglavlja" @@ -970,77 +977,77 @@ msgstr "Preska msgid "Deleting non-header from archive" msgstr "Bri¹em neispravno zaglavlje iz arhive" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, fuzzy, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: oznaka vremena %s je %lu sekundi u buduænost" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Neoèekivana nekonzistentnost kod otvaranja direktorija" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Direktoriju promijenjeno ime prije nego ¹to mu je dobavljen status" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Ekstrahiram neprekinute datoteke kao regularne datoteke" # FIXME -- 'hard links' -- TM -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Poku¹avam ekstrakciju simbolièkih linkova kao hard linkova" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "" "%s: Ne mogu ekstrahirati -- datoteka se nastavlja iz drugog dijela arhive" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Neoèekivan EOF u mangliranim imenima" -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Nepoznat tip datoteke '%c', ekstrahiran kao normalna datoteka" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Nisam uspio napraviti backup ove datoteke" -#: src/extract.c:1402 +#: src/extract.c:1568 #, fuzzy, c-format msgid "Cannot rename %s to %s" msgstr "%s: Ne mogu preimenovati u %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Direktoriju promijenjeno ime" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Direktoriju promijenjeno ime" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Novi direktorij" @@ -1153,35 +1160,35 @@ msgstr "%s: Bri msgid "%s: Cannot remove" msgstr "%s: Ne mogu obrisati" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Izostavljam" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blok %s: ** Blok ispunjen NULama **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blok %s: ** Kraj datoteke **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Razmaci u zaglavlju gdje se oèekuje numerièka %s vrijednost" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1189,141 +1196,144 @@ msgstr "" "komplement" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Oktalna vrijednost iz arhive %.*s je izvan %s opsega" # FIXME -- obsolescent -- TM -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Arhiva sadr¾i base-64 zaglavlja zastarjelog formata" # FIXME?? -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Base-64 vrijednost s predznakom %s iz arhive je izvan %s opsega" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Base-256 vrijednost iz arhive je izvan %s opsega" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Arhiva sadr¾i %.*s gdje je oèekivana numerièka %s vrijednost" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Vrijednost %s iz arhive je izvan %s opsega %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " link do %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " nepoznat tip datoteke %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Zaglavlje dijela arhive--\n" # FIXME -- clarify against source -- TM -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Nastavljeno s bajtom %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Kreiram direktorij:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Ne mogu promijeniti radni direktorij" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Preimenujem %s u %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Ne mogu preimenovati u %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Preimenujem %s natrag u %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Ne mogu pohraniti radni direktorij" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Ne mogu promijeniti radni direktorij" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Datoteka uklonjena (removed) prije nego ¹to smo ju proèitali" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Datoteka uklonjena (removed) prije nego ¹to smo ju proèitali" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "podproces" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "meðuprocesni kanal" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Nije naðeno u arhivi" -#: src/names.c:622 +#: src/names.c:615 #, fuzzy, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Nije naðeno u arhivi" -#: src/names.c:894 +# FIXME -- clean against source! (TM) +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Arhiva nije oznaèena labelom da odgovara %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1347,7 +1357,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 #, fuzzy msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " @@ -1367,7 +1377,7 @@ msgstr "" "op¹irno.\n" " %s -xf arhiva.tar # Ekstrahiraj sve datoteke iz arhiva.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 #, fuzzy msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" @@ -1388,80 +1398,80 @@ msgstr "" " nil, existing pobrojani ako pobrojani veæ postoje, inaèe jednostavni\n" " never, simple uvijek radi jednostavne backupe\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" -#: src/tar.c:394 +#: src/tar.c:395 #, fuzzy msgid "create a new archive" msgstr "Neoèekivani EOF u arhivi" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1469,566 +1479,566 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 #, fuzzy msgid "extract files to standard output" msgstr "Pogre¹ka u pisanju na standardni izlaz" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" # FIXME -- volume -- find more suitable (ask others) -- TM -#: src/tar.c:556 +#: src/tar.c:557 #, fuzzy msgid "create/list/extract multi-volume archive" msgstr "Ne mogu verificirati vi¹edjelne arhive" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" -#: src/tar.c:582 +#: src/tar.c:583 #, fuzzy msgid "Archive format selection:" msgstr "Konfliktne opcije formata arhive" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Konfliktne opcije za kompresiju" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" -#: src/tar.c:641 +#: src/tar.c:642 #, fuzzy msgid "change to directory DIR" msgstr "Ne mogu promijeniti radni direktorij" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" -#: src/tar.c:682 +#: src/tar.c:683 #, fuzzy msgid "don't strip leading `/'s from file names" msgstr "Uklanjam vodeæe `%.*s' iz imena èlanova" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "Dio arhive %s ne odgovara %s" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2036,242 +2046,247 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" +msgstr "Pogre¹an mod dan opcijom" + +#: src/tar.c:758 +msgid "print file time to its full resolution" msgstr "" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Ne mo¾ete navesti vi¹e od jedne od `-Acdtrux' opcija" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Konfliktne opcije za kompresiju" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr " nepoznat tip datoteke %s\n" -#: src/tar.c:1017 +#: src/tar.c:1020 #, fuzzy msgid "Date sample file not found" msgstr "Datoteka s datumom nije pronaðena" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Substituiram %s za nepoznat format datuma %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, fuzzy, c-format msgid "%s: file list already read" msgstr "%s: datoteka je arhiva; ne arhiviram ju" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "%s: datoteka je arhiva; ne arhiviram ju" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" # FIXME -- clarify this against source and man -- TM -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Pogre¹an faktor pakiranja u blokove" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Pogre¹na duljina trake" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Vi¹e od jednog datuma s pragom (threshold)" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Pogre¹na grupa" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Pogre¹an mod dan opcijom" -#: src/tar.c:1894 +#: src/tar.c:1912 #, fuzzy msgid "Invalid number" msgstr "Pogre¹an inode broj" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Pogre¹an vlasnik" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Pogre¹na velièina sloga (record)" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Velièina sloga (record) mora biti vi¹ekratnik %d." -#: src/tar.c:2000 +#: src/tar.c:2019 #, fuzzy msgid "Invalid number of elements" msgstr "Pogre¹na duljina trake" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Opcije `-[0-7][lmh]' nisu podr¾ane od strane *ovog* tar-a" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Stara opcija `%c' zahtijeva obavezan argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 #, fuzzy msgid "Multiple archive files require `-M' option" msgstr "Vi¹edjelne arhive zahtijevaju `-M' opciju" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Ne mogu kombinirati --listed-incremental s --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, fuzzy, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2279,50 +2294,50 @@ msgstr[0] "%s: Oznaka dijela arhive je preduga msgstr[1] "%s: Oznaka dijela arhive je predugaèka (limit je %lu bajtova)" # FIXME -- volume -- find more suitable (ask others) -- TM -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Ne mogu verificirati vi¹edjelne arhive" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Ne mogu verificirati komprimirane arhive" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Ne mogu koristiti vi¹edjelne komprimirane arhive" -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "Ne mogu a¾urirati komprimirane arhive" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" # LOL -- TM -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Kukavièki odbijam kreirati praznu arhivu!" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Opcije `-Aru' nisu kompatibilne s `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Morate specificirati jednu od `-Acdtrux' opcija" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2334,85 +2349,85 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Datoteka se skratila za %s bajtova" msgstr[1] "%s: Datoteka se skratila za %s bajtova" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Oznaka vremena izvan opsega" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" # FIXME?? -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "Base-64 vrijednost s predznakom %s iz arhive je izvan %s opsega" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, fuzzy, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Vrijednost %s iz arhive je izvan %s opsega %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2453,248 +2468,259 @@ msgstr "To msgid "Read checkpoint %u" msgstr "Toèka provjere èitanja %d" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Generiraj podatkovne datoteke za GNU tar skup test programa.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Konfliktne opcije za kompresiju" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "Pogre¹ka u pisanju na standardni izlaz" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr "" "\n" "Kori¹tenje: %s [OPCIJA]...\n" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Pogre¹na oznaka vremena" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Inode broj izvan opsega" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Nepoznata pogre¹ka u sistemu" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Ne mogu zatvoriti" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr " nepoznat tip datoteke %s\n" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "%s: Neuspjeli seek na %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "%s: Neuspjeli seek na %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, fuzzy, c-format msgid "Command failed with status %d\n" msgstr "Potproces zavr¹io uz signal %d" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" # FIXME -- 'mangled filenames'??? -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Manglirana imena datoteka--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Ne mogu pohraniti radni direktorij" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s: Ne mogu preimenovati u %s" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: ilegalna opcija -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Èitam %s\n" + #, fuzzy #~ msgid "" #~ "\n" @@ -2703,12 +2729,6 @@ msgstr "--Manglirana imena datoteka--\n" #~ "\n" #~ "Prijavi gre¹ke i bugove na .\n" -#~ msgid "Reading %s\n" -#~ msgstr "Èitam %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Gre¹ka iz koje se ne mogu oporaviti: zavr¹avam s radom" - #, fuzzy #~ msgid "filter the archive through compress" #~ msgstr "%s: datoteka je arhiva; ne arhiviram ju" @@ -2752,6 +2772,9 @@ msgstr "--Manglirana imena datoteka--\n" #~ msgid "Premature end of file" #~ msgstr "Prerani kraj datoteke" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Gre¹ka iz koje se ne mogu oporaviti: zavr¹avam s radom" + #~ msgid "block size" #~ msgstr "velièina bloka" diff --git a/po/hu.gmo b/po/hu.gmo index 1640973853d0b1c7014a5c173a97f27d6197337a..9618a295b2fd5d18ffff7077ed4ed89716c0c119 100644 GIT binary patch delta 11989 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 B;Vb|E diff --git a/po/hu.po b/po/hu.po index 76fadda..9a5eaff 100644 --- a/po/hu.po +++ b/po/hu.po @@ -4,14 +4,16 @@ # # Gábor István , 2002. # Gabor Kelemen , 2006, 2007, 2008, 2009, 2010. +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22.91\n" +"Project-Id-Version: tar 1.23\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2010-02-23 20:01+0100\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-03-10 16:57+0100\n" "Last-Translator: Gabor Kelemen \n" "Language-Team: Hungarian \n" +"Language: hu\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -90,7 +92,7 @@ msgstr "" msgid "Report bugs to %s.\n" msgstr "A hibák a(z) %s címen jelenthetők.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Ismeretlen rendszerhiba" @@ -102,8 +104,8 @@ msgstr "ezen súgószöveg megjelenítése" msgid "give a short usage message" msgstr "rövid használati utasítás megjelenítése" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NÉV" @@ -141,56 +143,61 @@ msgstr "(PROGRAMHIBA) A kapcsolót fel kellett volna ismerni???" msgid "write error" msgstr "íráshiba" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: a(z) „%s” kapcsoló nem egyértelmű\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: a(z) „--%s” kapcsoló nem enged meg argumentumot\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: a(z) „%c%s” kapcsoló nem enged meg argumentumot\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 -#, c-format -msgid "%s: option '%s' requires an argument\n" +#: gnu/getopt.c:639 gnu/getopt.c:658 +#, fuzzy, c-format +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: a(z) „%s” kapcsolóhoz argumentum szükséges\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: a(z) „--%s” kapcsoló ismeretlen\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: a(z) „%c%s” kapcsoló ismeretlen\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: érvénytelen kapcsoló -- „%c”\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: a kapcsoló egy argumentumot igényel -- „%c”\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: a „-W %s” kapcsoló nem egyértelmű\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: a „-W %s” kapcsoló nem enged meg argumentumot\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: a(z) „%s” kapcsolóhoz argumentum szükséges\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "elfogyott a memória" @@ -536,191 +543,191 @@ msgstr "szabványos kimenet" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Nem lehet csatlakozni ehhez: %s: a feloldás meghiúsult" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Nem futtatható távoli parancssor" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "A keresési irány kívül esik a tartományon" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "Érvénytelen pozicionálási irány" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "Érvénytelen pozicionálási eltolás" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "A keresési eltolás kívül esik a tartományon" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "Érvénytelen bájtszám" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "A bájtszám kívül esik a tartományon" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "Idő előtti fájlvége" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "Érvénytelen működési kód" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "A művelet nem támogatott" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "Váratlan paraméterek" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" "Szalagos meghajtó manipulálása, parancsok elfogadása távoli folyamattól" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "SZÁM" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "hibakeresési szint beállítása" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FÁJL" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "hibakeresés kimeneti fájlnevének beállítása" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "a(z) %s nem nyitható meg" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "túl sok argumentum" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Értelmetlen parancs" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Ez nem úgy néz ki, mint egy tar archívum" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Kiírt bájtok teljes száma" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Olvasott bájtok teljes száma" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Törölt bájtok teljes száma: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(cső)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "A record_size értéke érvénytelen" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Nem adott meg archívumnevet" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Nem ellenőrizhető az archívum, ha a szabványos be/kimenetet használja" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Az archívum tömörített. Használja a(z) %s kapcsolót." -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Tömörített archívumok nem frissíthetők" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "A szalag eleje, most kilépek" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Túl sok hiba, kilépek" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Rekordméret = %lu blokk" msgstr[1] "Rekordméret = %lu blokk" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Kitöltetlen blokk (%lu bájt) az archívumban" msgstr[1] "Kitöltetlen blokk (%lu bájt) az archívumban" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Nem törölhető vissza az archív fájl, lehet hogy olvashatatlan lesz a -i " "nélkül" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "az rmtlseek nem állt meg egy rekord határán" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: érvénytelen kötetszámot tartalmaz" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Kötetszám-túlcsordulás" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Készítse elő a(z) %d kötetet %s számára és üssön entert:" -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Fájlvége a várt felhasználói válasz helyett" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "FIGYELMEZTETÉS: Az archívum befejezetlen" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -731,67 +738,67 @@ msgstr "" " q A Tar megszakítása\n" " y vagy újsor A művelet folytatása\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Új parancsértelmező hívása\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Ezen lista kiírása\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Nincs új kötet, kilépés.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Nincs megadva fájlnév, próbálkozzon újra.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Érvénytelen bemenet. A súgó a ? beírásával kérhető le.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "A(z) „%s” parancs meghiúsult" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s lehetséges, hogy ezen a köteten folytatódott: a fejléc csonkolt nevet " "tartalmaz" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s nem folytatódik ezen a köteten" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s mérete hibás (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Ez a kötet kívül esik a sorozaton (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Az archívum nincs úgy címkézve, hogy megfeleljen a következőhöz: %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "A(z) %s kötet nem felel meg a következőnek: %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -799,7 +806,7 @@ msgstr "" "%s: a fájlnév túl hosszú egy GNU többkötetes fejlécben való tároláshoz, " "csonkításra került" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "az írás nem egy rekord határán fejeződött be" @@ -810,20 +817,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Csak %lu bájt olvasható %lu bájtból" msgstr[1] "Csak %lu bájt olvasható %lu bájtból" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "A tartalom eltér" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Váratlan fájlvége jel az archívumban" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "A fájltípus eltér" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "A mód eltér" @@ -839,147 +846,147 @@ msgstr "A Gid eltér" msgid "Mod time differs" msgstr "A módosítási idő eltér" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "A méret eltér" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Nincs a következőre linkelve: %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "A szimbolikus link eltér" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Az eszközszám eltér" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Ellenőrzés " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "" "%s: A(z) „%c” fájltípus ismeretlen, a diffelés normális fájlként történt" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Az archívum eltávolított előtagokkal rendelkező fájlneveket tartalmaz." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" "Lehetséges, hogy az ellenőrzés nem fogja megtalálni az eredeti fájlokat." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "AZ ELLENŐRZÉS SIKERTELEN: %d érvénytelen fejléc található" msgstr[1] "AZ ELLENŐRZÉS SIKERTELEN: %d érvénytelen fejléc található" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Egy magányos nulla blokk %s helyen" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: fájl gyorsítótár-könyvtár címkét tartalmaz (%s); %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "" "a(z) %s érték a(z) %s %s...%s tartományán kívül esik, helyettesítve a " "következővel: %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "a(z) %s érték a(z) %s %s...%s tartományán kívül esik" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Negatív oktális fejlécek előállítása" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: a fájlnév túl hosszú (maximum: %d), nem kerül kiírásra" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: a fájlnév túl hosszú (nem darabolható), nem kerül kiírásra" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: a fájlnév túl hosszú, nem kerül kiírásra" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: a fájl zsugorítva %s bájtra, nullákkal kerül kitöltésre" msgstr[1] "%s: a fájl zsugorítva %s bájtra, nullákkal kerül kitöltésre" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: a fájl eltérő fájlrendszeren van, nem kerül kiírásra" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "a tartalom nem került kiírásra" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Ismeretlen fájltípus, fájl a figyelmen kívül hagyva" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." msgstr "Hiányzó linkek a következőre: „%s”." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: a fájl változatlan, nem kerül kiírásra" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: a fájl az archívumban van, nem kerül kiírásra" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "a könyvtár nem került kiírásra" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: a fájl módosult olvasás közben" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: a foglalat figyelmen kívül hagyva" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: ajtó figyelmen kívül hagyva" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Ugrás a következő fejlécre" @@ -987,74 +994,74 @@ msgstr "Ugrás a következő fejlécre" msgid "Deleting non-header from archive" msgstr "A nem fejlécek törlése az archívumból" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: valószínűtlenül régi időbélyeg: %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: a(z) %s időbélyeg %s másodperccel a jövőbe mutat" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Váratlan inkonzisztencia a könyvtár létrehozása során" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: a könyvtár átnevezésre került az állapotának kinyerése előtt" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "A folytonos fájlok kibontása normál fájlként" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Kísérlet a szimbolikus linkek kibontására közvetlen linkként" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: nem lehet kibontani -- a fájl egy másik köteten folytatódik" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Váratlan hosszú névfejléc" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Ismeretlen fájltípus: „%c”, normál fájlként lesz kibontva" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "A jelenlegi „%s” újabb vagy egyező korú" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Nem sikerült biztonsági mentést készíteni erről a fájlról" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "%s: Nem nevezhető át a következőre: %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: A könyvtár át lett nevezve a következőről: %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: a könyvtár át lett nevezve" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: a könyvtár új" @@ -1169,36 +1176,36 @@ msgstr "%s: %s törlése\n" msgid "%s: Cannot remove" msgstr "%s: nem távolítható el" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: kihagyás" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blokk %s: ** A blokk üres **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blokk %s: ** Fájlvége **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blokk %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "" "Üres értékek a fejléc azon részében, ahol a program a(z) %s számértéket várta" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1206,145 +1213,145 @@ msgstr "" "feltételezi, hogy kettes komplemens" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Az archívum %.*s oktális értéke túllépi a(z) %s tartományt" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Az archívum elavulófélben levő base-64-es fejléceket tartalmaz" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" "Az archívum előjeles base-64 karakterlánca (%s) túllépi a(z) %s tartományt" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Az archívum base-256-os értéke túllépi a(z) %s tartományt" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Az archívum %.*s értéket tartalmaz, ahol a program %s számértéket vár" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Az archívum %s értéke túllépi a(z) %s %s..%s tartományát" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " link a következőre: %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " ismeretlen fájltípus: %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Hosszú link--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Hosszú név--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Kötetfejléc--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Folytatva %s bájttól--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Könyvtár létrehozása:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "A munkakönyvtár nem módosítható" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "%s átnevezése a következőre: %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Nem nevezhető át a következőre: %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "%s helyreállítása a következő névre: %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "A munkakönyvtár nem menthető" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "A munkakönyvtár nem módosítható" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: a fájl el lett távolítva a beolvasás előtt" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "%s: a könyvtár el lett távolítva a beolvasás előtt" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "gyermekfolyamat" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "folyamatközi csatorna" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "Mintaillesztő karaktereket használt a fájlnevekben. " +msgstr "Mintaillesztő karaktereket használt a fájlnevekben" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -"Használja a --wildcards kapcsolót a mintaillesztés engedélyezéséhez vagy a --" -"no-wildcards kapcsolót " +"Használja a --wildcards kapcsolót a mintaillesztés engedélyezéséhez, vagy a " +"--no-wildcards kapcsolót ezen figyelmeztetés letiltásához" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Nem található az archívumban" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: A szükséges előfordulás nem található az archívumban" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Az archívum nincs úgy címkézve, hogy megfeleljen a következőhöz: %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" "A -C használata fájllistán belül nem engedélyezett a --listed-incremental " "kapcsolóval" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "Csak egy -C engedélyezett a --listed-incremental kapcsolóval" @@ -1371,7 +1378,7 @@ msgstr "" "A(z) „%s” idézési stílus ismeretlen. Próbálja a „%s --quoting-style=help” " "parancsot segítségért." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1392,7 +1399,7 @@ msgstr "" " tar -xf archívum.tar # Kibontja az összes fájlt az archívum.tar\n" " fájlból.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1414,81 +1421,81 @@ msgstr "" " egyébként egyszerű\n" " never, simple mindig egyszerű mentés létrehozása\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Fő működési mód:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "felsorolja egy archívum tartalmát" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "fájlok kibontása egy archívumból" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "új archívum létrehozása" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "különbségek keresése az archívum és a fájlrendszer között" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "fájlok hozzáfűzése egy archívum végéhez" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "csak az archívumban lévő másolatnál újabb fájlok hozzáfűzése" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "tar fájlok hozzáfűzése egy archívumhoz" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "törlés az archívumból (szalagon nem működik!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "az archívum kötetcímkéjének tesztelése és kilépés" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Műveletmódosítók:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "ritka fájlok hatékony kezelése" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAGAS[.ALACSONY]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" "a használandó ritka formátum verziójának beállítása (magával vonja\n" " a --sparse kapcsolót)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "régi GNU formátumú növekményes mentés kezelése" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "új GNU formátumú növekményes mentés kezelése" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "kiíratási szint a létrehozott listázott növekményes archívumhoz" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "ne lépjen ki nem nulla értékkel ha a fájl olvashatatlan" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1501,122 +1508,122 @@ msgstr "" "átadásra a parancssoron vagy a -T kapcsolón keresztül. A SZÁM " "alapértelmezett értéke az 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "az archívum kereshető" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "az archívumban nem lehet pozicionálni" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "ne ellenőrizze az eszközszámokat növekményes archívumok létrehozásakor" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "eszközszámok ellenőrzése növekményes archívumok létrehozásakor " "(alapértelmezett)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Felülírás felügyelete:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "kísérlet az archívum ellenőrzésére annak kiírása után" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "fájlok eltávolítása azok archívumhoz adása után" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "ne cserélje a meglévő fájlokat kibontáskor" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "ne cserélje az archív változatuknál újabb meglévő fájlokat" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "meglévő fájlok felülírása kibontáskor" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "minden egyes fájl eltávolítása a rá történő kibontás előtt" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "hierarchiák kiürítése könyvtár kibontása előtt" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "meglévő könyvtárak metaadatainak megőrzése" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "meglévő könyvtárak metaadatainak felülírása kibontáskor (alapértelmezett)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Kimeneti adatfolyam kiválasztása:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "fájlok kibontása a szabványos kimenetre" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "PARANCS" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "kibontott fájlok továbbítása másik program számára" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "utódok kilépési kódjainak figyelmen kívül hagyása" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "az utódok nem nulla kilépési kódjainak kezelése hibaként" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Fájlattribútumok kezelése:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "a NÉV kényszerítése a hozzáadott fájlok tulajdonosaként" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "a NÉV kényszerítése a hozzáadott fájlok csoportjaként" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DÁTUM-VAGY-FÁJL" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "a DÁTUM-VAGY-FÁJL dátumnál újabb fájlok mtime értékének beállítása" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "MÓDOSÍTÁSOK" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "a (szimbolikus) mód módosítások kényszerítése a hozzáadott fájlokra" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "MÓDSZER" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1626,11 +1633,11 @@ msgstr "" "olvasás után történő visszaállításával (MÓDSZER='replace'; alapértelmezett) " "vagy az időpontok be nem állításával az első helyen (MÓDSZER='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "ne bontsa ki a fájl módosításának időpontját" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" @@ -1638,22 +1645,22 @@ msgstr "" "próbálja az archívumban létezővel azonos tulajdonossal kibontani a fájlokat " "(alapértelmezett a rendszergazdának)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" "fájlok kibontása a saját nevében (alapértelmezett normál felhasználóknak)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "mindig számok használata a felhasználó- vagy csoportnevekhez" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "a fájl jogosultságaival kapcsolatos információk kibontása (alapértelmezett a " "rendszergazda számára)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1661,15 +1668,15 @@ msgstr "" "a felhasználó umask értékének alkalmazása a jogosultságok kibontásakor az " "archívumból (alapértelmezett az egyszerű felhasználók számára)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "kibontandó nevek rendezése, az archívumnak való megfelelés érdekében" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "azonos, mint a -p és -s egyszerre" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1677,139 +1684,139 @@ msgstr "" "kibontott könyvtárak módosítási idői és jogosultságai beállításának " "késleltetése a kibontás befejeztéig" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "a --delay-directory-restore kapcsoló hatásának megszüntetése" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Eszköz kiválasztása és váltása:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHÍVUM" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "az ARCHÍVUM archívumfájl vagy -eszköz használata" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "az archívumfájl helyi, még ha tartalmaz is kettőspontot" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "az adott rmt PARANCS használata az rmt helyett" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "a távoli PARANCS használata az rsh helyett" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "meghajtó és sűrűség megadása" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "többkötetes archívum létrehozása/listázása/kibontása" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "szalagváltás a SZÁM x 1024 bájt kiírása után" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "parancsfájl futtatása minden egyes szalag végén (-M esetén)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "a FÁJLBAN található számú kötet használata/frissítése" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Eszközblokkolás:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOKK" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "rekordonként BLOKK x 512 bájt" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "SZÁM bájt rekordonként, az 512 többszöröse" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "nullázott blokkok (EOF) mellőzése az archívumban" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "újrablokkolás olvasáskor (4.2BSD csövekhez)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Archívumformátum kiválasztása:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMÁTUM" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "az adott formátumú archívum létrehozása" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "A FORMÁTUM a következők egyike:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "régi V7 tar formátum" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "A tar <= 1.12 által használt GNU formátum" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU tar 1.13.x formátum" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) formátum" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) formátum" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "azonos a pax formátummal" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "azonos a --format=v7 formátummal" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "azonos a --format=posix formátummal" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "kulcsszó[[:]=érték][,kulcsszó[[:]=érték]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "a pax kulcsszavak irányítása" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "SZÖVEG" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1817,80 +1824,80 @@ msgstr "" "archívum létrehozása a SZÖVEG kötetnévvel. Listázáskor vagy kibontáskor " "használja a kötetnév keresési mintájaként a SZÖVEGET" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Tömörítési kapcsolók:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "archívum kiterjesztésének használata a tömörítőprogram meghatározására" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" "ne használja az archívum kiterjesztését a tömörítőprogram meghatározására" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "tömörítése a PROG használatával (el kell fogadnia a -d kapcsolót)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Helyi fájlválasztás:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "az adott FÁJL hozzáadása az archívumhoz (hasznos, ha neve kötőjellel " "kezdődik)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "KÖNYVTÁR" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "váltás a KÖNYVTÁR könyvtárba" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "kibontandó nevek lekérdezése vagy létrehozás a FÁJLBÓL" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "a -T nullal lezárt neveket olvas, letiltja a -C kapcsolót" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "a korábbi --null kapcsoló hatásának letiltása" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" "a -T segítségével beolvasott fájlnevek idézettségének megszüntetése " "(alapértelmezett)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "ne szüntesse meg a -T segítségével beolvasott fájlnevek idézettségét" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "MINTA" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "a MINTAKÉNT megadott fájlok kihagyása" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "a FÁJLBAN megadott minták kihagyása" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1898,96 +1905,96 @@ msgstr "" "a CACHEDIR.TAG-et tartalmazó könyvtárak tartalmának kihagyása, a címkefájl " "kivételével" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "a CACHEDIR.TAG-et tartalmazó könyvtárak alatt minden kihagyása" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "a CACHEDIR.TAG-et tartalmazó könyvtárak kihagyása" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" "a FÁJLT tartalmazó könyvtárak tartalmának kihagyása, a FÁJL kivételével" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "a FÁJLT tartalmazó könyvtárak alatt minden kihagyása" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "a FÁJLT tartalmazó könyvtárak kihagyása" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "verziókezelő-könyvtárak kihagyása" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "mentési és zárolási fájlok kihagyása" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "ne lépjen be automatikusan a könyvtárakba" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "az archívum létrehozásakor maradjon a helyi fájlrendszeren" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "belépés a könyvtárakba rekurzívan (alapértelmezett)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "ne vágja le a kezdő „/” jelet a fájlnevekből" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "szimbolikus linkek követése; az általuk mutatott fájlok archiválása és " "kiíratása" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" "közvetlen linkek követése; az általuk mutatott fájlok archiválása és " "kiíratása" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "TAGNÉV" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "kezdés a TAGNÉV tagnál az archívumban" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "csak a DÁTUM-VAGY-FÁJL dátumnál újabb fájlok tárolása" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DÁTUM" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "dátum és idő összehasonlítása ha csak a dátum módosult" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "FELÜGYELET" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "mentés eltávolítás előtt, a FELÜGYELET verzió kiválasztása" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "KARAKTERLÁNC" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1995,102 +2002,102 @@ msgstr "" "mentés eltávolítás előtt, a szokásos utótag („~”, hacsak a " "SIMPLE_BACKUP_SUFFIX környezeti változó nem bírálja felül) felülbírálása" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Fájlnév-átalakítások:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "a fájlnevek SZÁM darab kezdő összetevőjének levágása kibontáskor" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "KIFEJEZÉS" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" "A KIFEJEZÉS sed helyettesítőkifejezés használata fájlnevek átalakítására" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Fájlnévillesztés beállításai (érintik mind a kihagyási, mind a felvételi " "mintákat):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "kis- és nagybetűk figyelmen kívül hagyása" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "a minták illesztése a fájlnevek elejére" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "a minták illesztése bármely / után (alapértelmezett kihagyáskor)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "kis- és nagybetűkre érzékeny illesztés (alapértelmezett)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "helyettesítő karakterek használata (alapértelmezett kihagyáskor)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "szó szerinti karakterlánc-illesztés" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "a helyettesítő karakterek nem illeszkednek a perjelre" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" "a helyettesítőkarakterek illeszkednek a „/” jelre (alapértelmezett " "kihagyáskor)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Informatív kimenet:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "feldolgozott fájlok bőbeszédű listázása" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "KULCSSZÓ" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "figyelmeztetés felügyelete" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" "előrehaladási üzenetek megjelenítése minden SZÁM. rekordnál (alapértelmezés: " "10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "MÅ°VELET" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "a MÅ°VELET végrehajtása minden ellenőrzőponton" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "üzenet kiírása, ha nem minden link került kiíratásra" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SZIGNÁL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2102,27 +2109,32 @@ msgstr "" "Az engedélyezett szignálok: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 és SIGUSR2; a " "SIG előtag nélküli nevek is elfogadottak" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "a fájlmódosítási dátumok kiírása UTC szerint" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "bőbeszédű kimenet küldése a FÁJLBA" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "az archívumon belüli blokkszám megjelenítése minden egyes üzenettel" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "megerősítés kérése minden egyes művelethez" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "a tar alapértelmezéseinek megjelenítése" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2130,31 +2142,31 @@ msgstr "" "listázáskor vagy kibontáskor minden egyes, a keresési feltételnek meg nem " "felelő könyvtár listázása" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "fájl- vagy archívumnevek megjelenítése átalakítás után" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STÍLUS" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "az idézési stílus beállítása, az érvényes STÍLUS értékeket lásd alább" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "a KARAKTERLÁNCBÓL származó karakterek kiegészítő idézése" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "a KARAKTERLÁNCBÓL származó karakterek idézésének letiltása" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Kompatibilitási kapcsolók:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2162,64 +2174,64 @@ msgstr "" "létrehozáskor megegyezik a --old-archive kapcsolóval; kibontáskor a --no-" "same-owner kapcsolóval" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Egyéb kapcsolók:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "néhány potenciálisan káros kapcsoló használatának letiltása" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "" "A következő kapcsolók közül egynél többet nem használhat: „-Acdtrux” vagy „--" "test-label”" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "A tömörítési kapcsolók ütköznek" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Ismeretlen szignálnév: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "A dátummintafájl nem található" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "%s cseréje az ismeretlen %s dátumformátumhoz" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "„%s” kapcsoló: A(z) „%s” dátum kezelése mint %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: a fájllista már be van olvasva" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: a beolvasott fájlnév null karaktert tartalmaz" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "az archívum tömörítése a(z) %s használatával" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "A --quoting-style kapcsoló érvényes paraméterei:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2227,52 +2239,52 @@ msgstr "" "\n" "*Ezen* tar alapértelmezései:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Érvénytelen blokkolási tényező" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Érvénytelen szalagméret" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "Hibás növekményszintérték" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Egynél több küszöbdátum" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Érvénytelen ritka verzió érték" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" "Az --atime-preserve='system' nem támogatott ezen az operációs rendszeren" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "A --checkpoint értéke nem egy egész" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "Érvénytelen csoport" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Érvénytelen mód került megadásra a kapcsolóban" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Érvénytelen szám" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Érvénytelen tulajdonos" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2280,117 +2292,117 @@ msgstr "" "A --preserve kapcsoló elavult, használja a --preserve-permissions --preserve-" "order kapcsolókat helyette" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Érvénytelen rekordméret" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "A rekordméretnek %d többszörösének kell lennie." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Érvénytelen elemszám" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Csak egy --to-command kapcsoló engedélyezett" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Rosszul formázott sűrűségargumentum: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Ismeretlen sűrűség: „%c”" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "A „-[0-7][lmh]” kapcsolókat *ez* a tar NEM támogatja" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FÁJL]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "A régi „%c” kapcsoló paramétert igényel." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "a --occurrence értelmetlen fájllista nélkül" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "a --occurrence nem használható a kért működési módban" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Több archívumfájl esetén szükséges a „-M” kapcsoló" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "" "A --listed-incremental és a --newer kapcsolók nem használhatók egyszerre" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "a --level értelmetlen a --listed-incremental nélkül" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: A kötetcímke túl hosszú (a korlát %lu bájt)" msgstr[1] "%s: A kötetcímke túl hosszú (a korlát %lu bájt)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "A többkötetes archívumok nem ellenőrizhetők" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "A tömörített archívumok nem ellenőrizhetők" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Nem használhatók többkötetes tömörített archívumok" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Tömörített archívumok nem fűzhetők össze" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "a --pax kapcsoló csak POSIX archívumokon használható" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "A kötet hossza nem lehet kisebb a rekord méreténél" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "a --preserve-order nem kompatibilis a --listed-incremental kapcsolóval" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Üres archívum létrehozása visszautasítva" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Az „-Aru” kapcsolók összeférhetetlenek a „-f” kapcsolóval" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "" "Meg kell adnia a következő kapcsolók egyikét: „-Acdtrux” vagy „--test-label”" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Kilépés hibaállapottal a korábbi hibák miatt" @@ -2402,88 +2414,88 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: A fájl zsugorítva %s bájttal" msgstr[1] "%s: A fájl zsugorítva %s bájttal" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "A(z) %s kulcsszó ismeretlen vagy még nincs megvalósítva" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "Az időbélyeg kívül esik az engedélyezett tartományon" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "A(z) %s minta nem használható" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "A(z) %s minta nem bírálható felül" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Rosszul formázott kiterjesztett fejléc: a hossz hiányzik" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "A kiterjesztett fejléc hossza kívül esik a tartományon" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "A kiterjesztett fejléc %*s hossza kívül esik a tartományon" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" "Rosszul formázott kiterjesztett fejléc: a hossz után hiányzik egy üres hely " "karakter" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "A kiterjesztett fejléc hibás: egy egyenlőségjel hiányzik" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Rosszul formázott kiterjesztett fejléc: az újsor hiányzik" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" "A(z) „%s” ismeretlen kiterjesztett fejléc kulcsszó figyelmen kívül marad" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "Az előállított kulcsszó/érték pár túl hosszú (kulcsszó: %s, hossz: %s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "A kiterjesztett fejléc %s=%s értéke túllépi a(z) %s..%s tartományát" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Rosszul formázott kiterjesztett fejléc: érvénytelen %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Rosszul formázott kiterjesztett fejléc: többlet %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -"Rosszul formázott kiterjesztett fejléc: érvénytelen %s: váratlan határoló (%" -"c)" +"Rosszul formázott kiterjesztett fejléc: érvénytelen %s: váratlan határoló " +"(%c)" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2526,7 +2538,7 @@ msgstr "%u. írási ellenőrzőpont" msgid "Read checkpoint %u" msgstr "%u. olvasási ellenőrzőpont" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2534,72 +2546,72 @@ msgstr "" "a genfiles adatfájlokat kezel a GNU paxutils tesztcsomag számára.\n" "A KAPCSOLÓK:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Fájllétrehozási kapcsolók:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "MÉRET" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Az adott MÉRETÅ° fájl létrehozása" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Írás a NÉV nevű fájlba a szabványos kimenet helyett" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Fájlnevek beolvasása a FÁJLBÓL" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "a -T nullal lezárt neveket olvas" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "A fájl feltöltése az adott MINTÁVAL. A MINTA a 'default' (alapértelmezett) " "vagy 'zeros' (nullák) egyike" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Egy blokk mérete ritka fájlhoz" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Ritka fájl előállítása. A parancssor többi része megadja a fájlleképezést." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "ELTOLÁS" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Az adott eltolásra pozicionálás az adatok kiírása előtt" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Fájlstatisztika kapcsolói:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "A stat struktúra tartalmának kiírása minden egyes megadott fájlhoz. Az " "alapértelmezett FORMÁTUM: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Szinkron végrehajtási kapcsolók:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "KAPCSOLÓ" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" @@ -2607,22 +2619,22 @@ msgstr "" "Az adott ARGS végrehajtása. Hasznos a --checkpoint és a --cut, --append, --" "touch vagy --unlink egyikével" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "Az adott művelet (lásd alább) végrehajtása a SZÁM-adik ellenőrzőpont elérése " "után" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Dátum beállítása a következő --touch kapcsoló számára" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" "Végrehajtott ellenőrzőpontok és a PARANCS kilépési állapotának megjelenítése" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2630,7 +2642,7 @@ msgstr "" "Szinkron végrehajtási tevékenységek. Ezek a --checkpoint kapcsoló által " "megadott számú ellenőrzőpont elérésekor kerülnek végrehajtásra." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2638,147 +2650,145 @@ msgstr "" "A FÁJL csonkolása az előző --length kapcsoló által megadott méretre (vagy " "nullára, ha nincs megadva)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "MÉRET bájt hozzáfűzése a FÁJLHOZ. A MÉRETET az előző --length kapcsoló adja " "meg." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "A FÁJL hozzáférési és módosítási idejének frissítése" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "A PARANCS végrehajtása" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "A FÁJL törlése" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Érvénytelen méret: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "A szám kívül esik az engedélyezett tartományon: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Negatív méret: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "a stat(%s) meghiúsult" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "a kért fájlhossz %lu, a tényleges %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "a létrehozott fájl nem ritka" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Hiba a(z) „%s” közelében található szám elemzésekor" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Ismeretlen dátumformátum" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGUMENTUMOK...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "a(z) „%s” nem nyitható meg" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "Nem lehet pozicionálni" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "a fájlnév null karaktert tartalmaz" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "nem állíthatók elő ritka fájlok a szabványos kimeneten, használja a --file " "kapcsolót" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "helytelen maszk (a(z) „%s” közelében)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Ismeretlen mező: „%s”" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "nem állítható be az idő a következőn: „%s”" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "a(z) „%s” nem törölhető" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "A parancs sikeresen befejeződött\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "A parancs meghiúsult a következő állapottal: %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "A parancs befejeződött a következő szignállal: %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "A parancs leállítva a következő szignállal: %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "A parancs hibakeresési kimenetet adott vissza\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "A parancs befejeződött\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "a --stat fájlneveket igényel" -#~ msgid "Cannot resolve hostname %s" -#~ msgstr "Nem oldható fel a gépnév (%s)" - -#~ msgid "suppress this warning." -#~ msgstr "ezen figyelmeztetés elnyomásához." +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "A munkakönyvtár nem menthető" diff --git a/po/id.gmo b/po/id.gmo index df037d0ecb874f5dc274e692ea99dd6eeae13a85..c89b46372a8b557875a241e529e739dd56cc217c 100644 GIT binary patch delta 12543 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 AKL7v# diff --git a/po/id.po b/po/id.po index 0127933..afa4258 100644 --- a/po/id.po +++ b/po/id.po @@ -4,14 +4,16 @@ # Tedi Heriyanto , 1999, 2002. # Arif E. Nugroho , 2008, 2009, 2010. # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22.91\n" +"Project-Id-Version: tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2010-02-14 07:00+0700\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-14 10:00+0700\n" "Last-Translator: Arif E. Nugroho \n" "Language-Team: Indonesian \n" +"Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" @@ -87,7 +89,7 @@ msgstr "Coba `%s --help' atau `%s --usage' untuk informasi lebih lanjut.\n" msgid "Report bugs to %s.\n" msgstr "Laporkan bug ke %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Kesalahan sistem tidak dikenal" @@ -99,8 +101,8 @@ msgstr "berikan daftar bantuan ini" msgid "give a short usage message" msgstr "berikan sebuah pesan penggunaan singkat" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NAMA" @@ -138,56 +140,61 @@ msgstr "(APLIKASI ERROR) Pilihan seharusnya telah dikenali!?" msgid "write error" msgstr "error menulis" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: pilihan '%s' ambigu\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: pilihan '--%s' tidak mengijinkan sebuah argumen\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: pilihan '%c%s' tidak mengijinkan sebuah argumen\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: pilihan '%s' membutuhkan sebuah argumen\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: pilihan '--%s' membutuhkan sebuah argumen\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: pilihan tidak dikenal '--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: pilihan tidak dikenal '%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: pilihan -- '%c' tidak valid\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: pilihan membutuhkan sebuah argumen -- '%c'\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: pilihan '-W %s' ambigu\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: pilihan '-W %s' tidak mengijinkan sebuah argumen\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: pilihan '-W %s' membutuhkan sebuah argumen\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "kehabisan memori" @@ -529,189 +536,189 @@ msgstr "stdout" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Tidak dapat menghubungi ke %s: penelusuran gagal" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Tidak dapat menjalankan remote shell" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Arah pencarian di luar jangkauan" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "Arah pencarian tidak valid" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "Ofset pencarian tidak valid" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Offset pencarian di luar jangkauan" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "Jumlah byte tidak valid" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "Jumlah byte di luar jangkauan" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "EOF prematur" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "Kode operasi tidak valid" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "Operasi tidak didukung" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "Unexpected tidak terduga" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "Manipulasi sebuah tape drive, menerima perintah dari proses remote" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "NOMOR" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "tentukan tingkat penelusuran" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "BERKAS" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "tentukan keluaran nama berkas penelusuran" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "tidak dapat membuka %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "terlalu banyak argumen" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Perintah sampah" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Ini sepertinya bukan sebuah tar archive" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Total byte ditulis" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Total byte dibaca" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Total byte dihapus: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(pipe)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Nilai record_size tidak valid" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Tidak diberikan nama archive" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Tidak dapat memverifikasi stdin/stdout archive" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Archive terkompres. Gunakan %s pilihan" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Tidak dapat update compressed archives" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Berada pada awal tape, berhenti sekarang" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Terlalu banyak errors, berhenti" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Ukuran record = %lu blok" msgstr[1] "Ukuran record = %lu blok" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Blok tidak sesuai (%lu byte) dalam arsip" msgstr[1] "Blok tidak sesuai (%lu byte) dalam arsip" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Tidak dapat backspace file archives; kemungkinan tidak bisa dibaca tanpa -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek tidak dapat berhenti di sebuah batas rekaman" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: berisi nomor volum yang tidak valid" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Nomor volum overflow" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Mempersiapkan volume #%d untuk %s dan tekan return: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "EOF pada saat user reply diharapkan" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "PERINGATAN: Archive tidak lengkap" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -723,65 +730,65 @@ msgstr "" " q Batalkan tar\n" " y or newline Lanjutkan operasi\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Spawn sebuah subshell\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Tampilkan daftar ini\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Tidak ada new volume; keluar.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Nama berkas tidak dispesifikasikan. Coba lagi.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Masukan tidak valid. Ketik ? untuk bantuan.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "Perintah %s gagal" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s mungkin dilanjutkan di volume ini: header berisi nama terpotong" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s tidak dilanjutkan di volume ini" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s adalah ukuran yang salah (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Volume ini di luar urutan (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Label archive tidak cocok dengan %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Volume %s tidak sesuai dengan %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -789,7 +796,7 @@ msgstr "" "%s: nama berkas terlalu panjang untuk diurutkan dalam sebuah GNU multivolume " "header, dipotong" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "tulis tidak berhenti di batas blok" @@ -800,20 +807,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Hanya dapat membaca %lu dari %lu byte" msgstr[1] "Hanya dapat membaca %lu dari %lu byte" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Isi berbeda" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Unexpected EOF dalam archive" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Tipe berkas berbeda" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Mode berbeda" @@ -829,144 +836,144 @@ msgstr "Gid berbeda" msgid "Mod time differs" msgstr "Mod time berbeda" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Ukuran berbeda" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Tidak dilink ke %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symlink berbeda" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Nomor perangkat berbeda" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verifikasi " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Tipe berkas '%c' tidak dikenal, lakukan diff sebagai berkas normal" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Archive berisi nama berkas dengan awalan dihapus." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Verifikasi mungkin gagal untuk menemukan berkas orisinil." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "GAGAL VERIFIKASI: header %d tidak valid terdeteksi" msgstr[1] "GAGAL VERIFIKASI: header %d tidak valid terdeteksi" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Sebuah lone blok nol di %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: berisi sebuah cache direktori tag %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "nilai %s dari %s di luar jangkauan %s..%s; menggantikan %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "nilai %s dari %s di luar dari jangkauan %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Membuat header oktal negatif" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: nama berkas terlalu panjang (maksimal %d); tidak di-dump" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" "%s: nama berkas terlalu panjang (tidak dapat memisahkan); tidak di-dump" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: nama link terlalu panjang; tidak di-dump" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Berkas diperkecil %s byte; dipadding dengan nol" msgstr[1] "%s: Berkas diperkecil %s byte; dipadding dengan nol" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: file berada pada filesistem yang berbeda; tidak di-dump" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "isi tidak didump" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Tipe file tidak dikenal; file diabaikan" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." msgstr "Hilang hubungan ke %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: berkas tidak berubah; tidak di-dump" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: berkas adalah archive; tidak di-dump" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "direktori tidak didump" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: berkas berubah saat kita membacanya" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: soket diabaikan" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: door diabaikan" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Skip ke header berikutnya" @@ -974,75 +981,75 @@ msgstr "Skip ke header berikutnya" msgid "Deleting non-header from archive" msgstr "Menghapus non-header dari archive" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: implausibly penanda waktu lama %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: penanda %s adalah %s dalam masa datang" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Inkonsistensi tidak diharapkan ketika membuat direktori" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Direktori diganti nama sebelum statusnya dapat diperoleh" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Sedang extract contiguous file sebagai regular file" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Mencoba extract symbolic link sebagai hard link" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "" "%s: Tidak dapat mengekstrak -- berkas adalah kelanjutan dari volume lain" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Tidak terduga nama header panjang" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Tipe berkas tidak dikenal '%c', diekstraksi sebagai berkas normal" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Saat ini %s adalah lebih baru atau berumuran sama" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Tidak dapat melakukan backup berkas ini" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Tidak dapat mengubah nama %s ke %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Direktori telah diubah nama dari %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Direktori telah diganti nama" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Direktori adalah baru" @@ -1152,178 +1159,178 @@ msgstr "%s: Menghapus %s\n" msgid "%s: Cannot remove" msgstr "%s: Tidak dapat menghapus" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Mengabaikan" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blok %s: ** Blok dari KOSONG **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blok %s: ** Akhir dari Berkas **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Kosong dalam header saat diharapkan nilai %s numerik" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "Nilai oktal arsip %.*s di luar batasan %s; asumsikan komplemen dua" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Nilai oktal arsip %.*s di luar batasan %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Arsip berisikan header base-64 yang kadaluarsas" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Arsip yang ditandatangahi dengan string base-64 %s di luar batasan %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Nilai arsip base-256 di luar batasan %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Arsip berisikan %.*s ketika nilai numerik %s diharapkan" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Nilai arsip %s dari %s di luar batasan %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " link ke %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " tipe file tidak dikenal %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Link Panjang--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Nama Panjang--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Volume Header--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Diteruskan pada byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Membuat direktori:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Tidak bisa pindah direktori kerja" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Mengganti nama %s ke %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s:Tidak dapat mengganti nama ke %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Mengganti nama %s kembali ke %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Tidak dapat menyimpan direktori kerja" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Tidak bisa pindah direktori kerja" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Berkas dihapus sebelum kita membacanya" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Direktori dihapus sebelum kita membacanya" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "proses anak" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "saluran interproses" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "Pola pencocokan karakter digunakan dalam nama berkas. Mohon," +msgstr "Pola pencocokan karakter digunakan dalam nama berkas." -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -"gunakan --wildcards untuk mengaktifkan pencocokan pola, atau --no-wildcards " -"untuk" +"Gunakan --wildcards untuk mengaktifkan pencocokan pola, atau --no-wildcards " +"untuk menekan peringatan ini" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Tidak ditemukan dalam archive" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Kejadian yang diinginkan tidak ditemukan dalam archive" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Label archive tidak cocok" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" "Menggunakan pilihan -C didalam daftar berkas tidak diijinkan dengan --listed-" "incremental" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "Hanya satu pilihan -C yang diijinkan dengan --listed-incremental" @@ -1349,7 +1356,7 @@ msgstr "" "Gaya quoting `%s' tidak diketahui. Coba `%s --quoting-style=help' untuk " "memperoleh daftar." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1369,7 +1376,7 @@ msgstr "" "secara rinci.\n" " tar -xf archive.tar # Bongkar semua berkas dari archive.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1388,82 +1395,82 @@ msgstr "" " t, numbered membuat backups bernomor\n" " nil, existing beri nomor bila nomor backup telah ada, sederhana " "sebaliknya\n" -" never, simple selalu buat sederhana backups\n" +" never, simple selalu buat cadangan sederhana\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Mode operasi utama:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "daftar isi dari sebuah archive" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "ekstrak berkas dari sebuah archive" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "buat sebuah archive baru" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "cari perbedaan diantara archive dan sistem berkas" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "tambahkan berkas ke akhir dari sebuah archive" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "hanya tambahkan berkas yang lebih bari dari salinan dalam archive" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "tambahkan berkas tar ke sebuah archive" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "hapus dari archive (bukan dalam pita mag!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "test label volume archive dan keluar" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Pemodifikasi operasi:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "tangani berkas sparse secara efisien" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAJOR[.MINOR]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" "set versi dari format sparse untuk digunakan (mengimplikasikan --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "tangani format GNU lama incremental backup" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "tangani format GNU barus incremental backup" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "tingkat `dump' untuk pembuatan `listed-incremental archive'" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "jangan keluar dengan bukan nol dalam berkas tidak dapat dibaca" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1475,122 +1482,122 @@ msgstr "" "diff, --extract atau --list dan ketika sebuah daftar dari berkas diberikan " "baik dalam baris perintah atau melalui pilihan -T; JUMLAH baku ke 1" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "pencarian tidak dapat dilakukan dalam archive" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "pencarian tidak dapat dilakukan dalam archive" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" "tidak dapat memeriksa nomor perangkat ketika membuat archive incremental" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "periksa nomor perangkat ketika membuat incremental archive (baku)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Overwrite kontrol:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "mencoba untuk memverifikasi archive setelah menulisnya" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "hapus berkas setelah menambahkannya ke archive" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "jangan timpa berkas yang sudah ada ketika mengekstrak" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "jangan timpa berkas yang sudah ada yang lebih baru dari salinan archivenya" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "overwrite berkas yang sudah ada ketika mengekstrak" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "hapus setiap berkas sebelum mengekstrak diatasnya" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "kosongkan susunan sebelum mengekstrak ke direktori" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "jaga metadata dari direktori yang sudah ada" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "overwrite metadata dari direktori yang sudah ada ketika mengekstrak (baku)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Pilih stream keluaran:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "ekstrak berkas ke standar keluaran" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "PERINTAH" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "pipe berkas terekstrak ke aplikasi lain" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "abaikan kode keluaran dari anak" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "perlakukan kode keluaran bukan nol dari anak sebagai error" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Penanganan dari atribut berkas:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "paksa NAMA sebagai pemilik untuk berkas yang ditambahkan" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "paksa NAMA sebagai grup untuk berkas yang ditambahkan" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATE-ATAU-BERKAS" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "set mtime untuk berkas yang ditambahkan dari DATE-OR-FILE" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "PERUBAHAN" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "paksa PERUBAHAN (simbolik) mode untuk berkas yang ditambahkan" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METODE" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1600,11 +1607,11 @@ msgstr "" "setelah membaca (METODE='replace'; baku) atau dengan tidak menset waktu di " "tempat pertama (METODE='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "jangan ekstrak waktu modifikasi berkas" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" @@ -1612,19 +1619,19 @@ msgstr "" "mencoba mengekstrak berkas dengan kepemilikan yang sama yang ada dalam " "archive (baku untuk pengguna super)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "ekstrak berkas seperti dirimu (baku untuk pengguna biasa)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "selalu gunakan nomor untuk nama pengguna/grup" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "ekstrak informasi mengenai ijin berkas (baku untuk superuser)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1632,15 +1639,15 @@ msgstr "" "aplikasikan umask pengguna ketika mengekstrak ijin dari archive (baku untuk " "pengguna biasa)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "urutkan nama untuk mengekstrak supaya cocok dengan archive" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "sama seperti baik -p dan -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1648,139 +1655,139 @@ msgstr "" "tunda konfigurasi waktu modifikasi dan ijin untuk direktori terekstrak " "sampai akhir dari ekstrasi" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "batalkan efek dari pilihan --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Pemilihan dan pengubahan perangkat:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIVE" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "gunakan berkas archive atau perangkat ARCHIVE" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "berkas archive adalah lokal walaupun ini memiliki sebuah kolon" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "gunakan PERINTAH rmt yang diberikan daripad rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "gunakan PERINTAH remote daripada rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "spesifikasikan drive dan kepadatan" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "buat/daftar/ekstrak multi-volume archive" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "ubah pita setelah menulis ANGKA x 1024 bytes" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "jalankan script di akhir dari setiap pite (mengimplikasikan -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "gunakan/update jumlah volume dalam BERKAS" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Bloking perangkat:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOK" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOK x 512 byte per detik" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "JUMLAH dari byte per rekaman, kelipatan dari 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "abaikan blok yang dinolkan dalam archive (berarti EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "reblok saat kita baca (untuk 4.2BSD pipes)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Pemilihan format archive:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMAT" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "buat archive dari format yang diberikan" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMAT adalah satu dari berikut:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "format tar lama V7" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "format gnu tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "format GNU tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "format POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "format POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "sama seperti pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "sama seperti --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "sama seperti --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "kata kunci[[:]=nilai][,kata kunci[[:]=nilai]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "kontrol kata kunci pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEKS" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1788,77 +1795,77 @@ msgstr "" "buat archive dengan nama volume TEKS; di waktu daftar/ekstrak, gunakan TEKS " "sebagai sebuah pola globbing untuk nama volume" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Pilihan kompresi:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "gunaka nama akhiran archive untuk menentukan aplikasi kompresi" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "jangan gunakan nama akhiran archive untuk menentukan aplikasi kompresi" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "saring melalui PROG (harus menerima -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Pemilihan berkas lokal:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "tambahkan berkas yang diberikan ke archive (berguna jika namanya berawal " "dengan sebuah dash)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "DIR" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "pindah ke direktori DIR" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "dapatkan nama untuk ekstrak atau buat dari BERKAS" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T baca nama berakhiran kosong, non-aktifkan -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "non-aktifkan efek dari pilihan --null sebelumnya" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "unquote nama berkas baca dengan -T (baku)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "jangan unquote nama berkas baca dengan -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "POLA" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "jangan masukan berkas, berikan sebagai sebuah POLA" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "jangan masukan pola yang terdaftar dalam BERKAS" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1866,93 +1873,93 @@ msgstr "" "jangan masukan isi dari direktori berisi CACHEDIR.TAG, kecuali untuk berkas " "tag itu sendiri" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "jangan masukan apapun dibawah direktori berisi CACHEDIR.TAG" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "jangan masukan direktori berisi CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" "jangan masukan isi dari direktori berisi BERKAS, kecuali untuk BERKAS itu " "sendiri" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "jangan masukan apapun dibawah direktori berisi BERKAS" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "jangan masukan direktori berisi BERKAS" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "jangan masukan direktori sistem pengontrol direktori" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "abaikan berkas cadangan dan berkas kunci" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "hindari penurunan secara otomatis dalam direktori" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "tetap dalam sistem berkas lokal ketika membuat archive" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "rekursif kedalam direktori (baku)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "jangan hilangkan awalan `/' dari nama berkas" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "ikuti symlinks; berkas archive dan dump yang mereka tunjuk ke" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "ikuti hard links; berkas archive dan dump yang mereka refer ke" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "NAMA-ANGGOTA" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "berawal di anggota NAMA-ANGGOTA dalam archive" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "hanya simpan berkas lebih baru dari DATE-OR-FILE" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "TANGGAL" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "bandingkan tanggal dan waktu hanya ketika data berubah" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "KONTROL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "backup sebelum penghapusan, pilih PENGONTROL versi" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "STRING" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1960,97 +1967,97 @@ msgstr "" "backup sebelum penghapusan, override akhiran biasa ('~' kecuali di override " "oleh variabel lingkungan SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Transformasi nama berkas:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" "hilangkan NOMOR yang mengawali komponen dari nama berkas di waktu ekstraksi" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "EKSPRESI" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "gunakan sed EKSPRESI replace untuk mengubah nama berkas" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Pilihan nama berkas cocok (mempengaruhi baik pola exclude dan include):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "abaikan perbedaan huruf besar dan huruf kecil" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "pencocokan pola nama berkas mulai" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "pencocokan polah setelah `/' apapun (baku untuk exclusion)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "pencocokan dengan memperhatikan huruf besar dan huruf kecil (baku)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "gunakan wildcards (baku untuk exclusion)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "pencocok verbatim string" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "wildcards tidak cocok `/'" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "wildcards cocok `/' (baku untuk exclusion)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Keluaran informative:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "proses daftar berkas secara verbose" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "KATA KUNCI" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "pengendali peringatan" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "tampilkan pesan perkembangan setiap rekaman ke ANGKA (baku 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "AKSI" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "jalankan AKSI disetiap titik pemeriksaan" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "tampilkan sebuah pesan jika tidak seluruh link didump" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SINYAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2062,27 +2069,31 @@ msgstr "" "adalah: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 dan SIGUSR2; nama tanpa awalah SIG " "juga diterima" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "tampilkan waktu modifikasi berkas dalam UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "tampilkan waktu berkas sampai ke resolusi penuh" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "kirim keluaran verbose ke BERKAS" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "tampilkan jumlah blok didalam archive dengan setiap pesan" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "minta konfirmasi untuk setiap aksi" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "tampilkan tar baku" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2090,31 +2101,31 @@ msgstr "" "ketika mendaftar atau mengekstrak, daftar setiap direktori yang tidak cocok " "dengan kriteria pencarian" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "tampilkan berkas atau nama berkas setelah transformasi" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "GAYA" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "set nama quoting gaya; lihat dibawah untuk nilai GAYA yang valid" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "sebagai tambahan karakter quote dari STRING" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "non-aktifkan quoting untuk karakter dari STRING" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Pilihan yang kompatibel:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2122,64 +2133,64 @@ msgstr "" "ketika membuat, sama seperti --old-archive; ketika mengekstrak, sama seperti " "--no-same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Pilihan lain:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "non-aktifkan penggunaan dari pilihan berbahaya yang berpotensial" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "" "Anda tidak bisa menspesifikasikan lebih dari satu pilihan `-Acdtrux' atau `--" "test-label'" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Pilihan kompresi konflik" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Nama sinyal: %s tidak dikenal" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Tanggal contoh berkas tidak ditemukan" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Menggantikan %s untuk format tanggal tidak dikenal %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Pilihan %s: memperlakukan tanggal `%s' sebagai %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: daftar berkas telah dibaca" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: nama berkas yang dibaca berisi karakter nul" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "saring archive melalui %s" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "Argumen yang valid untuk pilihan --quoting-style adalah:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2187,51 +2198,51 @@ msgstr "" "\n" "*Ini* tar baku ke:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Faktor bloking tidak valid" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Panjang tape tidak valid" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "Nilai tingkat peningkatan tidak valid" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Lebih dari satu treshold date" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Nilai versi sparse tidak valid" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "pilihan --atime-preserve='system' tidak didukung di platform ini" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "nilai --checkpoint bukan sebuah integer" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "Grup tidak valid" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Mode tidak tepat diberikan pada pilihan" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Nomor tidak valid" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Pemilik tidak valid" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2239,117 +2250,117 @@ msgstr "" "Pilihan --preserve sudah ditinggalkan, lebih baik gunakan --preserve-" "permissions --preserve-order" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Ukuran record tidak valid" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Jumlah record harus kelipatan dari %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Jumlah dari elemen tidak valid" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Hanya satu pilihan --to-command yang diijinkan" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Salah bentuk kepadatan argumen: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Kepadatan tidak diketahui: `%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Pilihan `-[0-7][lmh]' tidak didukung oleh tar *ini*" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[BERKAS]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Pilihan 'lama' `%c' membutuhkan argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence tidak berarti tanpa sebuah daftar berkas" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence tidak dapat digunakan dalam mode operasi yang diminta" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Berkas multiple archive membutuhkan pilihan '-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Tidak dapat menggabungkan --listed-incremental dengan --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "--level tidak berarti tanpa --listed-incremental" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Label volume terlalu panjang (batasnya adalah %lu byte)" msgstr[1] "%s: Label volume terlalu panjang (batasnya adalah %lu byte)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Tidak dapat verifikasi multi-volume archives" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Tidak dapat verify compressed archives" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Tidak dapat menggunakan multi-volume compressed archives" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Tidak dapat update compressed archives" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option hanya dapat digunakan dalam archive POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Panjang volume tidak dapat lebih kecil dari ukuran rekaman" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order tidak kompatibel dengan --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Secara takut menolak untuk membuat sebuah archive kosong" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Pilihan '-Aru' tidak kompatibel dengan `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "" "Anda harus menspesifikasikan salah satu dari pilihan `-Acdtrux' atau `--test-" "label'" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Keluar dengan status gagal karena error error sebelumnya" @@ -2361,56 +2372,56 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Berkas mengecil sebanyak %s byte" msgstr[1] "%s: Berkas mengecil sebanyak %s byte" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Kata kunci %s tidak diketahui atau belum diimplementasikan" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "Penanda waktu di luar dari jangkauan yang diijinkan" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Pola %s tidak dapat digunakan" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Kata kunci %s tidak dapat dioverride" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Salah bentuk ekstensi header: hilang panjang" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Ekstensi panjang header diluar dari jangkauan yang diijinkan" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Ekstensi panjang header %*s diluar dari jangkauan" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Salah bentuk ekstensi header: hilang blank setelah panjang" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Salah bentuk ekstensi header: hilang tanda sama dengan" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Salah bentuk ekstensi header: hilang baris baru" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Mengabaikan kata kunci ekstensi `%s' yang tidak diketahui" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" @@ -2419,27 +2430,27 @@ msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Ekstensi header %s=%s diluar dari jangkauan %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Salah bentuk ekstensi header: tidak valid %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Salah bentuk ekstensi header: kelebihan %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "Salah bentuk ekstensi header: tidak valid %s: tidak diduga pembatas %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Salah bentuk ekstensi header: tidak valid %s: jumlah dari nilai ganjil" @@ -2480,7 +2491,7 @@ msgstr "Menulis titik pemeriksaan %u" msgid "Read checkpoint %u" msgstr "Membaca titik pemeriksaan %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2488,69 +2499,69 @@ msgstr "" "genfile memanipulasi berkas data untuk suite pemeriksaan GNU paxutils.\n" "PILIHAN adalah:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Pilihan pembuatan berkas:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "UKURAN" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Buat berkas dari UKURAN yang diberikan" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Tulis ke berkas NAMA, daripada ke standar keluaran" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Baca nama berkas dari BERKAS" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T baca nama berakhiran null" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "Isi berkas dengan POLA yang diberikan. POLA adalah 'baku' atau 'nol'" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Ukuran dari sebuah blok untuk berkas sparse" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "Buat berkas sparse. Sisa dari baris perintah memberikan peta berkas." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "OFSET" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Cari ke ofset yang diberikan sebelum menulis data" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Pilihan statistik berkas:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Tampilkan isi dari statistik struk untuk setiap berkas yang diberikan. " "FORMAT baku adalah: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "pilihan eksekusi synchronous:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "PILIHAN" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" @@ -2558,22 +2569,22 @@ msgstr "" "Jalankan ARG. Berguna dengan --checkpoint dan satu dari --cut, --append, --" "touch, --unlink" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "Lakukan aksi yang diberikan (lihat dibawah) ketika mencapai titik " "pemeriksaan NOMOR" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Set tanggal untuk pilihan --touch selanjutnya" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" "Tampilkan titik pemeriksaan yang dijalankan dan status keluar dari PERINTAH" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2581,7 +2592,7 @@ msgstr "" "Aksi eksekusi synchronous. Ini dijalankan ketika titik pemeriksaan nomor " "yang diberikan oleh pilihan --checkpoint dicapai." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2589,145 +2600,148 @@ msgstr "" "Potong BERKAS ke ukuran yang dispesifikasikan oleh pilihan --length " "sebelumnya (atau 0, jika ini tidak diberikan)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "Tambahkan UKURAN bytes ke BERKAS. UKURAN yang diberikan oleh pilihan --" "length sebelumnya." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Update waktu akses dan modifikasi dari BERKAS" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Jalankan PERINTAH" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "Putus BERKAS" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Ukuran: %s tidak valid" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Jumlah diluar dari jangkauan yang diijinkan: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Ukuran negatif: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) gagal" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "panjang berkas yang diminta %lu, sebenernya %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "pembuatan berkas tidak sparse" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Error parsing nomor didekat `%s'" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Format tanggal tidak diketahui" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARG...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "tidak dapat membuka `%s'" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "Tidak dapat mencari" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "nama berkas berisi karakter null" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "tidak dapat menghasilkan berkas sparse di standar keluaran, gunakan pilihan " "--file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "mask tidak benar (didekat `%s')" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Field `%s' tidak diketahui" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "tidak dapat menset waktu di `%s'" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "tidak dapat memutus `%s'" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Perintah keluar secara sukses\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Perintah gagal dengan status %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Perintah berakhir di sinyal %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Perintah berhenti di sinyal %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Perintah memberika core dump\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Perintah berakhir\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat membutuhkan nama berkas" +#~ msgid "Cannot save working directory" +#~ msgstr "Tidak dapat menyimpan direktori kerja" + #~ msgid "Cannot resolve hostname %s" #~ msgstr "Tidak dapat menemukan alamat dari nama host %s" diff --git a/po/it.gmo b/po/it.gmo index e5c718e8033753b33c3522af5d99b3dbe44160f8..598a7b91dcf31cb30c8aa86d602e3952203afdf5 100644 GIT binary patch delta 16391 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 Lk2QJowS@l%1Z0~@ delta 11361 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 Qe$K{k-t%*^Z=du07yU??XaE2J diff --git a/po/it.po b/po/it.po index 974ca72..9cccaf8 100644 --- a/po/it.po +++ b/po/it.po @@ -1,22 +1,24 @@ # Italian translation of GNU tar. -# Copyright (C) 2008, 2009 Free Software Foundation, Inc. +# Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc. # This file is distributed under the same license as the tar package. # # Lele Gaifax , 1996. # Marco d'Itri , 1998. -# Milo Casagrande , 2008-2009 # +# Milo Casagrande , 2008-2009, 2010. +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22\n" +"Project-Id-Version: tar-1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2009-04-05 21:45+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-12 10:25+0200\n" "Last-Translator: Milo Casagrande \n" "Language-Team: Italian \n" +"Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8-bit\n" +"Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: gnu/argmatch.c:135 @@ -89,7 +91,7 @@ msgstr "Usare \"%s --help\" o \"%s --usage\" per ulteriori informazioni.\n" msgid "Report bugs to %s.\n" msgstr "Segnalare i bug a %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Errore di sistema sconosciuto" @@ -101,8 +103,8 @@ msgstr "Mostra questo aiuto" msgid "give a short usage message" msgstr "Mostra un breve messaggio sull'uso" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NOME" @@ -140,56 +142,61 @@ msgstr "(ERRORE DEL PROGRAMMA) L'opzione dovrebbe essere stata riconosciuta." msgid "write error" msgstr "Errore di scrittura" -#: gnu/getopt.c:531 gnu/getopt.c:547 -#, fuzzy, c-format +#: gnu/getopt.c:529 gnu/getopt.c:545 +#, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: l'opzione \"%s\" è ambigua\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 -#, fuzzy, c-format +#: gnu/getopt.c:578 gnu/getopt.c:582 +#, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: l'opzione \"--%s\" non accetta un argomento\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 -#, fuzzy, c-format +#: gnu/getopt.c:591 gnu/getopt.c:596 +#, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: l'opzione \"%c%s\" non accetta un argomento\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 -#, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: l'opzione \"%s\" richiede un argomento\n" +#: gnu/getopt.c:639 gnu/getopt.c:658 +#, c-format +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: l'opzione \"--%s\" richiede un argomento\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 -#, fuzzy, c-format +#: gnu/getopt.c:696 gnu/getopt.c:699 +#, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: opzione \"--%s\" non riconosciuta\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 -#, fuzzy, c-format +#: gnu/getopt.c:707 gnu/getopt.c:710 +#, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: opzione \"%c%s\" non riconosciuta\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 -#, fuzzy, c-format +#: gnu/getopt.c:759 gnu/getopt.c:762 +#, c-format msgid "%s: invalid option -- '%c'\n" -msgstr "%s: opzione non valida -- %c\n" +msgstr "%s: opzione non valida -- \"%c\"\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 -#, fuzzy, c-format +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 +#, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: l'opzione richiede un argomento -- %c\n" +msgstr "%s: l'opzione richiede un argomento -- \"%c\"\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 -#, fuzzy, c-format +#: gnu/getopt.c:885 gnu/getopt.c:901 +#, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: l'opzione \"-W %s\" è ambigua\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 -#, fuzzy, c-format +#: gnu/getopt.c:925 gnu/getopt.c:943 +#, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: l'opzione \"-W %s\" non accetta un argomento\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: l'opzione \"-W %s\" richiede un argomento\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "memoria esaurita" @@ -254,12 +261,12 @@ msgstr "^[nN].*" #: gnu/version-etc.c:76 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "" +msgstr "Pacchetto creato da %s (%s)\n" #: gnu/version-etc.c:79 #, c-format msgid "Packaged by %s\n" -msgstr "" +msgstr "Pacchetto creato da %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's @@ -398,33 +405,33 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: gnu/version-etc.c:247 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Report bugs to: %s\n" -msgstr "Segnalare i bug a %s.\n" +msgstr "" +"\n" +"Segnalare i bug a: %s\n" +"Segnalare i bug di traduzione a: \n" #: gnu/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report %s bugs to: %s\n" -msgstr "" -"\n" -"Segnalare i bug a <%s>.\n" +msgstr "Segnalare i bug di %s a: %s\n" #: gnu/version-etc.c:253 #, c-format msgid "%s home page: <%s>\n" -msgstr "" +msgstr "Sito web di %s: <%s>\n" #: gnu/version-etc.c:255 -#, fuzzy, c-format +#, c-format msgid "%s home page: \n" -msgstr "Sito web di %s: .\n" +msgstr "Sito web di %s: \n" #: gnu/version-etc.c:258 -#, fuzzy msgid "General help using GNU software: \n" -msgstr "Aiuto per l'utilizzo di software GNU: .\n" +msgstr "Aiuto per l'utilizzo di software GNU: \n" # (ndt) metto tra virgolette visto che è # il nome di una funzione non traducibile @@ -533,198 +540,192 @@ msgstr "stdout" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Impossibile connettersi a %s: \"resolve\" non riuscita" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Impossibile eseguire la shell remota" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Direzione di seek fuori dell'intervallo" -#: rmt/rmt.c:419 -#, fuzzy +#: rmt/rmt.c:438 msgid "Invalid seek direction" -msgstr "Modo fornito sull'opzione non valido" +msgstr "Direzione di seek non valida" -#: rmt/rmt.c:427 -#, fuzzy +#: rmt/rmt.c:446 msgid "Invalid seek offset" -msgstr "Dimensione non valida: %s" +msgstr "Offset di seek non valido" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Offset di seek fuori dell'intervallo" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 -#, fuzzy +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" -msgstr "Lunghezza del nastro non valida" +msgstr "Conteggio byte non valido" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 -#, fuzzy +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" -msgstr "Offset di seek fuori dell'intervallo" +msgstr "Conteggio byte fuori dell'intervallo" -#: rmt/rmt.c:539 -#, fuzzy +#: rmt/rmt.c:558 msgid "Premature eof" -msgstr "rmtd: EOF prematuro\n" +msgstr "EOF prematuro" -#: rmt/rmt.c:582 -#, fuzzy +#: rmt/rmt.c:601 msgid "Invalid operation code" -msgstr "Modi operativi principali:" +msgstr "Codice d'operazione non valido" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" -msgstr "" +msgstr "Operazione non supportata" -#: rmt/rmt.c:645 -#, fuzzy +#: rmt/rmt.c:664 msgid "Unexpected arguments" -msgstr "EOF inatteso nell'archivio" +msgstr "Argomenti non attesi" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" +"Manipola un dispositivo a nastro, accettando comandi da un processo remoto" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "NUMERO" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" -msgstr "" +msgstr "Imposta il livello di debug" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FILE" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" -msgstr "" +msgstr "Imposta il nome del file di output per il debug" -#: rmt/rmt.c:696 rmt/rmt.c:764 -#, fuzzy, c-format +#: rmt/rmt.c:715 rmt/rmt.c:783 +#, c-format msgid "cannot open %s" -msgstr "impossibile aprire \"%s\"" +msgstr "impossibile aprire %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "troppi argomenti" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Comando spazzatura" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Questo non sembra un archivio tar" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Byte totali scritti" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Byte totali letti" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Byte totali eliminati: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(pipe)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Valore di record_size non valido" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Non è stato indicato il nome di un archivio" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Impossibile verificare archivi su stdin/stdout" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "L'archivio è compresso. Usare l'opzione %s." -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Impossibile aggiornare archivi compressi" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "All'inizio del nastro, uscita immediata" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Troppi errori, uscita" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Dimensioni del record = %lu blocco" msgstr[1] "Dimensioni del record = %lu blocchi" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Blocco non allineato nell'archivio (%lu byte)" msgstr[1] "Blocco non allineato nell'archivio (%lu byte)" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Impossibile muoversi all'indietro nel file dell'archivio; potrebbe non " "essere\n" "leggibile senza l'opzione -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek non si è fermata al limite di un record" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: contiene un numero di volume non valido" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Overflow del numero di volume" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Preparare il volume #%d per %s e premere Invio: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Ricevuto EOF quando era attesa la risposta dell'utente" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "Attenzione: l'archivio non è completo" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -736,67 +737,67 @@ msgstr "" " q Termina tar\n" " y o Invio Continua l'operazione\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Esegue una subshell\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Stampa questo elenco\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Nessun nuovo volume; uscita.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Nome file non specificato. Riprovare.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Input non valido. Premere ? per l'aiuto.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "comando \"%s\" non riuscito" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s potrebbe continuare su questo volume: l'intestazione contiene un nome " "troncato" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s non continua su questo volume" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s è la dimensione sbagliata (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Questo volume è fuori sequenza (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "L'archivio non ha un'etichetta corrispondente a %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Il volume %s non corrisponde a %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -804,7 +805,7 @@ msgstr "" "%s: il nome del file è troppo lungo per essere scritto in un'intestazione " "GNU multi-volume, troncato" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "write non si è fermata al limite di un record" @@ -815,20 +816,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "È stato possibile leggere solo %lu byte di %lu" msgstr[1] "È stato possibile leggere solo %lu byte di %lu" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "I contenuti sono differenti" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "EOF inatteso nell'archivio" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "I tipi dei file sono diversi" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "I modi sono diversi" @@ -844,144 +845,144 @@ msgstr "I GID sono diversi" msgid "Mod time differs" msgstr "Gli orari di modifica sono diversi" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Le dimensioni sono diverse" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Non è collegato a %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "I collegamenti simbolici sono diversi" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "I numeri dei device sono diversi" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verifica " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: tipo di file \"%c\" sconosciuto, confrontato come un file normale" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "L'archivio contiene nomi di file con i prefissi iniziali rimossi." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "La verifica potrebbe non riuscire a trovare i file originali." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "Errore di verifica: trovata %d intestazione non valida" msgstr[1] "Errore di verifica: trovate %d intestazioni non valide" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Un singolo blocco di zeri a %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: contiene un'etichetta di directory cache %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "valore %s fuori dall'intervallo (%s) %s..%s; sostituzione con %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "valore %s fuori dall'intervallo (%s) %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Generazione delle intestazioni ottali negative" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: il nome del file è troppo lungo (max %d); non archiviato" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" "%s: il nome del file è troppo lungo (impossibile dividerlo); non archiviato" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: il nome del collegamento è troppo lungo; non archiviato" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: file ristretto di %s byte; riempito con zeri" msgstr[1] "%s: file ristretto di %s byte; riempito con zeri" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: il file si trova su un altro file system; non archiviato" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "contenuti non archiviati" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: tipo di file sconosciuto; file ignorato" -#: src/create.c:1472 -#, fuzzy, c-format +#: src/create.c:1527 +#, c-format msgid "Missing links to %s." -msgstr "Collegamenti mancanti a %s.\n" +msgstr "Collegamenti mancanti a %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: il file non è modificato; non archiviato" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: il file è l'archivio; non archiviato" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "directory non archiviata" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: file modificato mentre era in lettura" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: socket ignorato" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: door ignorata" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Passaggio alla prossima intestazione" @@ -989,46 +990,46 @@ msgstr "Passaggio alla prossima intestazione" msgid "Deleting non-header from archive" msgstr "Eliminazione non-intestazione dall'archivio" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: orario %s inverosimilmente vecchio" # (ndt) problema del plurale... -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: l'orario %s è %s secondi nel futuro" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: incoerenza inaspettata nel creare la directory" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: directory rinominata prima di poterne estrarre lo stato" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Estrazione file contigui come file normali" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "" "Tentativo di estrazione dei collegamenti simbolici come collegamenti fisici" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: impossibile estrarre -- il file continua da un altro volume" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Intestazione di nome lungo inattesa" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: tipo di file \"%c\" sconosciuto, estratto come file normale" @@ -1040,35 +1041,35 @@ msgstr "%s: tipo di file \"%c\" sconosciuto, estratto come file normale" # quote (file_name))); # return 0; # } -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Il file %s corrente è più recente o ha la stessa data" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: impossibile eseguire il backup di questo file" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Impossibile rinominare %s in %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: directory rinominata da %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: directory rinominata" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" -msgstr "%s: la directory è nuova" +msgstr "%s: directory nuova" #: src/incremen.c:956 src/incremen.c:973 msgid "Invalid time stamp" @@ -1176,35 +1177,35 @@ msgstr "%s: eliminazione di %s\n" msgid "%s: Cannot remove" msgstr "%s: impossibile rimuoverlo" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: omesso" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blocco %s: ** Blocco di NUL **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blocco %s: ** Fine del file **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blocco %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Trovati spazi nell'intestazione dove era atteso il valore numerico %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1212,146 +1213,147 @@ msgstr "" "che sia in complemento a due" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Il valore ottale %.*s dell'archivio è fuori dall'intervallo %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "L'archivio contiene intestazioni base-64 obsolete" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" "La stringa base-64 con segno %s dell'archivio è fuori dall'intervallo %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Il valore base-256 dell'archivio è fuori dall'intervallo %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "L'archivio contiene %.*s dove era atteso il valore numerico %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Il valore %s dell'archivio è fuori dall'intervallo (%s) %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " collegamento a %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " tipo di file sconosciuto %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Collegamento lungo--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Nome lungo--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Intestazione del volume--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Continua al byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Creazione directory:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Impossibile cambiare la directory di lavoro" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Rinomina di %s in %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: impossibile rinominarlo in %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Rinomina di %s nuovamente in %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Impossibile salvare la directory di lavoro" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Impossibile cambiare la directory di lavoro" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: file rimosso prima di poterlo leggere" -#: src/misc.c:774 -#, fuzzy, c-format +#: src/misc.c:866 +#, c-format msgid "%s: Directory removed before we read it" -msgstr "%s: file rimosso prima di poterlo leggere" +msgstr "%s: directory rimossa prima di poterla leggere" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "il processo figlio" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "il canale tra processi" -# (ndt) pattern matching... trovare di meglio... -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "Usati caratteri di corrispondenza nei nomi dei file. Usare " +msgstr "Usati caratteri di corrispondenza nei nomi dei file." -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" -msgstr "--wildcards per abilitare la corrispondenza o --no-wildcards " +msgstr "" +"Usare --wildcards per abilitare la corrispondenza o --no-wildcards per " +"disabilitare l'avviso" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: non trovato nell'archivio" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: occorrenza richiesta non trovata nell'archivio" -#: src/names.c:894 -#, fuzzy +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Etichetta dell'archivio non corrispondente" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" -msgstr "--preserve-order non è compatibile con --listed-incremental" +msgstr "" +"L'utilizzo dell'opzione -C all'interno dell'elenco dei file non è consentita " +"con --listed-incremental" -#: src/names.c:900 -#, fuzzy +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" -msgstr "--preserve-order non è compatibile con --listed-incremental" +msgstr "Solo un'opzione -C è consentita con --listed-incremental" #: src/tar.c:81 #, c-format @@ -1375,7 +1377,7 @@ msgstr "" "Stile di citazione \"%s\" non conosciuto. Provare \"%s --quoting-style=help" "\" per visualizzarne un elenco." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1390,12 +1392,12 @@ msgstr "" "dall'archivio.\n" "\n" "Esempi:\n" -" tar -cf archivio.tar foo bar # Crea archivio.tar dai file foo e bar.\n" +" tar -cf archivio.tar foo bar # Crea archivio.tar dai file foo e bar\n" " tar -tvf archivio.tar # Elenca prolissamente i file in archivio." -"tar.\n" -" tar -xf archivio.tar # Estrae tutti i file da archivio.tar.\n" +"tar\n" +" tar -xf archivio.tar # Estrae tutti i file da archivio.tar\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1418,80 +1420,81 @@ msgstr "" " nil, existing Numerati se esistono backup numerati, altrimenti semplici\n" " never, simple Esegue sempre backup semplici\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Modi operativi principali:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "Elenca i contenuti dell'archivio" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "Estrae file da un archivio" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "Crea un nuovo archivio" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "Trova differenze tra l'archivio e il file system" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "Accoda i file alla fine di un archivio" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "Accoda solo i file più recenti della copia nell'archivio" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "Aggiunge il contenuto di un altro archivio" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "Elimina dall'archivio (non su nastri magnetici)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "Verifica l'etichetta di volume dell'archivio ed esce" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Modificatori delle operazioni:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "Gestisce efficientemente i file sparsi" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAJOR[.MINOR]" # (ndt) hmmm... formato sparso... -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "Imposta la versione da usare per il formato sparso (implica --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "gestisce i vecchi backup incrementali GNU" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "Gestisce il nuovo formato di backup incrementali GNU" -#: src/tar.c:424 +# (ndt) suggerimenti? +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" -msgstr "" +msgstr "Livello di dump per l'archivio a lista incrementale creato" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "Non esce con non-zero quando ci sono file non leggibili" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1504,123 +1507,122 @@ msgstr "" "sulla riga di comando o attraverso l'opzione -T; il valore predefinito di " "NUMERO è 1" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "L'archivio è posizionabile" -#: src/tar.c:436 -#, fuzzy +#: src/tar.c:437 msgid "archive is not seekable" -msgstr "L'archivio è posizionabile" +msgstr "L'archivio non è posizionabile" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "Non controlla i numeri del device quando crea archivi incrementali" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "Controlla i numeri del device quando crea archivi incrementali (predefinito)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Controlli di sovrascrittura:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "Tenta di verificare l'archivio dopo averlo scritto" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "Rimuove i file dopo averli aggiunti all'archivio" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "Durante l'estrazione non sovrascrive i file esistenti" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "Non sostituisce i file esistenti più recenti delle copie nell'archivio" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "Sovrascrive i file esistenti durante l'estrazione" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "Rimuove ogni file prima di estrarre su di esso" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "Svuota le directory prima di estrarle" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "Preserva i metadati delle directory esistenti" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "Sovrascrive i metadati delle directory esistenti durante l'estrazione " "(predefinito)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Selezione stream di output:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "Estrae i file sullo standard output" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "COMANDO" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "Invia in pipe i file estratti a un altro programma" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "Ignora il codice di uscita dei figli" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "Considera i codici di uscita non-zero come un errore" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Gestione degli attributi dei file:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "Forza NOME come proprietario per i file aggiunti" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "Forza NOME come gruppo per i file aggiunti" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATA-O-FILE" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "Imposta mtime per i file aggiunti da DATA-O-FILE" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "CAMBI" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "Forza il modo CAMBI (simbolico) per i file aggiunti" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METODO" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1630,33 +1632,34 @@ msgstr "" "dopo la lettura (METODO=\"replace\"; predefinito) o impostando l'orario " "all'inizio (METODO=\"system\")" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "Non estrae l'orario di ultima modifica del file" -#: src/tar.c:504 -#, fuzzy +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" -msgstr "Cerca di estrarre i file con lo stesso proprietario" +msgstr "" +"Cerca di estrarre i file con lo stesso proprietario come presente " +"nell'archivio (predefinito per il super utente)" -#: src/tar.c:506 -#, fuzzy +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" -msgstr "Estrae i file come l'utente attuale" +msgstr "" +"Estrae i file come l'utente attuale (predefinito per gli utenti normali)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "Usa sempre i numeri per i nomi di utente/gruppo" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "Estrae informazioni riguardo i permessi dei file (predefinito per il super-" "utente)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1664,15 +1667,15 @@ msgstr "" "Applica la umask dell'utente nell'estrarre i permessi dall'archivio " "(predefinito per gli utenti normali)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "Ordina i nomi da estrarre come nell'archivio" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "Come -p e -s assieme" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1680,139 +1683,139 @@ msgstr "" "Ritarda l'impostazione dei tempi di modifica e dei permessi delle directory " "estratte al termine dell'estrazione" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "Annulla l'effetto dell'opzione --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Selezione e cambio del device:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIVIO" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "Usa come archivio il file o il dispositivo ARCHIVIO" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "L'archivio è locale anche se contiene \":\"" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "Usa il COMANDO rmt indicato invece di rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "Usa il COMANDO remoto invece di rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "Indica drive e densità" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "Crea, elenca, estrae archivi multi-volume" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "Cambia il nastro dopo avere scritto NUMERO × 1024 byte" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "Esegue lo script alla fine di ogni nastro (implica -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "Usa/aggiorna il numero del volume nel FILE" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Blocchi del device:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOCCHI" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "Usa record di BLOCCHI × 512 byte" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "NUMERO di byte per record, multiplo di 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "Ignora i blocchi a zero nell'archivio (significa EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "Rifà i blocchi durante la lettura (per le pipe di 4.2BSD)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Selezione formato di archiviazione:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMATO" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "Crea archivi nel formato indicato" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMATO è uno dei seguenti:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "Vecchio formato di tar V7" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "Formato GNU di tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "Formato GNU di tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "Formato POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "Formato POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "Come pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "Come --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "Come --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "PAROLA_CHIAVE[[:]=VALORE][,PAROLA_CHIAVE[[:]=VALORE], ...]" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "Controlla le parole chiavi di pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TESTO" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1820,79 +1823,79 @@ msgstr "" "Crea l'archivio con TESTO come nome di volume; durante l'elencazione o " "l'estrazione, usa TESTO come modello di glob per ogni volume" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Opzioni di compressione:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" "Usa il suffisso dell'archivio per determinare il programma di compressione" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" "Non usa il suffisso dell'archivio per determinare il programma di " "compressione" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "Filtra attraverso PROG (deve accettare -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Selezione dei file locali:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "Aggiunge FILE all'archivio (utile se il nome inizia con un trattino)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "DIR" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "Passa alla directory DIR" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "Prende i nomi da estrarre o creare dal file FILE" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T legge nomi terminati da NULL, disabilita -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "Disabilita l'effetto dell'opzione --null precedente" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" "Toglie i caratteri di citazione dai nomi dei file letti con -T (predefinito)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "Non toglie i caratteri di citazione dai nomi dei file letti con -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "MODELLO" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "Esclude i file i cui nomi corrispondono a MODELLO" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "Esclude i modelli elencati in FILE" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1900,97 +1903,97 @@ msgstr "" "Esclude i contenuti delle directory contenenti CACHEDIR.TAG, a parte il " "file .TAG stesso" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "Esclude tutto quanto all'interno di directory contenenti CACHEDIR.TAG" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "Esclude le directory contenenti CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" "Esclude i contenuti delle directory contenenti FILE, a parte FILE stesso " -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "Esclude tutto quanto all'interno di directory contenenti FILE" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "Esclude le directory contenenti FILE" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "Esclude le directory dei sistemi di controllo della versione" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" -msgstr "" +msgstr "Esclude i file di backup e di blocco" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "Non entra automaticamente nelle directory" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "Resta nel file system locale durante la creazione dell'archivio" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "Entra ricorsivamente nelle directory (predefinito)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "Non rimuove le \"/\" iniziali dai nomi dei file" # (ndt) hmmm... non molto chiara... -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "Segue i collegamenti simbolici; archivia ed esegue il dump dei file a cui " "puntano" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" "Segue i collegamenti fisici; archivia ed esegue il dump dei file a cui si " "riferiscono" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "NOME" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "Inizia dal membro NOME nell'archivio" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "Archivia solo i file più recenti di DATA-O-FILE" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATA" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "Confronta data e ora solo quando il contenuto è cambiato" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "CONTROLLO" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "Esegue un backup prima di rimuovere, usando il CONTROLLO di versione" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "STRINGA" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1998,103 +2001,102 @@ msgstr "" "Esegue un backup prima di rimuovere, sovrascrivendo il suffisso \"~\" a meno " "che non sia sovrascritto dalla variabile d'ambiente SIMPLE_BACKUP_SUFFIX" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Trasformazioni dei nomi di file:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" "Toglie NUMERO componenti iniziali dai nomi dei file durante l'estrazione" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "ESPRESSIONE" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" "Usa un'ESPRESSIONE di sostituzione di sed per trasformare i nomi dei file" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Opzioni di corrispondenza del nome del file (vale sia per i modelli di " "esclusione che inclusione):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "Non fa differenza tra maiuscole e minuscole" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "I modelli corrispondono all'inizio del nome del file" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" "I modelli corrispondono dopo ogni \"/\" (predefinito per le esclusioni)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "Considera diverse le maiuscole e le minuscole (predefinito)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "Utilizza i metacaratteri (predefinito per le esclusioni)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "Corrispondenza letterale della stringa" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "I metacaratteri non corrispondono \"/\"" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "I metacaratteri corrispondono \"/\" (predefinito per le esclusioni)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Output informativo:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "Elenca prolissamente i file elaborati" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" -msgstr "" +msgstr "PAROLACHIAVE" -#: src/tar.c:740 -#, fuzzy +#: src/tar.c:741 msgid "warning control" -msgstr "Controlli di sovrascrittura:" +msgstr "Controllo di avviso" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" "Visualizza un messaggio di avanzamento ogni NUMERO-esimo record (predefinito " "10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "AZIONE" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "Esegue l'azione a ogni punto di controllo" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "Stampa un messaggio se non tutti i collegamenti sono archiviati" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SEGNALE" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2106,27 +2108,31 @@ msgstr "" "sono: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 e SIGUSR2; sono accettati anche i " "nomi senza il prefisso SIG" -#: src/tar.c:755 -msgid "print file modification dates in UTC" -msgstr "Stampa le date di modifica dei file in formato UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" +msgstr "Stampa le date di modifica del file in formato UTC" + +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "Stampa la data del file in tutti i suoi dettagli" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "Invia l'output prolisso al FILE" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "Mostra il numero di blocco nell'archivio con ogni messaggio" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "Chiede conferma per ogni azione" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "Mostra le impostazioni predefinite di tar" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2134,33 +2140,33 @@ msgstr "" "All'elencazione o all'estrazione, elenca ogni directory che non corrisponde " "al criterio di ricerca" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "Mostra il nome del file o dell'archivio dopo la trasformazione" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STILE" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" "Imposta lo stile di citazione del nome; consultare più sotto per i valori di " "STILE consentiti" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "Caratteri di citazione aggiuntivi da STRINGA" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "Disabilita la citazione per i caratteri dalla STRINGA" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Opzioni di compatibilità:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2168,118 +2174,115 @@ msgstr "" "Alla creazione, uguale a --old-archive; all'estrazione, uguale a --no-same-" "owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Altre opzioni:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "Disabilita l'uso di alcune opzioni potenzialmente dannose" -#: src/tar.c:927 -#, fuzzy +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" -msgstr "Non è possibile indicare più di un'opzione \"-Acdtrux\"" +msgstr "" +"Non è possibile indicare più di un'opzione \"-Acdtrux\" o \"--test-label\"" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Conflitto tra le opzioni di compressione" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Nome del segnale sconosciuto: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "File campione della data non trovato" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Sostituzione di %s al posto del formato di data sconosciuto %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Opzione %s: la data \"%s\" viene considerata come %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: elenco file già letto" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: il nome di file letto contiene un carattere NULL" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 -#, fuzzy, c-format +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 +#, c-format msgid "filter the archive through %s" -msgstr "Filtra l'archivio attraverso xz" +msgstr "Filtra l'archivio attraverso %s" -#: src/tar.c:1290 -#, fuzzy +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" -msgstr "Argomenti validi per le opzioni --quoting-style sono:" +msgstr "Argomenti validi per l'opzione --quoting-style sono:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" "\n" -"Questo tar ha le seguenti impostazioni predefinite:\n" +"Questa versione di tar ha le seguenti impostazioni predefinite:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Fattore del blocco non valido" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Lunghezza del nastro non valida" -#: src/tar.c:1511 -#, fuzzy +#: src/tar.c:1529 msgid "Invalid incremental level value" -msgstr "Formato file incrementale errato" +msgstr "Valore del livello incrementale non valido" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Più di una data di soglia" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Valore versione sparsa non valido" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve=\"system\" non è supportato su questa piattaforma" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "Il valore --checkpoint non è un intero" -#: src/tar.c:1830 -#, fuzzy +#: src/tar.c:1848 msgid "Invalid group" -msgstr "%s: gruppo non valido" +msgstr "Gruppo non valido" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Modo fornito sull'opzione non valido" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Numero non valido" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Proprietario non valido" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2287,118 +2290,117 @@ msgstr "" "L'opzione --preserve è deprecata, usare --preserve-permissions --preserve-" "order" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Dimensione del record non valida" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "La dimensione del record deve essere un multiplo di %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Numero di elementi non valido" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Consentita solo un'opzione --to-command" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Argomento densità non corretto: \"%s\"" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Densità sconosciuta: \"%c\"" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" -msgstr "Le opzioni \"-[0-7][lmh]\" non sono gestite da questo tar" +msgstr "Le opzioni \"-[0-7][lmh]\" non sono gestite da questa versione di tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FILE]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "La vecchia opzione \"%c\" richiede un argomento." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence non ha senso senza un elenco di file" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence non può essere usata nel modo di operazioni richiesto" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Archivi multipli richiedono l'opzione \"-M\"" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Impossibile combinare --listed-incremental e --newer" -#: src/tar.c:2387 -#, fuzzy +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" -msgstr "--preserve-order non è compatibile con --listed-incremental" +msgstr "L'opzione --level non è utilizzabile senza --listed-incremental" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: l'etichetta di volume è troppo lunga (il limite è %lu byte)" msgstr[1] "%s: l'etichetta di volume è troppo lunga (il limite sono %lu byte)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Impossibile verificare archivi multi-volume" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Impossibile verificare archivi compressi" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Impossibile usare archivi multi-volume compressi" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Impossibile concatenare archivi compressi" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option può essere usata solo su archivi POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" "La lunghezza del volume non può essere minore della dimensione del record" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order non è compatibile con --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Rifiuto totale di creare un archivio vuoto" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Le opzioni \"-Aru\" sono incompatibili con \"-f -\"" -#: src/tar.c:2592 -#, fuzzy +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" -msgstr "È necessario specificare una delle opzioni \"-Acdtrux\"" +msgstr "" +"È necessario specificare una delle opzioni \"-Acdtrux\" o \"--test-label\"" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Uscita con stato di fallimento in base agli errori precedenti" @@ -2410,57 +2412,56 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: il file si è ridotto di %s byte" msgstr[1] "%s: il file si è ridotto di %s byte" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "La parola chiave %s è sconosciuta o non ancora implementata" -#: src/xheader.c:173 -#, fuzzy +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" -msgstr "Numero fuori dall'intervallo consentito: %s" +msgstr "Orario fuori dall'intervallo consentito" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Il modello %s non può essere usato" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "La parola chiave %s non può essere sostituita" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Intestazione estesa malformata: manca la lunghezza" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "La lunghezza intestazione estesa è fuori dall'intervallo consentito" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "La lunghezza dell'intestazione estesa %*s è fuori dall'intervallo" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Intestazione estesa malformata: manca lo spazio dopo la lunghezza" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Intestazione estesa malformata: manca il segno di uguale" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Intestazione estesa malformata: manca un newline" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Parola chiave sconosciuta \"%s\" dell'intestazione estesa ignorata" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" @@ -2469,28 +2470,28 @@ msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "L'intestazione estesa %s=%s è fuori dall'intervallo %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Intestazione estesa malformata: %s=%s non valido" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Intestazione estesa malformata: %s=%s in eccesso" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Intestazione estesa malformata: %s non valido: delimitatore %c non atteso" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2532,7 +2533,7 @@ msgstr "Punto di controllo di scrittura %u" msgid "Read checkpoint %u" msgstr "Punto di controllo di lettura %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2540,97 +2541,95 @@ msgstr "" "genfile manipola i file per la suite di test GNU paxutils.\n" "Le opzioni sono:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Opzioni di creazione file:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "DIMENSIONE" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Crea file della DIMENSIONE indicata" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Scrive sul file NOME invece dello standard output" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Legge i nomi dei file da FILE" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T legge nomi terminati da NULL" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Riempie il file con il MODELLO fornito. MODELLO è \"default\" o \"zeros\"" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Dimensione del blocco per il file sparso" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Genera file sparso. Il resto della riga di comando fornisce la mappa del " "file." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "OFFSET" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Si posiziona all'OFFSET indicato prima di scrivere i dati" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Opzioni per le statistiche:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Stampa i contenuti di struct stat per ogni file dato. Il FORMATO predefinito " "è:" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Opzioni di esecuzione sincrona:" -#: tests/genfile.c:164 -#, fuzzy +#: tests/genfile.c:163 msgid "OPTION" -msgstr " [OPZIONE...]" +msgstr "OPZIONE" -#: tests/genfile.c:165 -#, fuzzy +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -"Esegue il COMANDO dato. Utile con --checkpoint e uno tra --cut, --append, --" -"touch" +"Esegue ARGOMENTI. Utile con --checkpoint e uno tra --cut, --append, --touch, " +"--unlink" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "Esegue l'azione indicata (consultare più sotto) al raggiungimento del punto " "di controllo NUMERO" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Imposta la data per l'opzione --touch successiva" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" "Visualizza i punti di controllo eseguiti e lo stato di uscita del COMANDO" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2638,7 +2637,7 @@ msgstr "" "Azioni di esecuzione sincrona. Queste sono eseguite quando viene raggiunto " "il punto di controllo fornito dall'opzione --checkpoint." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2646,85 +2645,85 @@ msgstr "" "Tronca il FILE alla dimensione specificata dall'opzione --length precedente " "(0 se non viene fornita)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "Aggiunge DIMENSIONE byte al FILE. DIMENSIONE è fornita dall'opzione --length " "precedente." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Aggiorna l'orario di accesso e modifica del FILE" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Esegue il COMANDO" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" -msgstr "" +msgstr "Esegue l'unlink di FILE" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Dimensione non valida: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Numero fuori dall'intervallo consentito: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Dimensione negativa: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) non riuscita" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "lunghezza file richiesta %lu, effettiva %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "il file creato non è sparso" # (ndt) ? -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Errore nell'analizzare il numero vicino a \"%s\"" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Formato data non conosciuto" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGOMENTI...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "impossibile aprire \"%s\"" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "impossibile eseguire seek" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "il nome del file contiene caratteri NULL" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" @@ -2732,130 +2731,60 @@ msgstr "" "file" # (ndt) ? -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "maschera non corretta (vicino a \"%s\")" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Campo \"%s\" sconosciuto" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "impossibile impostare l'orario su \"%s\"" -#: tests/genfile.c:700 -#, fuzzy, c-format +#: tests/genfile.c:699 +#, c-format msgid "cannot unlink `%s'" -msgstr "impossibile aprire \"%s\"" +msgstr "impossibile eseguire l'unlink di %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Comando eseguito con successo\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Comando non riuscito con lo stato %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Comando terminato al segnale %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Comando fermato al segnale %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Il comando ha fatto un dump del core\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Comando terminato\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat richiede i nomi dei file" -#~ msgid "%s: illegal option -- %c\n" -#~ msgstr "%s: opzione non lecita -- %c\n" - -#~ msgid "" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "\n" -#~ "Segnalare i bug a <%s>.\n" - -#~ msgid "Reading %s\n" -#~ msgstr "Lettura di %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Errore irrimediabile: uscita immediata" - -#~ msgid "suppress this warning." -#~ msgstr "per disattivare questo avviso." - -#~ msgid "filter the archive through bzip2" -#~ msgstr "Filtra l'archivio attraverso bzip2" - -#~ msgid "filter the archive through gzip" -#~ msgstr "Filtra l'archivio attraverso gzip" - -#~ msgid "filter the archive through compress" -#~ msgstr "Filtra l'archivio attraverso compress" - -#~ msgid "filter the archive through lzma" -#~ msgstr "Filtra l'archivio attraverso lzma" - -#~ msgid "filter the archive through lzop" -#~ msgstr "Filtra l'archivio attraverso lzop" - -#~ msgid "Input string too long" -#~ msgstr "Stringa di input troppo lunga" - -#~ msgid "Number syntax error" -#~ msgstr "Errore nella sintassi del numero" - -#~ msgid "rmtd: Cannot allocate buffer space\n" -#~ msgstr "rmtd: impossibile allocare spazio per il buffer\n" - -#~ msgid "Cannot allocate buffer space" -#~ msgstr "Impossibile allocare spazio per il buffer" - -#~ msgid "Try `%s --help' for more information.\n" -#~ msgstr "Usare \"%s --help\" per ulteriori informazioni.\n" - -#~ msgid "" -#~ "Usage: %s [OPTION]\n" -#~ "Manipulate a tape drive, accepting commands from a remote process.\n" -#~ "\n" -#~ " --version Output version info.\n" -#~ " --help Output this help.\n" -#~ msgstr "" -#~ "Uso: %s [OPZIONE]\n" -#~ "Manipola un'unità a nastro accettando comandi da un processo remoto.\n" -#~ "\n" -#~ " --version Mostra le informazioni sulla versione.\n" -#~ " --help Mostra questo aiuto.\n" - -#~ msgid "Seek offset error" -#~ msgstr "Errore offset di seek" - -#~ msgid "Premature end of file" -#~ msgstr "Prematura fine del file" - -#~ msgid "Warning: the -I option is not supported; perhaps you meant -j or -T?" -#~ msgstr "" -#~ "Attenzione: l'opzione -I non è supportata; forse si intendeva usare -j o -" -#~ "T?" +#~ msgid "Cannot save working directory" +#~ msgstr "Impossibile salvare la directory di lavoro" diff --git a/po/ja.gmo b/po/ja.gmo index f4bb6409f3e3486969c1cc6d66173e48b119fd2c..72be44bcb488979c83906998133b1b3b20f65638 100644 GIT binary patch delta 12530 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 diff --git a/po/ja.po b/po/ja.po index 3fac525..2dc0244 100644 --- a/po/ja.po +++ b/po/ja.po @@ -1,4 +1,4 @@ -# Japanese messages for GNU tar 1.22.91 +# Japanese messages for GNU tar 1.23.90 # Copyright (C) 1999, 2000, 2001, 2004, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. # This file is distributed under the same license as the tar package. # Masahito Yamaga , 2010. @@ -6,14 +6,16 @@ # Daisuke Yamashita , 1999-2001. # Masahito Yamaga , 2007. # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: GNU tar 1.22.91\n" +"Project-Id-Version: GNU tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2010-02-13 10:46+0900\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-12 18:03+0900\n" "Last-Translator: Masahito Yamaga \n" "Language-Team: Japanese \n" +"Language: ja\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=EUC-JP\n" "Content-Transfer-Encoding: 8bit\n" @@ -89,7 +91,7 @@ msgstr " msgid "Report bugs to %s.\n" msgstr "¥Ð¥°¥ì¥Ý¡¼¥È¤Ï %s ¤Þ¤Ç.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "ÉÔÌÀ¤Ê¥·¥¹¥Æ¥à¥¨¥é¡¼" @@ -101,8 +103,8 @@ msgstr " msgid "give a short usage message" msgstr "û¤¤»ÈÍÑË¡¥á¥Ã¥»¡¼¥¸¤òɽ¼¨" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NAME" @@ -140,56 +142,61 @@ msgstr "( msgid "write error" msgstr "½ñ¤­¹þ¤ß¥¨¥é¡¼" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó '%s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó '--%s' ¤Ë°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó '%c%s' ¤Ë°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: ¥ª¥×¥·¥ç¥ó '%s' ¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: ¥ª¥×¥·¥ç¥ó '--%s' ¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: ̤ÃΤΥª¥×¥·¥ç¥ó '--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: ̤ÃΤΥª¥×¥·¥ç¥ó '%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: ̵¸ú¤Ê¥ª¥×¥·¥ç¥ó -- '%c'\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹ -- '%c'\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó '-W %s' ¤Ï¤¢¤¤¤Þ¤¤¤Ç¤¹\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó '-W %s' ¤Ë°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: ¥ª¥×¥·¥ç¥ó '-W %s' ¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "¥á¥â¥ê¤ò»È¤¤ÀÚ¤ê¤Þ¤·¤¿" @@ -533,189 +540,189 @@ msgstr "ɸ #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "%s ¤ËÀܳ¤Ç¤­¤Þ¤»¤ó: ̾Á°²ò·è¼ºÇÔ" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "±ó³Ö¥·¥§¥ë¤¬¼Â¹Ô¤Ç¤­¤Þ¤»¤ó" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "¸¡º÷Êý¸þ¤¬Èϰϳ°" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "̵¸ú¤Ê¸¡º÷Êý¸þ" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "̵¸ú¤Ê¸¡º÷¥ª¥Õ¥»¥Ã¥È" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "¸¡º÷¥ª¥Õ¥»¥Ã¥È¤¬Èϰϳ°" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "̵¸ú¤Ê¥Ð¥¤¥È¿ô" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "¥Ð¥¤¥È¿ô¤¬Èϰϳ°" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "¥Õ¥¡¥¤¥ë¤ÎÅÓÃ潪λ" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "̵¸ú¤ÊÁàºî¥³¡¼¥É" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤Áàºî" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "ͽ´ü¤»¤Ì°ú¿ô" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "±ó³Ö¥×¥í¥»¥¹¤«¤é¤ÎÌ¿Îá¤ò¼õ¤±ÉÕ¤±¤Æ¥Æ¡¼¥×¥É¥é¥¤¥Ö¤òÁàºî" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "NUMBER" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "¥Ç¥Ð¥Ã¥°¥ì¥Ù¥ë¤òÀßÄê" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FILE" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "¥Ç¥Ð¥Ã¥°½ÐÎÏ¥Õ¥¡¥¤¥ë̾¤òÀßÄê" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "%s ¤ò³«¤±¤Þ¤»¤ó" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "°ú¿ô¤¬Â¿¤¹¤®¤Þ¤¹" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "ÉÔÍפʥ³¥Þ¥ó¥É" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "¤³¤ì¤Ï tar ¥¢¡¼¥«¥¤¥Ö¤Ç¤Ï¤Ê¤¤¤è¤¦¤Ç¤¹" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Áí½ñ¤­½Ð¤·¥Ð¥¤¥È¿ô" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "ÁíÆɤ߹þ¤ß¥Ð¥¤¥È¿ô" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Áíºï½ü¥Ð¥¤¥È¿ô: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(¥Ñ¥¤¥×)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "record_size ¤¬Ìµ¸ú¤ÊÃͤǤ¹" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "¥¢¡¼¥«¥¤¥Ö̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "ɸ½àÆþ½ÐÎϤΥ¢¡¼¥«¥¤¥Ö¤Ï¸¡¾Ú¤Ç¤­¤Þ¤»¤ó" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "¥¢¡¼¥«¥¤¥Ö¤Ï°µ½Ì¤µ¤ì¤Æ¤¤¤Þ¤¹. %s ¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "°µ½Ì¤µ¤ì¤¿¥¢¡¼¥«¥¤¥Ö¤Ï¥¢¥Ã¥×¥Ç¡¼¥È¤Ç¤­¤Þ¤»¤ó" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "¥Æ¡¼¥×¤ÎÀèƬ¤Ç¤¹. ½èÍý¤òÃæ»ß¤·¤Þ¤¹" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "¥¨¥é¡¼¤¬Â¿¤¹¤®¤Þ¤¹. ½èÍý¤òÃæ»ß¤·¤Þ¤¹" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "µ­Ï¿¥µ¥¤¥º = %lu ¥Ö¥í¥Ã¥¯" msgstr[1] "µ­Ï¿¥µ¥¤¥º = %lu ¥Ö¥í¥Ã¥¯" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "¥¢¡¼¥«¥¤¥ÖÆâ¤Î¥¢¥é¥¤¥ó¥á¥ó¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ö¥í¥Ã¥¯ (%lu ¥Ð¥¤¥È)" msgstr[1] "¥¢¡¼¥«¥¤¥ÖÆâ¤Î¥¢¥é¥¤¥ó¥á¥ó¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ö¥í¥Ã¥¯ (%lu ¥Ð¥¤¥È)" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤ò¸å¤íÊý¸þ¤ËÌ᤻¤Þ¤»¤ó. -i ¤Ê¤·¤Ç¤ÏÆɤá¤Ê¤¤¤«¤âÃΤì¤Þ¤»¤ó." -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek ¤òµ­Ï¿¤Î¶­³¦¤Ç»ß¤á¤Þ¤»¤ó" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: ̵¸ú¤Ê¥Ü¥ê¥å¡¼¥àÈÖ¹æ¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "¥Ü¥ê¥å¡¼¥àÈֹ椬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Þ¤·¤¿" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "¥Ü¥ê¥å¡¼¥à #%d (%s) ¤ò½àÈ÷¤·¤Þ¤¹. ¥ê¥¿¡¼¥ó¥­¡¼¤ò²¡¤·¤Æ¤¯¤À¤µ¤¤: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "¥æ¡¼¥¶¤¬±þÅú¤¹¤ë EOF ¤¬É¬ÍפȤʤê¤Þ¤¹" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "·Ù¹ð: ¥¢¡¼¥«¥¤¥Ö¤¬ÉÔ´°Á´¤Ç¤¹" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -727,67 +734,67 @@ msgstr "" " q tar ¤ò½ªÎ»\n" " y ¤Þ¤¿¤Ï²þ¹Ô Áàºî¤ò·Ñ³\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! ¥µ¥Ö¥·¥§¥ë¤òµ¯Æ°\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? ¤³¤Î¥ê¥¹¥È¤òɽ¼¨\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "¿·¤·¤¤¥Ü¥ê¥å¡¼¥à¤¬¤¢¤ê¤Þ¤»¤ó. ½ªÎ»¤·¤Þ¤¹.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "¥Õ¥¡¥¤¥ë̾¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó. ¤â¤¦°ìÅÙ.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "ÉÔÀµ¤ÊÆþÎÏ. ? ¤Ç¥Ø¥ë¥×¤òɽ¼¨\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "%s ¥³¥Þ¥ó¥É¤¬¼ºÇÔ¤·¤Þ¤·¤¿" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s ¤Ï¤³¤Î¥Ü¥ê¥å¡¼¥à¾å¤Ç¤ª¤½¤é¤¯Ï¢Â³¤·¤Æ¤¤¤Þ¤¹: ¥Ø¥Ã¥À¤Ï¾Êά¤µ¤ì¤¿Ì¾Á°¤ò´Þ¤ó¤Ç" "¤¤¤Þ¤¹" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s ¤Ï¤³¤Î¥Ü¥ê¥å¡¼¥à¾å¤ÇϢ³¤·¤Æ¤¤¤Þ¤»¤ó" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s ¤ÏÉÔÀµ¤Ê¥µ¥¤¥º¤Ç¤¹ (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "¤³¤Î¥Ü¥ê¥å¡¼¥à¤ÏϢ³¤·¤Æ¤¤¤Þ¤»¤ó (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "¥¢¡¼¥«¥¤¥Ö¤Ï %s ¤Ë°ìÃפ¹¤ë¥é¥Ù¥ë¤¬ÉÕ¤¤¤Æ¤¤¤Þ¤»¤ó" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "¥Ü¥ê¥å¡¼¥à %s ¤Ï %s ¤Ë°ìÃפ·¤Þ¤»¤ó" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -795,7 +802,7 @@ msgstr "" "%s: ¥Õ¥¡¥¤¥ë̾¤¬Ä¹²á¤®¤Æ GNU ¥Þ¥ë¥Á¥Ü¥ê¥å¡¼¥à¥Ø¥Ã¥À¤ËÊݸ¤Ç¤­¤Ê¤¤¤Î¤ÇÀÚ¤ê¼Î¤Æ" "¤Þ¤¹" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "½ñ¤­¹þ¤ß¤¬¥Ö¥í¥Ã¥¯¶­³¦¤Ç½ª¤ï¤Ã¤Æ¤¤¤Þ¤»¤ó" @@ -806,20 +813,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "%lu ¥Ð¥¤¥È¤À¤±¤ò %lu ¥Ð¥¤¥È¤«¤éÆɤ߹þ¤à¤³¤È¤¬¤Ç¤­¤Þ¤·¤¿" msgstr[1] "%lu ¥Ð¥¤¥È¤À¤±¤ò %lu ¥Ð¥¤¥È¤«¤éÆɤ߹þ¤à¤³¤È¤¬¤Ç¤­¤Þ¤·¤¿" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "ÆâÍƤ¬°Û¤Ê¤ê¤Þ¤¹" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "¥¢¡¼¥«¥¤¥ÖÃæ¤Ëͽ´ü¤»¤Ì EOF ¤¬¤¢¤ê¤Þ¤¹" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "¥Õ¥¡¥¤¥ë¥¿¥¤¥×¤¬°Û¤Ê¤ê¤Þ¤¹" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "¥â¡¼¥É¤¬°Û¤Ê¤ê¤Þ¤¹" @@ -835,143 +842,143 @@ msgstr " msgid "Mod time differs" msgstr "ºÇ½ª½¤Àµ»þ¹ï¤¬°Û¤Ê¤ê¤Þ¤¹" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "¥µ¥¤¥º¤¬°Û¤Ê¤ê¤Þ¤¹" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "%s ¤Ë¥ê¥ó¥¯¤·¤Æ¤¤¤Þ¤»¤ó" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤¬°Û¤Ê¤ê¤Þ¤¹" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "¥Ç¥Ð¥¤¥¹Èֹ椬°ã¤¤¤Þ¤¹" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "¸¡¾Ú" -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: ̤ÃΤΥե¡¥¤¥ë¥¿¥¤¥× `%c', Ä̾ï¥Õ¥¡¥¤¥ë¤Èº¹Ê¬¤ò¼è¤ê¤Þ¤¹" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "¥¢¡¼¥«¥¤¥ÖÃæ¤ËÀÜƬ¼­¤¬ºï½ü¤µ¤ì¤¿¥Õ¥¡¥¤¥ë̾¤¬¤¢¤ê¤Þ¤¹." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "¸µ¤Î¥Õ¥¡¥¤¥ë¤Î½êºß³Îǧ¤Ë¼ºÇÔ¤·¤¿²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "³Îǧ¼ºÇÔ: %d ¸Ä¤Î̵¸ú¤Ê¥Ø¥Ã¥À¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿" msgstr[1] "³Îǧ¼ºÇÔ: %d ¸Ä¤Î̵¸ú¤Ê¥Ø¥Ã¥À¤¬¸«¤Ä¤«¤ê¤Þ¤·¤¿" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" -msgstr "%s ¤ËŤ¤¥¼¥í¥Ö¥í¥Ã¥¯" +msgstr "%s ¤Ë¸ÉΩ¤·¤¿¥¼¥í¥Ö¥í¥Ã¥¯" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: ¥­¥ã¥Ã¥·¥å ¥Ç¥£¥ì¥¯¥È¥ê ¥¿¥° %s ¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "ÃÍ %s ¤Ï %s ¤ÎÈÏ°Ï %s..%s ¤Ë¤¢¤ê¤Þ¤»¤ó -- %s ¤òÂåÍÑ" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "ÃÍ %s ¤Ï %s ¤ÎÈÏ°Ï %s..%s ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Éé¤Î 8 ¿Ê¥Ø¥Ã¥À¤òÀ¸À®¤·¤Þ¤¹" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: ¥Õ¥¡¥¤¥ë̾¤¬Ä¹²á¤®¤ë (ºÇÂç %d) ¤Î¤Ç¥À¥ó¥×¤·¤Þ¤»¤ó" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: ¥Õ¥¡¥¤¥ë̾¤¬Ä¹²á¤®¤ë (ʬ³äÉÔǽ) ¤Î¤Ç¥À¥ó¥×¤·¤Þ¤»¤ó" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: ¥ê¥ó¥¯Ì¾¤¬Ä¹²á¤®¤ë¤Î¤Ç¥À¥ó¥×¤·¤Þ¤»¤ó" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: %s ¥Ð¥¤¥È¾®¤µ¤¯¤Ê¤Ã¤¿¤Î¤Ç¡¢¥¼¥í¤ÇËä¤á¤Þ¤¹" msgstr[1] "%s: %s ¥Ð¥¤¥È¾®¤µ¤¯¤Ê¤Ã¤¿¤Î¤Ç¡¢¥¼¥í¤ÇËä¤á¤Þ¤¹" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: ¥Õ¥¡¥¤¥ë¤Ï°Û¤Ê¤ë¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¾å¤Ë¤¢¤ë¤Î¤Ç¥À¥ó¥×¤·¤Þ¤»¤ó" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "ÆâÍƤò¥À¥ó¥×¤·¤Þ¤»¤ó" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: ̤ÃΤΥե¡¥¤¥ë·Á¼°; ¥Õ¥¡¥¤¥ë¤Ï̵»ë¤µ¤ì¤Þ¤¹" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." msgstr "%s ¤Ø¤Î¥ê¥ó¥¯¤¬¤¢¤ê¤Þ¤»¤ó." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: Êѹ¹¤µ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ç¥À¥ó¥×¤·¤Þ¤»¤ó" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: ¤Ï¥¢¡¼¥«¥¤¥Ö¤Ê¤Î¤Ç¥À¥ó¥×¤·¤Þ¤»¤ó" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤ò¥À¥ó¥×¤·¤Þ¤»¤ó" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: Æɤ߹þ¤ó¤À¥Õ¥¡¥¤¥ë¤¬Êѹ¹¤µ¤ì¤Æ¤¤¤Þ¤¹" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: ¥½¥±¥Ã¥È¤Ï̵»ë¤·¤Þ¤¹" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: door ¤Ï̵»ë¤·¤Þ¤¹" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "¼¡¤Î¥Ø¥Ã¥À¤ò¥¹¥­¥Ã¥×¤·¤Þ¤¹" @@ -979,74 +986,74 @@ msgstr " msgid "Deleting non-header from archive" msgstr "¥¢¡¼¥«¥¤¥Ö¤«¤é¥Ø¥Ã¥À¤Ç¤Ê¤¤¤â¤Î¤òºï½ü¤·¤Þ¤¹" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: ¶²¤é¤¯¸Å¤¤¥¿¥¤¥à¥¹¥¿¥ó¥× %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: ¥¿¥¤¥à¥¹¥¿¥ó¥× %s ¤Ï %s ÉÃÀè¤ò¼¨¤·¤Æ¤¤¤Þ¤¹" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥êºîÀ®»þ¤ËÉÔ¬¤ÎÌ·½â¤¬µ¯¤³¤ê¤Þ¤·¤¿" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê¤Ï¾õÂÖ¤òŸ³«¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ëÁ°¤Ë̾Á°¤òÊѹ¹¤µ¤ì¤Þ¤·¤¿" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Ϣ³¤·¤¿¥Õ¥¡¥¤¥ë¤òÀµ¾ï¤Ê¥Õ¥¡¥¤¥ë¤È¤·¤Æ¼è¤ê½Ð¤·¤Þ¤¹" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤ò¥Ï¡¼¥É¥ê¥ó¥¯¤È¤·¤Æ¼è¤ê½Ð¤·¤Æ¤ß¤Þ¤¹" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: ¼è¤ê½Ð¤»¤Þ¤»¤ó -- ¥Õ¥¡¥¤¥ë¤ÏÊ̤Υܥê¥å¡¼¥à¤«¤é³¤¤¤Æ¤¤¤Þ¤¹" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "ͽ´ü¤»¤ÌŤ¤Ì¾Á°¥Ø¥Ã¥À" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: ̤ÃΤΥե¡¥¤¥ë¥¿¥¤¥× '%c', Ä̾ï¥Õ¥¡¥¤¥ë¤È¤·¤ÆÃê½Ð" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "¸½ºß¤Î %s ¤ÎÊý¤¬¿·¤·¤¤¤«Æ±¤¸" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: ¤³¤Î¥Õ¥¡¥¤¥ë¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò¼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "%s ¤Î̾Á°¤ò %s ¤ËÊѹ¹¤Ç¤­¤Þ¤»¤ó" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê̾¤¬ %s ¤«¤éÊѹ¹¤µ¤ì¤Þ¤·¤¿" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê̾¤¬Êѹ¹¤µ¤ì¤Þ¤·¤¿" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê¤Ï¿·¤·¤¯ºî¤é¤ì¤Þ¤·¤¿" @@ -1156,175 +1163,177 @@ msgstr "%s: %s msgid "%s: Cannot remove" msgstr "%s: ºï½ü¤Ç¤­¤Þ¤»¤ó" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: ¾Êά¤·¤Þ¤¹" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "¥Ö¥í¥Ã¥¯ %s: ** NUL ¤Î¥Ö¥í¥Ã¥¯ **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "¥Ö¥í¥Ã¥¯ %s: ** ¥Õ¥¡¥¤¥ë¤Î½ªÃ¼ **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "¥Ö¥í¥Ã¥¯ %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "¿ôÃÍ %s ¤È¤Ê¤ë¤Ù¤­¥Ø¥Ã¥À°ÌÃÖ¤¬¶õ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "8 ¿Ê¿ôÃÍ %.*s ¤Ï %s ¤ÎÈϰϳ°¤Ç¤¹ -- 2 ¤ÎÊä¿ô¤È¸«¤Ê¤·¤Þ¤¹" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "8 ¿Ê¿ôÃÍ %.*s ¤Ï %s ¤ÎÈϰϳ°¤Ç¤¹" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "¥¢¡¼¥«¥¤¥Ö¤ËÇѤ줿 base-64 ¥Ø¥Ã¥À¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Éä¹æÉÕ¤­ base-64 ʸ»úÎó %s ¤Ï %s ¤ÎÈϰϳ°¤Ç¤¹" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "base-256 ÃÍ¤Ï %s ¤ÎÈϰϳ°¤Ç¤¹" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "¥¢¡¼¥«¥¤¥Ö¤Ë %.*s ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢¤³¤³¤Ï¿ôÃÍ %s ¤È¤Ê¤ë¤Ï¤º¤Ç¤¹" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "¥¢¡¼¥«¥¤¥Ö¤ÎÃÍ %s ¤Ï %s ¤ÎÈÏ°Ï %s..%s Æâ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " %s ¤Ø¤Î¥ê¥ó¥¯\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " ÉÔÌÀ¤Ê¥Õ¥¡¥¤¥ë¥¿¥¤¥× %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Ť¤¥ê¥ó¥¯--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Ť¤Ì¾Á°--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--¥Ü¥ê¥å¡¼¥à¥Ø¥Ã¥À--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--¥Ð¥¤¥È %s ¤ÇϢ³--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "¥ï¡¼¥¯¥Ç¥£¥ì¥¯¥È¥ê¤òÊѹ¹¤Ç¤­¤Þ¤»¤ó" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "̾Á°¤ò %s ¤«¤é %s ¤ËÊѹ¹¤·¤Þ¤¹\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: ̾Á°¤ò %s ¤ËÊѹ¹¤Ç¤­¤Þ¤»¤ó" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "̾Á°¤ò %s ¤«¤é %s ¤ËÌᤷ¤Þ¤¹\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "¥ï¡¼¥¯¥Ç¥£¥ì¥¯¥È¥ê¤òÊݸ¤Ç¤­¤Þ¤»¤ó" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "¥ï¡¼¥¯¥Ç¥£¥ì¥¯¥È¥ê¤òÊѹ¹¤Ç¤­¤Þ¤»¤ó" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Æɤ߹þ¤ß°ÊÁ°¤Ëºï½ü¤µ¤ì¤Þ¤·¤¿" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Æɤ߹þ¤ßÁ°¤Ëºï½ü¤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "»Ò¥×¥í¥»¥¹" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "¥×¥í¥»¥¹´Ö¥Á¥ã¥Í¥ë" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "¥Ñ¥¿¡¼¥ó¥Þ¥Ã¥Á¤Îʸ»ú¤¬¥Õ¥¡¥¤¥ë̾¤Ë»È¤ï¤ì¤Æ¤¤¤Þ¤¹." +msgstr "¥Ñ¥¿¡¼¥ó¥Þ¥Ã¥Á¤Îʸ»ú¤¬¥Õ¥¡¥¤¥ë̾¤Ë»È¤ï¤ì¤Æ¤¤¤Þ¤¹" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" -msgstr "--wildcards ¤Ç¥Ñ¥¿¡¼¥ó¥Þ¥Ã¥Á¤òÍ­¸ú¤Ë, ¤Þ¤¿ --no-wildcards ¤Ç" +msgstr "" +"¥Ñ¥¿¡¼¥ó¥Þ¥Ã¥Á¤òÍ­¸ú¤Ë¤¹¤ë¤Ê¤é --wildcards, ¤³¤Î·Ù¹ð¤òÍ޻ߤ¹¤ë¤Ê¤é --no-" +"wildcards ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: ¥¢¡¼¥«¥¤¥ÖÆâ¤Ë¸«¤Ä¤«¤ê¤Þ¤»¤ó" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: ¥¢¡¼¥«¥¤¥ÖÆâ¤Ë¸«¤Ä¤«¤ê¤Þ¤»¤ó" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "¥¢¡¼¥«¥¤¥Ö¥é¥Ù¥ë¤¬°ìÃפ·¤Þ¤»¤ó" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" "¥Õ¥¡¥¤¥ë¥ê¥¹¥ÈÆâ¤Ç -C ¥ª¥×¥·¥ç¥ó¤Ï --listed-incremental ¤È°ì½ï¤Ë»È¤¨¤Þ¤»¤ó" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "-C ¥ª¥×¥·¥ç¥ó¤Ï 1¤Ä¤À¤±¤Ê¤é --listed-incremental ¤È°ì½ï¤Ë»È¤¨¤Þ¤¹" @@ -1348,7 +1357,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "ÉÔÌÀ¤Ê°úÍÑ·Á¼° `%s', `%s --quoting-style=help' ¤Ç°ìÍ÷ɽ¼¨." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1367,7 +1376,7 @@ msgstr "" " tar -tvf archive.tar # archive.tar Æâ¤ÎÁ´¥Õ¥¡¥¤¥ë¤ò¾Ü¤·¤¯°ìÍ÷ɽ¼¨\n" " tar -xf archive.tar # archive.tar ¤«¤éÁ´¥Õ¥¡¥¤¥ë¤ò¼è¤ê½Ð¤¹\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1388,79 +1397,79 @@ msgstr "" " ¤½¤¦¤Ç¤Ê¤±¤ì¤Ðñ¤Ë¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò¼è¤ë\n" " never, simple ¾ï¤Ëñ½ã¤Ê¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò¼è¤ë\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "¼çÁàºî¥â¡¼¥É:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "¥¢¡¼¥«¥¤¥Ö¤ÎÆâÍƤò°ìÍ÷ɽ¼¨" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "¥¢¡¼¥«¥¤¥Ö¤«¤é¥Õ¥¡¥¤¥ë¤òÃê½Ð" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "¿·¤·¤¤¥¢¡¼¥«¥¤¥Ö¤òºîÀ®" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "¥¢¡¼¥«¥¤¥Ö¤È¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤È¤Î°ã¤¤¤ò¸«ÉÕ¤±¤ë" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "¥¢¡¼¥«¥¤¥Ö¤ÎËöÈø¤Ë¥Õ¥¡¥¤¥ë¤òÄɲÃ" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "¥¢¡¼¥«¥¤¥ÖÆâ¤Ë¤¢¤ë¥Õ¥¡¥¤¥ë¤è¤ê¿·¤·¤¤¥Õ¥¡¥¤¥ë¤Î¤ß¤òÄɲÃ" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "¥¢¡¼¥«¥¤¥Ö¤Ë tar ¥Õ¥¡¥¤¥ë¤òÄɲÃ" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "¥¢¡¼¥«¥¤¥Ö¤«¤éºï½ü (¼§µ¤¥Æ¡¼¥×¾å¤Ç¤Ï¥À¥á!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "¥¢¡¼¥«¥¤¥Ö¤Î¥Ü¥ê¥å¡¼¥à¥é¥Ù¥ë¤ò¥Æ¥¹¥È¤·¤Æ½ªÎ»" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Áàºî¥ª¥×¥·¥ç¥ó¤ËÂФ¹¤ëÉղõ¡Ç½:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "¤Þ¤Ð¤é¤Ë¸ºß¤¹¤ë¥Õ¥¡¥¤¥ë¤ò¸ú²ÌŪ¤Ë½èÍý" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAJOR[.MINOR]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "¤Þ¤Ð¤é (sparse) ·Á¼°¤Î¥Ð¡¼¥¸¥ç¥ó¤òÀßÄê (--sparse ¤Î°ÕÌ£¤ò´Þ¤à)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "¸Å¤¤ GNU ·Á¼°¤Î¥¤¥ó¥¯¥ê¥á¥ó¥¿¥ë¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò½èÍý" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "¿·¤·¤¤ GNU ·Á¼°¤Î¥¤¥ó¥¯¥ê¥á¥ó¥¿¥ë¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò½èÍý" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "ºî¤é¤ì¤¿ listed-incremental ¥¢¡¼¥«¥¤¥Ö¤ËÂФ¹¤ë¥À¥ó¥×¥ì¥Ù¥ë" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "Æɤ߹þ¤á¤Ê¤¤¥Õ¥¡¥¤¥ë¾å¤ËÈó¥¼¥í¤Î¾õÂ֤Ǹºß¤·¤Þ¤»¤ó" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1472,119 +1481,119 @@ msgstr "" "¥Õ¥¡¥¤¥ë°ìÍ÷¤¬¥³¥Þ¥ó¥É¥é¥¤¥ó¤« -T ¥ª¥×¥·¥ç¥ó·Ðͳ¤Î¤É¤Á¤é¤«¤Ç»ØÄꤵ¤ì¤¿¾ì¹ç¤Î" "¤ßÍ­¸ú. NUMBER ¤Ïɸ½à¤Ç 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "¥¢¡¼¥«¥¤¥Ö¤Ï¸¡º÷²Äǽ" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "¥¢¡¼¥«¥¤¥Ö¤Ï¸¡º÷²Äǽ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "¥¤¥ó¥¯¥ê¥á¥ó¥¿¥ë¥¢¡¼¥«¥¤¥ÖºîÀ®»þ¤Ë¥Ç¥Ð¥¤¥¹ÈÖ¹æ¤ò¥Á¥§¥Ã¥¯¤·¤Ê¤¤" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "¥¤¥ó¥¯¥ê¥á¥ó¥¿¥ë¥¢¡¼¥«¥¤¥ÖºîÀ®»þ¤Ë¥Ç¥Ð¥¤¥¹ÈÖ¹æ¤ò¥Á¥§¥Ã¥¯¤¹¤ë (ɸ½à)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "À©¸æ¤ò¾å½ñ¤­:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "¥¢¡¼¥«¥¤¥Ö¤ò½ñ¤­½Ð¤·¤¿¸å¤Ë¸¡¾Ú" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "¥Õ¥¡¥¤¥ë¤ò¥¢¡¼¥«¥¤¥Ö¤Ë²Ã¤¨¤¿¸å¤Çºï½ü" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "¼è¤ê½Ð¤¹ºÝ¤Ë´û¸¤Î¥Õ¥¡¥¤¥ë¤òÃÖ¤­´¹¤¨¤Ê¤¤" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "¥¢¡¼¥«¥¤¥Ö¥³¥Ô¡¼¤è¤ê¿·¤·¤¤´û¸¥Õ¥¡¥¤¥ë¤òÃÖ¤­´¹¤¨¤Ê¤¤" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "¼è¤ê½Ð¤¹ºÝ¤Ë´û¸¥Õ¥¡¥¤¥ë¤ò¾å½ñ¤­" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "³Æ¡¹¤Î¥Õ¥¡¥¤¥ë¤ò¼è¤ê½Ð¤·¤Æ¾å½ñ¤­¤¹¤ëÁ°¤Ëºï½ü" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤ò¼è¤ê½Ð¤¹Á°¤Ë³¬Áؤò¶õ¤Ë" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "´û¸¥Ç¥£¥ì¥¯¥È¥ê¤Î¥á¥¿¥Ç¡¼¥¿¤òÊݸ" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "¼è¤ê½Ð¤¹ºÝ¤Ë´û¸¥Ç¥£¥ì¥¯¥È¥ê¤Î¥á¥¿¥Ç¡¼¥¿¤ò¾å½ñ¤­ (ɸ½à)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "½ÐÎÏ¥¹¥È¥ê¡¼¥à¤òÁªÂò" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "¥Õ¥¡¥¤¥ë¤ò¼è¤ê½Ð¤·¤Æɸ½à½ÐÎϤ˽ÐÎÏ" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "COMMAND" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "¥Õ¥¡¥¤¥ë¤ò¼è¤ê½Ð¤·¤ÆÊÌ¤Î¥×¥í¥°¥é¥à¤Ë½ÐÎÏ" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "»Ò¥×¥í¥»¥¹¤Î½ªÎ»¥³¡¼¥É¤ò̵»ë" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "»Ò¥×¥í¥»¥¹¤ÎÈó¥¼¥í½ªÎ»¥³¡¼¥É¤ò¥¨¥é¡¼¤È¤·¤Æ½èÍý" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "¥Õ¥¡¥¤¥ë°À­¤Î½èÍý" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "²Ã¤¨¤¿¥Õ¥¡¥¤¥ë¤Î½êÍ­¼Ô¤ò NAME ¤ËÊѹ¹" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "²Ã¤¨¤¿¥Õ¥¡¥¤¥ë¤Î¥°¥ë¡¼¥×¤ò NAME ¤ËÊѹ¹" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATE-OR-FILE" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "DATE-OR-FILE ¤«¤éÄɲåե¡¥¤¥ë¤Î mtime ¤òÀßÄê" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "CHANGES" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "²Ã¤¨¤¿¥Õ¥¡¥¤¥ë¤Î (¥·¥ó¥Ü¥ê¥Ã¥¯) ¥â¡¼¥É¤ò CHANGES ¤ËÊѹ¹" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METHOD" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1593,11 +1602,11 @@ msgstr "" "ºÇ½ª¥¢¥¯¥»¥¹»þ¹ï¤ò, Æɤ߹þ¤ß¸å¤ËÉü¸µ¤¹¤ë (METHOD='replace'; ɸ½à) ¤«ºÇ½é¤ËÀß" "Äꤷ¤Ê¤¤ (METHOD='system') ¤«¤Î¤É¤Á¤é¤«¤ÎÊýË¡¤Ç¥À¥ó¥×¥Õ¥¡¥¤¥ë¾å¤Ç°Ý»ý" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "¥Õ¥¡¥¤¥ë¤Î¹¹¿·»þ¹ï¤ò¼è¤ê½Ð¤µ¤Ê¤¤" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" @@ -1605,173 +1614,173 @@ msgstr "" "¥¢¡¼¥«¥¤¥ÖÆâ¤ÈƱ¤¸½êÍ­¼Ô¤Î¤Þ¤Þ¤Ç¥Õ¥¡¥¤¥ë¤ò¼è¤ê½Ð¤·¤Æ¤ß¤ë (¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤Ç¤Ï" "¥Ç¥Õ¥©¥ë¥È)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "¤¢¤Ê¤¿¼«¿È¤Î¥Õ¥¡¥¤¥ë¤È¤·¤Æ¼è¤ê½Ð¤¹ (°ìÈ̥桼¥¶¤Ç¤Ï¥Ç¥Õ¥©¥ë¥È)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "¥æ¡¼¥¶Ì¾/¥°¥ë¡¼¥×̾¤È¤·¤Æ¾ï¤Ë¿ô»ú¤ò»È¤¦" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "¥Õ¥¡¥¤¥ë°À­¤Ë¤Ä¤¤¤Æ¤Î¾ðÊó¤òÃê½Ð (superuser ¤Ç¤Ïɸ½à)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" "¥¢¡¼¥«¥¤¥Ö¤«¤é°À­¤òÃê½Ð¤¹¤ëºÝ¤Ë¥æ¡¼¥¶¤Î umask ¤òŬÍÑ (°ìÈ̥桼¥¶¤Ç¤Ïɸ½à)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "¥¢¡¼¥«¥¤¥Ö¤È¥Þ¥Ã¥Á¤µ¤»¤ë¤¿¤á¤Ë¼è¤ê½Ð¤¹Ì¾Á°¤òʤÓÂؤ¨" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "-p ¤È -s ¤ÎξÊý¤ò»ØÄꤷ¤¿¤â¤Î¤ÈƱ¤¸" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" "Ãê½Ð¤¬½ªÎ»¤¹¤ë¤Þ¤ÇÃê½Ð¤µ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê¤ÎºÇ½ª¹¹¿·»þ¹ï¤È°À­¤ÎÀßÄê¤òÃ٤餻¤ë" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "--delay-directory-restore ¥ª¥×¥·¥ç¥ó¤Î¸ú²Ì¤ò¼è¤ê¾Ã¤·" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "¥Ç¥Ð¥¤¥¹¤ÎÁªÂò¤ÈÀÚÂØ:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIVE" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤Þ¤¿¤Ï¥Ç¥Ð¥¤¥¹ ARCHIVE ¤ò»ÈÍÑ" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤Ï¥³¥í¥ó¤ò´Þ¤ó¤Ç¤¤¤Æ¤â¥í¡¼¥«¥ë" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "»ØÄꤵ¤ì¤¿ rmt COMMAND ¤ò rmt ¤ÎÂå¤ï¤ê¤Ë»ÈÍÑ" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "rsh ¤ÎÂå¤ï¤ê¤Ë COMMAND ¤ò»ÈÍÑ" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "¥É¥é¥¤¥Ö¤ÈÌ©ÅÙ¤ò»ØÄê" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "¥Þ¥ë¥Á¥Ü¥ê¥å¡¼¥à¤Î¥¢¡¼¥«¥¤¥Ö¤òºîÀ®/°ìÍ÷/Ãê½Ð" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "NUMBER x 1024 ¥Ð¥¤¥È¤ò½ñ¤­½Ð¤·¤¿¸å¤Ç¥Æ¡¼¥×¤òÊѹ¹" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "³Æ¡¹¤Î¥Æ¡¼¥×¤ÎºÇ¸å¤Ç¥¹¥¯¥ê¥×¥È¤ò¼Â¹Ô (-M ɬ¿Ü)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "FILE Ãæ¤Î¥Ü¥ê¥å¡¼¥àÈÖ¹æ¤ò»ÈÍÑ/¹¹¿·" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "¥Ç¥Ð¥¤¥¹¥Ö¥í¥Ã¥­¥ó¥°:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOCKS" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "¥ì¥³¡¼¥É¤¢¤¿¤ê BLOCKS x 512 ¥Ð¥¤¥È" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "¥ì¥³¡¼¥É¤¢¤¿¤ê NUMBER ¥Ð¥¤¥È. 512 ¤ÎÇÜ¿ô" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "¥¢¡¼¥«¥¤¥ÖÃæ¤Î¥¼¥í¥Ö¥í¥Ã¥¯ (¤Ä¤Þ¤ê EOF) ¤ò̵»ë" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "Æɤ߽Ф·¤¿¤è¤¦¤ËºÆ¥Ö¥í¥Ã¥¯ (4.2BSD ¥Ñ¥¤¥×ÍÑ)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "¥¢¡¼¥«¥¤¥Ö·Á¼°¤ÎÁªÂò" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMAT" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "»ØÄꤵ¤ì¤¿·Á¼°¤Î¥¢¡¼¥«¥¤¥Ö¤òºîÀ®" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMAT ¤Ï¼¡¤Î¤¦¤Á¤Î 1¤Ä:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "¸Å¤¤ V7 tar ·Á¼°" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "GNU tar 1.12 °ÊÁ°¤Î·Á¼°" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU tar 1.13.x ·Á¼°" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) ·Á¼°" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) ·Á¼°" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "pax ¤ÈƱ¤¸" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "--format=v7 ¤ÈƱ¤¸" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "--format=posix ¤ÈƱ¤¸" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "keyword[[:]=value][,keyword[[:]=value]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "pax ¥­¡¼¥ï¡¼¥É¤òÀ©¸æ" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEXT" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1779,167 +1788,167 @@ msgstr "" "¥Ü¥ê¥å¡¼¥à̾ TEXT ¤Î¥¢¡¼¥«¥¤¥Ö¤òºîÀ®. °ìÍ÷/Ãê½Ð»þ¤Ë TEXT ¤ò¥Ü¥ê¥å¡¼¥à̾¤ËÂФ¹" "¤ëÃê½Ð¥Ñ¥¿¡¼¥ó¤Ë»ÈÍÑ" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "°µ½Ì¥ª¥×¥·¥ç¥ó:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "°µ½Ì¥×¥í¥°¥é¥à¤ò·è¤á¤ë¤Î¤Ë¥¢¡¼¥«¥¤¥ÖÀÜÈø¼­¤ò»ÈÍѤ¹¤ë" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "°µ½Ì¥×¥í¥°¥é¥à¤ò·è¤á¤ë¤Î¤Ë¥¢¡¼¥«¥¤¥ÖÀÜÈø¼­¤ò»ÈÍѤ·¤Ê¤¤" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "PROG ·Ðͳ¤Ç¥Õ¥£¥ë¥¿ (-d ¤ò¼õ¤±ÉÕ¤±¤ëɬÍפ¢¤ê)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "¥í¡¼¥«¥ë¥Õ¥¡¥¤¥ëÁªÂò:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "»ØÄꤵ¤ì¤¿ FILE ¤ò¥¢¡¼¥«¥¤¥Ö¤ËÄɲà (¥À¥Ã¥·¥å ' ¤Ç»Ï¤Þ¤ë¥Õ¥¡¥¤¥ë̾¤Î¾ì¹ç¤ËÊØ" "Íø)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "DIR" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "¥Ç¥£¥ì¥¯¥È¥ê DIR ¤Ø°ÜÆ°" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "Ãê½Ð¤Þ¤¿¤ÏºîÀ®¤¹¤ë̾Á°¤ò¥Õ¥¡¥¤¥ë FILE ¤«¤é¼èÆÀ" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T ¤¬ null ¤Ç½ª¤ï¤ë̾Á°¤òÆɤ߹þ¤ß, -C ¤ò̵¸ú²½" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "Á°¤Î --null ¥ª¥×¥·¥ç¥ó¤Î¸ú²Ì¤ò̵¸ú²½" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "-T ¤ÇÆɤ߹þ¤ó¤À¥Õ¥¡¥¤¥ë̾¤ò°úÍѽªÎ»¤¹¤ë (ɸ½à)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "-T ¤ÇÆɤ߹þ¤ó¤¿¥Õ¥¡¥¤¥ë̾¤ò°úÍѽªÎ»¤·¤Ê¤¤" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "PATTERN" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "PATTERN ¤Ë°ìÃפ¹¤ë¥Õ¥¡¥¤¥ë¤ò½ü³°" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "FILE ¤ËÎóµó¤µ¤ì¤¿¥Ñ¥¿¡¼¥ó¤ò½ü³°" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "¥¿¥°¥Õ¥¡¥¤¥ë¼«¿È¤ò½ü¤¯ CACHEDIR.TAG ¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ÎÆâÍƤò½ü³°" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "CACHEDIR.TAG ¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê°Ê²¼¤ÎÁ´¤Æ¤ò½ü³°" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "CACHEDIR.TAG ¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ò½ü³°" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "FILE ¼«¿È¤ò½ü¤¯ FILE ¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ÎÆâÍƤò½ü³°" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "FILE ¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê°Ê²¼¤ÎÁ´¤Æ¤ò½ü³°" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "FILE ¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ò½ü³°" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "¥Ð¡¼¥¸¥ç¥ó´ÉÍý¥·¥¹¥Æ¥à¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò½ü³°" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò½ü³°¤·¤Æ¥Õ¥¡¥¤¥ë¤ò¥í¥Ã¥¯" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤ò¼«Æ°Åª¤Ë²¼¤Ã¤Æ¤¤¤«¤Ê¤¤" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "¥¢¡¼¥«¥¤¥ÖºîÀ®»þ¤Ë¥í¡¼¥«¥ë¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë¸ÂÄê" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "¥Ç¥£¥ì¥¯¥È¥ê¤ò½ç·«¤ê¤Ë²¼¤Ã¤Æ¤¤¤¯ (default)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "¥Õ¥¡¥¤¥ë̾¤«¤éÀèƬ¤Î `/' ¤ò¼è¤ê½ü¤«¤Ê¤¤" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤ò¤¿¤É¤ë; ¤½¤ì¤é¤¬»Ø¤¹¥Õ¥¡¥¤¥ë¤ò¥¢¡¼¥«¥¤¥Ö¤·¤Æ¥À¥ó¥×" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "¥Ï¡¼¥É¥ê¥ó¥¯¤ò¤¿¤É¤ë; ¤½¤ì¤é¤¬»Ø¤¹¥Õ¥¡¥¤¥ë¤ò¥¢¡¼¥«¥¤¥Ö¤·¤Æ¥À¥ó¥×" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "MEMBER-NAME" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "¥¢¡¼¥«¥¤¥ÖÃæ¤Î¥á¥ó¥Ð¡¼ MEMBER-NAME ¤Ç³«»Ï" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "DATE-OR-FILE ¤è¤ë¿·¤·¤¤¥Õ¥¡¥¤¥ë¤Î¤ß¤ò³ÊǼ" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATE" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "¥Ç¡¼¥¿¤¬Êѹ¹¤µ¤ì¤¿»þ¤À¤±ÆüÉÕ¤ª¤è¤Ó»þ¹ï¤òÈæ³Ó" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "CONTROL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "ºï½üÁ°¤Ë¥Ð¡¼¥¸¥ç¥ó´ÉÍý¤ò CONTROL ¤Ë¤·¤Æ¥Ð¥Ã¥¯¥¢¥Ã¥×" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "STRING" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1947,95 +1956,95 @@ msgstr "" "ºï½üÁ°¤Ë¥Ð¥Ã¥¯¥¢¥Ã¥×, Ä̾ï¤ÎÀÜÈø¼­ (´Ä¶­ÊÑ¿ô SIMPLE_BACKUP_SUFFIX ¤¬Ì¤ÀßÄê¤Ê" "¤é '~') ¤ò¾å½ñ¤­" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "¥Õ¥¡¥¤¥ë̾ÊÑ´¹:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "Ãê½Ð»þ¤Ë¥Õ¥¡¥¤¥ë̾¤«¤éÀèƬ¤Î NUMER ¸Ä¤Î¥³¥ó¥Ý¥Í¥ó¥È¤ò½üµî" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "EXPRESSION" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "¥Õ¥¡¥¤¥ë̾¤ÎÊÑ´¹¤Ë sed ¤ÎÃÖ´¹ EXPRESSION ¤ò»ÈÍÑ" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "¥Õ¥¡¥¤¥ë̾°ìÃ×¥ª¥×¥·¥ç¥ó (½ü³°/Êñ´Þ¤Îξ¥Ñ¥¿¡¼¥ó¤ËºîÍÑ):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "Âçʸ»ú¾®Ê¸»ú¤ò̵»ë" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "¥Õ¥¡¥¤¥ë̾¤ÎÀèƬ¤È¥Ñ¥¿¡¼¥ó¤¬°ìÃ×" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "Ǥ°Õ¤Î `/' °Ê¹ß¤Ë¥Ñ¥¿¡¼¥ó¤¬°ìÃ× (ɸ½à¤Ç½ü³°)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "Âçʸ»ú¾®Ê¸»ú¤ò¹Íθ¤·¤Æ°ìÃ× (ɸ½à)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "¥ï¥¤¥ë¥É¥«¡¼¥É¤ò»ÈÍÑ (ɸ½à¤Ç½ü³°)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "Ãà¸ìŪʸ»úÎó°ìÃ×" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "¥ï¥¤¥ë¥É¥«¡¼¥É¤¬ `/' ¤Ë°ìÃפ·¤Ê¤¤" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "¥ï¥¤¥ë¥É¥«¡¼¥É¤¬ `/' ¤Ë°ìÃ× (ɸ½à¤Ç½ü³°)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "¾ðÊó:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "½èÍý¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î°ìÍ÷¤ò¾éŤËɽ¼¨" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "KEYWORD" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "·Ù²ü´ÉÀ©" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "NUMBER (ɸ½à 10) ÈÖÌܤε­Ï¿¤´¤È¤Ë¿ÊĽ¥á¥Ã¥»¡¼¥¸¤òɽ¼¨" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "ACTION" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "³Æ¸¡Ìä¤Ç ACTION ¤ò¼Â¹Ô" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "Á´¤Æ¤Î¥ê¥ó¥¯¤¬¥À¥ó¥×¤µ¤ì¤Ê¤¤¾ì¹ç¥á¥Ã¥»¡¼¥¸¤òɽ¼¨" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SIGNAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2046,120 +2055,124 @@ msgstr "" "»þ¤ËÁí¥Ð¥¤¥È¿ô¤òɽ¼¨. µö²Ä¤µ¤ì¤¿ SIGNAL ¤Ï: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 " "¤ª¤è¤Ó SIGUSR2. SIG ÀÜƬ¼­¤¬¤Ê¤¤Ì¾Á°¤Ç¤â²Ä" -#: src/tar.c:755 -msgid "print file modification dates in UTC" -msgstr "¥Õ¥¡¥¤¥ë¤Î¹¹¿·ÆüÉÕ¤ò UTC ¤Çɽ¼¨" +#: src/tar.c:756 +msgid "print file modification times in UTC" +msgstr "¥Õ¥¡¥¤¥ë¤Î¹¹¿·»þ¹ï¤ò UTC ¤Çɽ¼¨" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "¥Õ¥¡¥¤¥ë¤Î»þ¹ï¾ðÊó¤ò´°Á´·Á¼°¤Çɽ¼¨" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "¾éĹ½ÐÎϤò FILE ¤ËÁ÷¿®" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "¥¢¡¼¥«¥¤¥ÖÆâ¤Î¥Ö¥í¥Ã¥¯¿ô¤ò³Æ¡¹¥á¥Ã¥»¡¼¥¸ÉÕ¤­¤Çɽ¼¨" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "Á´¤Æ¤ÎÆ°ºî¤ò³Îǧ" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "tar ¤Îµ¬ÄêÃͤòɽ¼¨" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "°ìÍ÷¤äÃê½Ð»þ¤Ë, ¸¡º÷´ð½à¤Ë°ìÃפ·¤Ê¤¤¥Ç¥£¥ì¥¯¥È¥ê¤ò³Æ¡¹°ìÍ÷ɽ¼¨" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "ÊÖ´Ô¸å¤Ë¥Õ¥¡¥¤¥ë̾¤Þ¤¿¤Ï¥¢¡¼¥«¥¤¥Ö̾¤òɽ¼¨" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STYLE" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "̾Á°°úÍÑ·Á¼°¤òÀßÄê. Í­¸ú¤Ê STYLE Ãͤϲ¼µ­»²¾È." -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "¹¹¤Ë STRING ¤«¤éʸ»ú¤ò°úÍÑ" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "STRING ¤«¤é¤Îʸ»ú°úÍѤò̵¸ú¤Ë" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "¸ß´¹¥ª¥×¥·¥ç¥ó:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "ºîÀ®»þ¤Ï --old-archive ¤ÈƱ¤¸. Ãê½Ð»þ¤Ï --no-same-owner ¤ÈƱ¤¸" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "¤½¤Î¾¥ª¥×¥·¥ç¥ó:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "ÀøºßŪ¤Ë³²¤Ë¤Ê¤ë¥ª¥×¥·¥ç¥ó¤Î»ÈÍѤò̵¸ú¤Ë" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "" "`-Acdtrux' ¤Þ¤¿¤Ï `--test-label' ¥ª¥×¥·¥ç¥ó¤Î¤¦¤Á 2¤Ä°Ê¾å»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ" "¤»¤ó" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "°µ½Ì¥ª¥×¥·¥ç¥ó¤¬¿©¤¤°ã¤Ã¤Æ¤¤¤Þ¤¹" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "̤ÃΤΥ·¥°¥Ê¥ë̾: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "ÆüÉÕ¥µ¥ó¥×¥ë¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "̤ÃΤÎÆüÉÕ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î %2$s Âå¤ï¤ê¤Ë %1$s ¤È¤·¤Þ¤¹" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "¥ª¥×¥·¥ç¥ó %s: `%s' ¤ò %s ¤È¤·¤Æ°·¤¦" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: ¥Õ¥¡¥¤¥ë°ìÍ÷¤Ï´û¤ËÆɤ߹þ¤ßºÑ¤ß" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: Æɤ߹þ¤Þ¤ì¤¿¥Õ¥¡¥¤¥ë̾¤Ë¥Ì¥ëʸ»ú" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "%s ·Ðͳ¤Ç¥¢¡¼¥«¥¤¥Ö¤ò¥Õ¥£¥ë¥¿" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "--quoting-style ¥ª¥×¥·¥ç¥ó¤ËÂФ¹¤ëÍ­¸ú¤Ê°ú¿ô:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2167,51 +2180,51 @@ msgstr "" "\n" "¡Ö¤³¤Î¡×tar ¤Îµ¬ÄêÃÍ:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "̵¸ú¤Ê¥Ö¥í¥Ã¥­¥ó¥°°ø»Ò" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "̵¸ú¤Ê¥Æ¡¼¥×¤ÎŤµ" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "̵¸ú¤ÊÁýʬ¥ì¥Ù¥ëÃÍ" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "1¤Ä°Ê¾å¤ÎÉßµï¤È¤Ê¤ëÆüÉÕ" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "̵¸ú¤Ê¤Þ¤Ð¤é (sparse) ¥Ð¡¼¥¸¥ç¥óÃÍ" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' ¤Ï¤³¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "--checkpoint ÃͤÏÀ°¿ô¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "̵¸ú¤Ê¥°¥ë¡¼¥×" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤¿¥â¡¼¥É¤Ï̵¸ú¤Ç¤¹" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "̵¸ú¤Ê¿ô" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "̵¸ú¤Ê½êÍ­¼Ô" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2219,117 +2232,117 @@ msgstr "" "--preserve ¥ª¥×¥·¥ç¥ó¤ÏÇÑ»ßͽÄê¤Ê¤Î¤Ç, Âå¤ï¤ê¤Ë --preserve-permissions --" "preserve-order ¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "̵¸ú¤Êµ­Ï¿¥µ¥¤¥º" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "µ­Ï¿¥µ¥¤¥º¤Ï %d ¤ÎÇÜ¿ô¤Ç¤Ê¤±¤ì¤Ð¤¤¤±¤Þ¤»¤ó" -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "̵¸ú¤Ê¥¨¥ì¥á¥ó¥È¿ô" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "--to-command ¥ª¥×¥·¥ç¥ó¤Ï 1¤Ä¤À¤±µö²Ä" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "ÉÔÀµ·Á¼°¤ÎÌ©ÅÙ°ú¿ô: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "̤ÃΤÎÌ©ÅÙ: `%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "¥ª¥×¥·¥ç¥ó `-[0-7][lmh]' ¤Ï¡Ö¤³¤Î¡×tar ¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[¥Õ¥¡¥¤¥ë]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "¸Å¤¤¥ª¥×¥·¥ç¥ó `%c' ¤Ï°ú¿ô¤òɬÍפȤ·¤Þ¤¹" -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence ¤Ï¥Õ¥¡¥¤¥ë°ìÍ÷¤¬¤Ê¤±¤ì¤Ð̵°ÕÌ£" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence ¤ÏÍ׵ᤵ¤ì¤¿Áàºî¥â¡¼¥É¤Ç¤Ï»È¤¨¤Þ¤»¤ó" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "ʬ³ä·¿¤Î¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤Ë¤Ï `-M' ¥ª¥×¥·¥ç¥ó¤¬É¬ÍפǤ¹" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "--listed-incremental ¤È --newer ¤È¤ò·ë¹ç¤Ç¤­¤Þ¤»¤ó" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "--listed-incremental ¤Ê¤·¤Î --level ¤Ï̵°ÕÌ£¤Ç¤¹" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: ¥Ü¥ê¥å¡¼¥à¥é¥Ù¥ë¤¬Ä¹¤¹¤®¤Þ¤¹ (%lu ¥Ð¥¤¥ÈÀ©¸Â)" msgstr[1] "%s: ¥Ü¥ê¥å¡¼¥à¥é¥Ù¥ë¤¬Ä¹¤¹¤®¤Þ¤¹ (%lu ¥Ð¥¤¥ÈÀ©¸Â)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "¥Þ¥ë¥Á¥Ü¥ê¥å¡¼¥à¥¢¡¼¥«¥¤¥Ö¤ò³Îǧ¤Ç¤­¤Þ¤»¤ó" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "°µ½Ì¤µ¤ì¤¿¥¢¡¼¥«¥¤¥Ö¤Ï³Îǧ¤Ç¤­¤Þ¤»¤ó" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "¥Þ¥ë¥Á¥Ü¥ê¥å¡¼¥à¤Ë°µ½Ì¤µ¤ì¤¿¥¢¡¼¥«¥¤¥Ö¤Ï»È¤¨¤Þ¤»¤ó" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "°µ½Ì¤µ¤ì¤¿¥¢¡¼¥«¥¤¥Ö¤ÏÏ¢·ë¤Ç¤­¤Þ¤»¤ó" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option ¤Ï POSIX ¥¢¡¼¥«¥¤¥Ö¤Ç¤Î¤ß»È¤¨¤Þ¤¹" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "¥Ü¥ê¥å¡¼¥àĹ¤Ï¥ì¥³¡¼¥É¥µ¥¤¥º¤è¤ê¾®¤µ¤¯¤Æ¤Ï¤¤¤±¤Þ¤»¤ó" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order ¤Ï --listed-incremental ¤ÈξΩ¤·¤Þ¤»¤ó" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "¶õ¤Î¥¢¡¼¥«¥¤¥ÖºîÀ®¤Ï¤´ÍƼϴꤤ¤Þ¤¹" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "¥ª¥×¥·¥ç¥ó `-Aru' ¤È `-f -' ¤È¤ÏÁêÍƤì¤Þ¤»¤ó" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "" "`-Acdtrux' ¤Þ¤¿¤Ï `--test-label' ¥ª¥×¥·¥ç¥ó¤Î¤¦¤Á¡¢¤¤¤º¤ì¤« 1¤Ä¤ò»ØÄꤷ¤Ê¤±¤ì" "¤Ð¤Ê¤ê¤Þ¤»¤ó" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Á°¤Î¥¨¥é¡¼¤Ë¤è¤ê¼ºÇÔ¥¹¥Æ¡¼¥¿¥¹¤Ç½ªÎ»¤·¤Þ¤¹" @@ -2341,83 +2354,83 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: ¥Õ¥¡¥¤¥ë¤¬ %s ¥Ð¥¤¥È¾®¤µ¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹" msgstr[1] "%s: ¥Õ¥¡¥¤¥ë¤¬ %s ¥Ð¥¤¥È¾®¤µ¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "¥­¡¼¥ï¡¼¥É %s ¤Ï̤ÃΤޤ¿¤Ï̤¼ÂÁõ" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬µö²Ä¤µ¤ì¤¿Èϰϳ°¤Ç¤¹" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "¥Ñ¥¿¡¼¥ó %s ¤Ï»È¤¨¤Þ¤»¤ó" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "¥­¡¼¥ï¡¼¥É %s ¤Ïʤ¤»¤Þ¤»¤ó" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "ÉÔÀµ·Á¼°¤Î³ÈÄ¥¥Ø¥Ã¥À: Ťµ¤Î»ØÄ꤬¤¢¤ê¤Þ¤»¤ó" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "³ÈÄ¥¥Ø¥Ã¥ÀĹ¤Ïµö²Ä¤µ¤ì¤¿Èϰϳ°¤Ç¤¹" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "³ÈÄ¥¥Ø¥Ã¥ÀĹ %*s ¤ÏÈϰϳ°¤Ç¤¹" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "ÉÔÀµ·Á¼°¤Î³ÈÄ¥¥Ø¥Ã¥À: Ťµ¤Î¸å¤Ë¥Ö¥é¥ó¥¯¤¬¤¢¤ê¤Þ¤»¤ó" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "ÉÔÀµ·Á¼°¤Î³ÈÄ¥¥Ø¥Ã¥À: = (¥¤¥³¡¼¥ë) µ­¹æ¤¬¤¢¤ê¤Þ¤»¤ó" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "ÉÔÀµ·Á¼°¤Î³ÈÄ¥¥Ø¥Ã¥À: ²þ¹Ô¤¬¤¢¤ê¤Þ¤»¤ó" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "̤ÃΤγÈÄ¥¥Ø¥Ã¥À¥­¡¼¥ï¡¼¥É `%s' ¤ò̵»ë" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "À¸À®¤µ¤ì¤¿¥­¡¼¥ï¡¼¥É¤ÈÃͤΥڥ¢¤¬Ä¹²á¤®¤Þ¤¹ (¥­¡¼¥ï¡¼¥É=%s, Ťµ=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "³ÈÄ¥¥Ø¥Ã¥À %s=%s ¤Ï %s..%s ¤ÎÈÏ°ÏÆâ¤Ë¤¢¤ê¤Þ¤»¤ó" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "ÉÔÀµ·Á¼°¤Î³ÈÄ¥¥Ø¥Ã¥À: %s=%s ¤ÏÉÔÀµ" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "ÉÔÀµ·Á¼°¤Î³ÈÄ¥¥Ø¥Ã¥À: %s=%s ¤Ï;ʬ" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "ÉÔÀµ·Á¼°¤Î³ÈÄ¥¥Ø¥Ã¥À: %s ¤Ï̵¸ú: ͽ´ü¤»¤Ì¶èÀÚ¤êʸ»ú %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "ÉÔÀµ·Á¼°¤Î³ÈÄ¥¥Ø¥Ã¥À: %s ¤Ï̵¸ú: ´ñ¿ôÃÍ" @@ -2458,7 +2471,7 @@ msgstr " msgid "Read checkpoint %u" msgstr "¥Á¥§¥Ã¥¯¥Ý¥¤¥ó¥È %u ¤òÆɤ߹þ¤ß¤Þ¤¹" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2466,69 +2479,69 @@ msgstr "" "genfile ¤Ï GNU paxutils ¥Æ¥¹¥È¥»¥Ã¥È¤ËÂФ·¤Æ¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤òÁàºî¤·¤Þ¤¹.\n" "¥ª¥×¥·¥ç¥ó¤Ï:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "¥Õ¥¡¥¤¥ëºîÀ®¥ª¥×¥·¥ç¥ó:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "SIZE" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "»ØÄꤵ¤ì¤¿ SIZE ¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "ɸ½à½ÐÎϤÎÂå¤ï¤ê¤Ë¥Õ¥¡¥¤¥ë NAME ¤Ë½ÐÎÏ" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "FILE ¤«¤é¥Õ¥¡¥¤¥ë̾¤òÆɤ߹þ¤ß" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T ¤Ï null ¤Ç½ª¤ï¤ë̾Á°¤òÆɤ߹þ¤ß¤Þ¤¹" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "»ØÄꤵ¤ì¤¿ PATTERN ¤Ç¥Õ¥¡¥¤¥ë¤òËä¤á¤Þ¤¹. PATTERN ¤Ï 'default' ¤Þ¤¿¤Ï 'zeros'" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "¤Þ¤Ð¤é¤Ê (sparse) ¥Õ¥¡¥¤¥ë¤Î¥Ö¥í¥Ã¥¯¥µ¥¤¥º" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "¤Þ¤Ð¤é¤Ê (sparse) ¥Õ¥¡¥¤¥ë¤òÀ¸À®. »Ä¤ê¤Î¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç¥Õ¥¡¥¤¥ë¥Þ¥Ã¥×¤ò»ØÄê." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "¥ª¥Õ¥»¥Ã¥È" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "¥Ç¡¼¥¿¤ò½ñ¤­½Ð¤¹Á°¤Ë»ØÄꤵ¤ì¤¿¥ª¥Õ¥»¥Ã¥È¤Þ¤Ç¸¡º÷" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "¥Õ¥¡¥¤¥ëÅý·×¥ª¥×¥·¥ç¥ó:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "³Æ¡¹¤Î»ØÄê¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ struct stat ¤ÎÆâÍƤòɽ¼¨. ɸ½à FORMAT ¤Ï: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Ʊ»þ¼Â¹Ô¥ª¥×¥·¥ç¥ó:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "OPTION" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" @@ -2536,19 +2549,19 @@ msgstr "" "ARGS ¤ò¼Â¹Ô. --checkpoint ¤ª¤è¤Ó --cut, --append, --touch, --unlink ¤ÎÃæ¤Î 1" "¤Ä¤È¤È¤â¤Ë»ÈÍѤ¹¤ë¤È¤è¤¤" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "¥Á¥§¥Ã¥¯¥Ý¥¤¥ó¥È NUMBER Åþã»þ¤Ë»ØÄꤵ¤ì¤¿¥¢¥¯¥·¥ç¥ó (²¼µ­»²¾È) ¤ò¼Â¹Ô" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "¼¡¤Î --touch ¥ª¥×¥·¥ç¥ó¤ÇÆüÉÕ¤òÀßÄê" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "¼Â¹Ô¤µ¤ì¤¿¥Á¥§¥Ã¥¯¥Ý¥¤¥ó¥È¤È COMMAND ¤Î½ªÎ»¥¹¥Æ¡¼¥¿¥¹¤òɽ¼¨" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2556,7 +2569,7 @@ msgstr "" "Ʊ»þ¼Â¹Ô¥¢¥¯¥·¥ç¥ó. ¤³¤ì¤é¤Ï --checkpoint option ¤Ç»ØÄꤵ¤ì¤¿¥Á¥§¥Ã¥¯¥Ý¥¤¥ó¥È" "ÈÖ¹æ¤ËÅþ㤷¤¿¤È¤­¤Ë¼Â¹Ô¤µ¤ì¤ë." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2564,144 +2577,141 @@ msgstr "" "FILE ¤ò --length ¥ª¥×¥·¥ç¥ó (¤Þ¤¿¤Ï»ØÄ꤬¤Ê¤±¤ì¤Ð 0) ¤Ç»ØÄꤵ¤ì¤¿¥µ¥¤¥º¤ËÀÚ¤ê" "¼Î¤Æ" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "FILE ¤Ë SIZE ¥Ð¥¤¥ÈÄɵ­. SIZE ¤ÏÁ°¤Î --length ¥ª¥×¥·¥ç¥ó¤Ç»ØÄê." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "FILE ¤ÎºÇ½ª¥¢¥¯¥»¥¹»þ¹ï¤ÈºÇ½ª¹¹¿·»þ¹ï¤ò¹¹¿·" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "COMMAND ¤ò¼Â¹Ô" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "FILE ¤ò unlink" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "̵¸ú¤Ê¥µ¥¤¥º: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Èֹ椬µö²Ä¤µ¤ì¤¿Èϰϳ°: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Éé¤Î¥µ¥¤¥º: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) ¼ºÇÔ" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "Í׵ᤵ¤ì¤¿¥Õ¥¡¥¤¥ëĹ %lu, ¼ÂºÝ¤ÎÃÍ %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "ºîÀ®¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ï¥¹¥Ñ¡¼¥¹¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "`%s' ¤Î¶á¤¯¤Ç¿ô»ú¤ò¹½Ê¸Ê¬ÀÏ»þ¤Ë¥¨¥é¡¼" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "̤ÃΤÎÆüÉÕ·Á¼°" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGS...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "`%s' ¤ò³«¤±¤Þ¤»¤ó" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "Áܤ·½Ð¤»¤Þ¤»¤ó" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "¥Õ¥¡¥¤¥ë̾¤¬¥Ì¥ëʸ»ú¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "¤Þ¤Ð¤é¤Ê (sparse) ¥Õ¥¡¥¤¥ë¤òɸ½à½ÐÎϤ˽ñ¤­½Ð¤»¤Þ¤»¤ó. --file ¥ª¥×¥·¥ç¥ó¤ò»ÈÍÑ" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "ÉÔÀµ¤Ê¥Þ¥¹¥¯ (`%s' ¤Ë¶á¤¤)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "̤ÃΤΥե£¡¼¥ë¥É `%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "`%s' ¤Ë»þ¹ï¤òÀßÄê¤Ç¤­¤Þ¤»¤ó" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "`%s' ¤ò unlink ¤Ç¤­¤Þ¤»¤ó" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "¥³¥Þ¥ó¥É¤¬Àµ¾ï½ªÎ»\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "¥³¥Þ¥ó¥É¤¬¥¹¥Æ¡¼¥¿¥¹ %d ¤Ç¼ºÇÔ\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "¥³¥Þ¥ó¥É¤¬¥·¥°¥Ê¥ë %d ¤Ç½ªÎ»\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "¥³¥Þ¥ó¥É¤¬¥·¥°¥Ê¥ë %d ¤ÇÄä»ß\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "¥³¥Þ¥ó¥É¤¬¥³¥¢¤ò¥À¥ó¥×\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "¥³¥Þ¥ó¥É¤¬½ªÎ»\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat ¤Ë¤Ï¥Õ¥¡¥¤¥ë̾¤¬É¬Í×" -#~ msgid "Cannot resolve hostname %s" -#~ msgstr "¥Û¥¹¥È̾ %s ¤ò²ò·è¤Ç¤­¤Þ¤»¤ó" - -#~ msgid "suppress this warning." -#~ msgstr "¤³¤Î·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤." +#~ msgid "Cannot save working directory" +#~ msgstr "¥ï¡¼¥¯¥Ç¥£¥ì¥¯¥È¥ê¤òÊݸ¤Ç¤­¤Þ¤»¤ó" diff --git a/po/ko.gmo b/po/ko.gmo index 1e6a0e07ec92cbf79565ed7155578ac64f74dda9..6baffcf67a981b281a161aba5976fe93dd6a988c 100644 GIT binary patch delta 442 zcmXZYJ4*vW5Ww+?61~Lp3{elCaMAcUjBvUCg(M)DG--2UVPzLA1e3~E z2n5nuSf!AZHnH#n*a&F_{f`$o_O~;;GrN0t&V$o_iUj8ok#bCANu zLI1?U$PDTWj!-X9Mz+c=F5x}ufo+Up4|QK3m+=b?oHP>QB++rlTN75++szf6T)yb- b?|Avfd+f$M_OD7czjRS_E-Rh0csKe7o&+&c delta 429 zcmXZYze@sP7{KvIJTRFIjlhZ*%Gz0}rEh5z7CTNR8 z_z&0+xV8wcg5Y9H-zSCRKJW9~^E~hS-mCp+ci#j4RY0U>ibO=D9~L>qAzC=a9b8}< zO^S}tMg3k`$G4azzQ-hXF@+;M!5N-oEV_!zsPk%3@&6m2NorxN115Ne#^$Oa zk33T0r3bjd1FYjNK4A8hN+j~wKo{GX!Ee+-zo>sA zLZBX^-oQgWz%^1LP29r=)D7RzzyWIA5cly1L%0mB7r|aO*xIlhui!eiTfDsRa!&DO LY~J;%;Sb{vF)1x| diff --git a/po/ko.po b/po/ko.po index 84d7201..efbdf77 100644 --- a/po/ko.po +++ b/po/ko.po @@ -2,14 +2,16 @@ # Copyright (C) 1996 Free Software Foundation, Inc. # Bang Jun-Young , 1996-1997. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: GNU tar 1.12\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 1997-05-30 22:55+0900\n" "Last-Translator: Bang Jun-Young \n" "Language-Team: Korean \n" +"Language: ko\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=EUC-KR\n" "Content-Transfer-Encoding: 8-bit\n" @@ -87,7 +89,7 @@ msgstr " msgid "Report bugs to %s.\n" msgstr "" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "¾Ë ¼ö ¾ø´Â ½Ã½ºÅÛ ¿À·ù" @@ -99,8 +101,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -138,56 +140,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "¿À·¡µÈ ¿É¼Ç `%c'´Â Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù." -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "¿À·¡µÈ ¿É¼Ç `%c'´Â Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù." -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "¿À·¡µÈ ¿É¼Ç `%c'´Â Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù." -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "¿À·¡µÈ ¿É¼Ç `%c'´Â Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù." -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "record_size·Î ºÎÀûÀýÇÑ °ª" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "¿À·¡µÈ ¿É¼Ç `%c'´Â Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù." -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "¿À·¡µÈ ¿É¼Ç `%c'´Â Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù." -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "¿À·¡µÈ ¿É¼Ç `%c'´Â Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù." +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "¿À·¡µÈ ¿É¼Ç `%c'´Â Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù." + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 #, fuzzy msgid "memory exhausted" @@ -524,204 +531,204 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "¿ø°Ý ¼ÐÀ» ½ÇÇàÇÒ ¼ö ¾ø½À´Ï´Ù" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "¿É¼Ç¿¡ ºÎÀûÀýÇÑ ¸ðµå°¡ ÁÖ¾îÁü" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "ºÎÀûÀýÇÑ ³¯Â¥ Çü½Ä `%s'" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "¿É¼Ç¿¡ ºÎÀûÀýÇÑ ¼ÒÀ¯ÀÚ°¡ ÁÖ¾îÁü" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "" # -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: À߸øµÈ eof\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "record_size·Î ºÎÀûÀýÇÑ °ª" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" # -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "¾ÆÄ«À̺꿡 ¿¹±âÄ¡ ¾ÊÀº EOF" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" # -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "%s¸¦ ¿­ ¼ö ¾ø½À´Ï´Ù" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" # -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "¾µ¸ð¾ø´Â ¸í·É" # -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "ÀÌ°ÍÀº tar ¾ÆÄ«À̺êó·³ º¸ÀÌÁö ¾Ê½À´Ï´Ù" # -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "ÃÑ ¾²¿©Áø ¹ÙÀÌÆ®: " # -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 #, fuzzy msgid "Total bytes read" msgstr "ÃÑ ¾²¿©Áø ¹ÙÀÌÆ®: " # -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "ÃÑ ¾²¿©Áø ¹ÙÀÌÆ®: " -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "record_size·Î ºÎÀûÀýÇÑ °ª" # -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "¾ÆÄ«À̺ê À̸§ÀÌ ÁÖ¾îÁöÁö ¾Ê¾Ò½À´Ï´Ù" # -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Ç¥ÁØÀÔ/Ãâ·Â ¾ÆÄ«À̺긦 °ËÁõÇÒ ¼ö ¾ø½À´Ï´Ù" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" # -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "¾ÐÃàµÈ ¾ÆÄ«À̺긦 °»½ÅÇÒ ¼ö ¾ø½À´Ï´Ù" # -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Å×ÀÌÇÁÀÇ ½ÃÀÛ ºÎºÐ¿¡¼­ Áö±Ý Á¾·áÇÔ" # -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "¿À·ù°¡ ³Ê¹« ¸¹¾Æ¼­ Á¾·áÇÕ´Ï´Ù" -#: src/buffer.c:744 +#: src/buffer.c:821 #, fuzzy, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "·¹ÄÚµå Å©±â = %d ºí·°" msgstr[1] "·¹ÄÚµå Å©±â = %d ºí·°" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "" msgstr[1] "" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "" # -#: src/buffer.c:978 +#: src/buffer.c:1052 #, fuzzy, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "º¼·ý #%d(%s¸¦ À§ÇÑ)¸¦ ÁغñÇÏ°í ¸®ÅÏÀ» Ä¡¼¼¿ä: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "»ç¿ëÀÚÀÇ ÀÀ´äÀÌ ÇÊ¿äÇÑ °÷¿¡ EOF°¡ ÀÖÀ½" # -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "°æ°í: ¾ÆÄ«À̺갡 ºÒ¿ÏÀüÇÕ´Ï´Ù" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -733,77 +740,77 @@ msgstr "" " ! ¼­ºê¼ÐÀ» ½ÇÇàÇÕ´Ï´Ù\n" " ? ÀÌ ¸ñ·ÏÀ» ÀμâÇÕ´Ï´Ù\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" # -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "»õ º¼·ýÀÌ ¾Æ´Ô; Á¾·á.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "" # -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s´Â ÀÌ º¼·ý¿¡ ¿¬¼ÓµÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù" # -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s´Â ÀÌ º¼·ý¿¡ ¿¬¼ÓµÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù" # -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, fuzzy, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s´Â À߸øµÈ Å©±âÀÔ´Ï´Ù (%ld != %ld + %ld)" # -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "ÀÌ º¼·ýÀº ¼ø¼­¸¦ ¹þ¾î³µ½À´Ï´Ù" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, fuzzy, c-format msgid "Archive not labeled to match %s" msgstr "`%s'¿Í ÀÏÄ¡Çϵµ·Ï ¶óº§ÀÌ ºÙÁö ¾ÊÀº ¾ÆÄ«À̺ê" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, fuzzy, c-format msgid "Volume %s does not match %s" msgstr "º¼·ý `%s'°¡ `%s'¿Í ÀÏÄ¡ÇÏÁö ¾Ê½À´Ï´Ù" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" # -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "ºí·° °æ°è°¡ ¾Æ´Ñ ºÎºÐ¿¡¼­ ¾ÆÄ«À̺ê %sÀÇ EOF °ËÃâ" @@ -816,24 +823,24 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "%d ¹ÙÀÌÆ®(%ld ¹ÙÀÌÆ® Áß)¸¸ ÀÐÀ» ¼ö ÀÖ½À´Ï´Ù" msgstr[1] "%d ¹ÙÀÌÆ®(%ld ¹ÙÀÌÆ® Áß)¸¸ ÀÐÀ» ¼ö ÀÖ½À´Ï´Ù" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 #, fuzzy msgid "Contents differ" msgstr "¸ðµå°¡ ´Ù¸¨´Ï´Ù" # -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "¾ÆÄ«À̺꿡 ¿¹±âÄ¡ ¾ÊÀº EOF" # -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 #, fuzzy msgid "File type differs" msgstr "Å©±â°¡ ´Ù¸¨´Ï´Ù" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "¸ðµå°¡ ´Ù¸¨´Ï´Ù" @@ -853,98 +860,98 @@ msgid "Mod time differs" msgstr "º¯°æ ½Ã°¢ÀÌ ´Ù¸¨´Ï´Ù" # -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Å©±â°¡ ´Ù¸¨´Ï´Ù" # -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "%s¿¡ ¿¬°áµÇÁö ¾ÊÀ½" # -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "±âÈ£¸µÅ©°¡ ´Ù¸¨´Ï´Ù" # -#: src/compare.c:321 +#: src/compare.c:316 #, fuzzy msgid "Device number differs" msgstr "ÀåÄ¡ ¹øÈ£°¡ ¹Ù²î¾úÀ½" # -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "°ËÁõ " # -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: ¾Ë ¼ö ¾ø´Â ÆÄÀÏ Å¸ÀÔ; ÆÄÀÏÀÌ ¹«½ÃµÊ" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" # -#: src/compare.c:599 +#: src/compare.c:593 #, fuzzy, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "°ËÁõ ½ÇÆÐ: %d°³ÀÇ ºÎÀûÀýÇÑ Çì´õ°¡ °ËÃâµÊ" msgstr[1] "°ËÁõ ½ÇÆÐ: %d°³ÀÇ ºÎÀûÀýÇÑ Çì´õ°¡ °ËÃâµÊ" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "" # -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, fuzzy, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: º¯°æµÇÁö ¾Ê¾Ò½À´Ï´Ù; ´ýÇÁµÇÁö ¾ÊÀ½" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" # -#: src/create.c:661 +#: src/create.c:648 #, fuzzy, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: º¯°æµÇÁö ¾Ê¾Ò½À´Ï´Ù; ´ýÇÁµÇÁö ¾ÊÀ½" # -#: src/create.c:1078 +#: src/create.c:1062 #, fuzzy, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" @@ -952,62 +959,62 @@ msgstr[0] "%s: msgstr[1] "%s: ÆÄÀÏÀÌ %d ¹ÙÀÌÆ® ÁÙ¾îµë, (¿Í¿ì!)" # -#: src/create.c:1175 +#: src/create.c:1158 #, fuzzy, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: ´Ù¸¥ ÆÄÀϽýºÅÛ »ó¿¡ ÀÖÀ½; ´ýÇÁµÇÁö ¾ÊÀ½" # -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 #, fuzzy msgid "contents not dumped" msgstr " (ÄÚ¾î Ãâ·ÂµÊ)" # -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: ¾Ë ¼ö ¾ø´Â ÆÄÀÏ Å¸ÀÔ; ÆÄÀÏÀÌ ¹«½ÃµÊ" # -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr " %s·Î ¸µÅ©\n" # -#: src/create.c:1543 +#: src/create.c:1688 #, fuzzy, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: º¯°æµÇÁö ¾Ê¾Ò½À´Ï´Ù; ´ýÇÁµÇÁö ¾ÊÀ½" # -#: src/create.c:1552 +#: src/create.c:1697 #, fuzzy, c-format msgid "%s: file is the archive; not dumped" msgstr "%s´Â ¾ÆÄ«À̺êÀÔ´Ï´Ù; ´ýÇÁµÇÁö ¾ÊÀ½" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "" # -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "´ÙÀ½ Çì´õ·Î °Ç³Ê ¶Ü" @@ -1016,81 +1023,81 @@ msgstr " msgid "Deleting non-header from archive" msgstr "¾ÆÄ«À̺꿡¼­ ºñÇì´õ ºÎºÐÀ» Á¦°ÅÇÔ" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "¿¬¼ÓµÇ¾î ÀÖ´Â ÆÄÀÏÀ» ÀÏ¹Ý ÆÄÀÏ·Î ÃßÃâÇÔ" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "±âÈ£ ¸µÅ©¸¦ ÇÏµå ¸µÅ©·Î ÃßÃâÇÏ°í ÀÖ½À´Ï´Ù" -#: src/extract.c:1183 +#: src/extract.c:1339 #, fuzzy, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "`%s'¸¦ ÃßÃâÇÒ ¼ö ¾ø½À´Ï´Ù -- ÀÌ ÆÄÀÏÀº ´Ù¸¥ º¼·ý¿¡ ¿¬¼ÓµÇ¾î ÀÖ½À´Ï´Ù" # -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "¾ÆÄ«À̺ê ÆÄÀÏ¿¡ ¿¹±âÄ¡ ¾ÊÀº EOF" # -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: ¾Ë ¼ö ¾ø´Â ÆÄÀÏ Å¸ÀÔ; ÆÄÀÏÀÌ ¹«½ÃµÊ" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: ÀÌ ÆÄÀÏÀ» ¹é¾÷ÇÒ ¼ö ¾ø¾ú½À´Ï´Ù" # -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "%s¸¦ %s·Î À̸§À» ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" # -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s µð·ºÅ丮´Â À̸§ÀÌ ¹Ù²î¾ú½À´Ï´Ù" # -#: src/incremen.c:494 +#: src/incremen.c:486 #, fuzzy, c-format msgid "%s: Directory has been renamed" msgstr "%s µð·ºÅ丮´Â À̸§ÀÌ ¹Ù²î¾ú½À´Ï´Ù" # -#: src/incremen.c:539 +#: src/incremen.c:531 #, fuzzy, c-format msgid "%s: Directory is new" msgstr "%s´Â »õ µð·ºÅ丮ÀÔ´Ï´Ù" @@ -1211,188 +1218,187 @@ msgid "%s: Cannot remove" msgstr "%s¸¦ Áö¿ï ¼ö ¾ø½À´Ï´Ù" # -#: src/list.c:115 +#: src/list.c:130 #, fuzzy, c-format msgid "%s: Omitting" msgstr "%s¸¦ »ý·«" -#: src/list.c:133 +#: src/list.c:146 #, fuzzy, c-format msgid "block %s: ** Block of NULs **\n" msgstr "ºí·° %10ld: ** NUL·Î µÈ ºí·° **\n" -#: src/list.c:159 +#: src/list.c:172 #, fuzzy, c-format msgid "block %s: ** End of File **\n" msgstr "ºí·° %10ld: ** ÆÄÀÏÀÇ ³¡ **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, fuzzy, c-format msgid "block %s: " msgstr "ºí·° %10ld: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" # -#: src/list.c:821 +#: src/list.c:836 #, fuzzy, c-format msgid "Archive base-256 value is out of %s range" msgstr "ÀÌ º¼·ýÀº ¼ø¼­¸¦ ¹þ¾î³µ½À´Ï´Ù" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "" # -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " %s·Î ¸µÅ©\n" # -#: src/list.c:1253 +#: src/list.c:1261 #, fuzzy, c-format msgid " unknown file type %s\n" msgstr " ¾Ë ¼ö ¾ø´Â ÆÄÀÏ Å¸ÀÔ `%c'\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" # -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--º¼·ý Çì´õ--\n" # -#: src/list.c:1287 +#: src/list.c:1295 #, fuzzy, c-format msgid "--Continued at byte %s--\n" msgstr "--%ld ¹ÙÀÌÆ® °¿¡ °è¼ÓµÊ--\n" # -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "µð·ºÅ丮¸¦ ¸¸µå´Â Áß:" # -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "%s·Î µð·ºÅ丮¸¦ ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" + +# +#: src/misc.c:571 #, fuzzy, c-format msgid "Renaming %s to %s\n" msgstr "%s¸¦ %s·Î À̸§ ¹Ù²Þ" # -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, fuzzy, c-format msgid "%s: Cannot rename to %s" msgstr "%s¸¦ %s·Î À̸§À» ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" # -#: src/misc.c:534 +#: src/misc.c:604 #, fuzzy, c-format msgid "Renaming %s back to %s\n" msgstr "%s¸¦ %s·Î À̸§ ¹Ù²Þ" -# -#: src/misc.c:669 -#, fuzzy -msgid "Cannot save working directory" -msgstr "%s·Î µð·ºÅ丮¸¦ ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" - -# -#: src/misc.c:675 -#, fuzzy -msgid "Cannot change working directory" -msgstr "%s·Î µð·ºÅ丮¸¦ ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "" # -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s µð·ºÅ丮´Â À̸§ÀÌ ¹Ù²î¾ú½À´Ï´Ù" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" # -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: ¾ÆÄ«À̺꿡 ¾øÀ½" # -#: src/names.c:622 +#: src/names.c:615 #, fuzzy, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: ¾ÆÄ«À̺꿡 ¾øÀ½" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "`%s'¿Í ÀÏÄ¡Çϵµ·Ï ¶óº§ÀÌ ºÙÁö ¾ÊÀº ¾ÆÄ«À̺ê" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1416,7 +1422,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1427,7 +1433,7 @@ msgid "" " tar -xf archive.tar # Extract all files from archive.tar.\n" msgstr "" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1439,81 +1445,81 @@ msgid "" " never, simple always make simple backups\n" msgstr "" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" # -#: src/tar.c:394 +#: src/tar.c:395 #, fuzzy msgid "create a new archive" msgstr "¾ÆÄ«À̺꿡 ¿¹±âÄ¡ ¾ÊÀº EOF" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1521,572 +1527,572 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" # -#: src/tar.c:452 +#: src/tar.c:453 #, fuzzy msgid "remove files after adding them to the archive" msgstr "¾ÆÄ«À̺꿡 ÀÖ´Â À̸§µé¿¡¼­ µå¶óÀ̺ê ÁöÁ¤¹®À» Á¦°ÅÇÔ" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" # -#: src/tar.c:556 +#: src/tar.c:557 #, fuzzy msgid "create/list/extract multi-volume archive" msgstr "´ÙÁß-º¼·ý ¾ÆÄ«À̺긦 °ËÁõÇÒ ¼ö ¾ø½À´Ï´Ù" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" # -#: src/tar.c:582 +#: src/tar.c:583 #, fuzzy msgid "Archive format selection:" msgstr "Ç¥ÁØÀԷ¿¡ ´ëÇÑ ¾ÆÄ«À̺ê" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Çò°¥¸®´Â ¾ÐÃà ¿É¼Ç" -#: src/tar.c:615 +#: src/tar.c:616 #, fuzzy msgid "use archive suffix to determine the compression program" msgstr "¾ÐÃà ÇÁ·Î±×·¥¿¡ ¾µ ¼ö ¾ø½À´Ï´Ù" -#: src/tar.c:617 +#: src/tar.c:618 #, fuzzy msgid "do not use archive suffix to determine the compression program" msgstr "¾ÐÃà ÇÁ·Î±×·¥¿¡ ¾µ ¼ö ¾ø½À´Ï´Ù" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" # -#: src/tar.c:641 +#: src/tar.c:642 #, fuzzy msgid "change to directory DIR" msgstr "%s·Î µð·ºÅ丮¸¦ ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" # -#: src/tar.c:682 +#: src/tar.c:683 #, fuzzy msgid "don't strip leading `/'s from file names" msgstr "Àý´ë ¸µÅ©µé¿¡¼­ ¾Õ¿¡ ºÙÀº `/'¸¦ Á¦°ÅÇÔ" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "º¼·ý `%s'°¡ `%s'¿Í ÀÏÄ¡ÇÏÁö ¾Ê½À´Ï´Ù" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2094,242 +2100,247 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" +msgstr "¿É¼Ç¿¡ ºÎÀûÀýÇÑ ¸ðµå°¡ ÁÖ¾îÁü" + +#: src/tar.c:758 +msgid "print file time to its full resolution" msgstr "" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" # -#: src/tar.c:761 +#: src/tar.c:764 #, fuzzy msgid "ask for confirmation for every action" msgstr "»ç¿ëÀÚÀÇ È®ÀÎÀ» ÀÐÀ» ¼ö ¾ø½À´Ï´Ù" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "`-Acdtrux' ¿É¼Ç Áß Çϳª ÀÌ»óÀ» ÁöÁ¤ÇÏ¸é ¾È µË´Ï´Ù" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Çò°¥¸®´Â ¾ÐÃà ¿É¼Ç" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr "¾Ë ¼ö ¾ø´Â ÆÐÅÏ `%s'" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "¿É¼Ç¿¡ ºÎÀûÀýÇÑ ¼ÒÀ¯ÀÚ°¡ ÁÖ¾îÁü" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "¿É¼Ç¿¡ ºÎÀûÀýÇÑ ¸ðµå°¡ ÁÖ¾îÁü" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "" -#: src/tar.c:1916 +#: src/tar.c:1934 #, fuzzy msgid "Invalid owner" msgstr "¿É¼Ç¿¡ ºÎÀûÀýÇÑ ¼ÒÀ¯ÀÚ°¡ ÁÖ¾îÁü" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 #, fuzzy msgid "Invalid record size" msgstr "record_size·Î ºÎÀûÀýÇÑ °ª" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "·¹ÄÚµå Å©±â´Â %dÀÇ ¹è¼ö°¡ µÇ¾î¾ß ÇÕ´Ï´Ù." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, fuzzy, c-format msgid "Unknown density: `%c'" msgstr "¾Ë ¼ö ¾ø´Â ÆÐÅÏ `%s'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "`-[0-7][lmh]' ¿É¼ÇÀº ÀÌ tar¿¡¼± Áö¿øµÇÁö ¾Ê½À´Ï´Ù" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "¿À·¡µÈ ¿É¼Ç `%c'´Â Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 #, fuzzy msgid "Multiple archive files require `-M' option" msgstr "´ÙÁß ¾ÆÄ«À̺ê ÆÄÀÏÀº `-M' ¿É¼ÇÀÌ ÇÊ¿äÇÕ´Ï´Ù" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2337,52 +2348,52 @@ msgstr[0] "" msgstr[1] "" # -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "´ÙÁß-º¼·ý ¾ÆÄ«À̺긦 °ËÁõÇÒ ¼ö ¾ø½À´Ï´Ù" # -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "¾ÐÃàµÈ ¾ÆÄ«À̺긦 °ËÁõÇÒ ¼ö ¾ø½À´Ï´Ù" # -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "¾ÐÃàµÈ ´ÙÁß-º¼·ý ¾ÆÄ«À̺긦 »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù" # -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "¾ÐÃàµÈ ¾ÆÄ«À̺긦 °»½ÅÇÒ ¼ö ¾ø½À´Ï´Ù" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "`-Aru' ¿É¼ÇÀº `-f -'°ú µ¿½Ã¿¡ ¾µ ¼ö ¾ø½À´Ï´Ù" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "`-Acdtrux' ¿É¼Çµé Áß Çϳª¸¦ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2395,83 +2406,83 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: ÆÄÀÏÀÌ %d ¹ÙÀÌÆ® ÁÙ¾îµë, (¿Í¿ì!)" msgstr[1] "%s: ÆÄÀÏÀÌ %d ¹ÙÀÌÆ® ÁÙ¾îµë, (¿Í¿ì!)" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2514,71 +2525,71 @@ msgstr " msgid "Read checkpoint %u" msgstr "°Ë»çÁöÁ¡ %d¸¦ ÀÐÀ½" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "GNU tar ½ÃÇè µµ±¸¿ë µ¥ÀÌÅÍ ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Çò°¥¸®´Â ¾ÐÃà ¿É¼Ç" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr "" @@ -2586,177 +2597,187 @@ msgstr "" "»ç¿ë¹ý: %s [¿É¼Ç]...\n" "\n" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 #, fuzzy msgid "Update the access and modification times of FILE" msgstr "%s: Á¢±Ù ½Ã°¢°ú ¼öÁ¤ ½Ã°¢À» ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "ºÎÀûÀýÇÑ ³¯Â¥ Çü½Ä `%s'" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "¾Ë ¼ö ¾ø´Â ½Ã½ºÅÛ ¿À·ù" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" # -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, fuzzy, c-format msgid "cannot open `%s'" msgstr "%s¸¦ ¿­ ¼ö ¾ø½À´Ï´Ù" # -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "%s¸¦ ½ÇÇàÇÒ ¼ö ¾ø½À´Ï´Ù" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr "¾Ë ¼ö ¾ø´Â ÆÐÅÏ `%s'" # -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "%s¸¦ statÇÒ ¼ö ¾ø½À´Ï´Ù" # -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "%s¸¦ ¿­ ¼ö ¾ø½À´Ï´Ù" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "" +# +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "%s·Î µð·ºÅ丮¸¦ ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" + +# +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s¸¦ %s·Î À̸§À» ¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" + # #~ msgid "Reading %s\n" #~ msgstr "%s¸¦ Àд Áß\n" diff --git a/po/ky.gmo b/po/ky.gmo index e53575d1132e0a05e429d7d250d12a2987d8f025..0dce27ef2394678ca0eb3ebba6485a2fdd4eb0fe 100644 GIT binary patch delta 9832 zcmYk>2V7RwAII?nv9HC`4{AZb#{wuTkf4*xD-&b`mQXWr+bX5IGNbj#0kJ?OEeKE{}n z{1c6h1B}V=H72RDF{*z(!ny-@6FLg90$#(S_$!9sUsw&R)i9<6COT7b7Uc{qhc~c3 z{#L_yyh+WP#_(Cw150BbhT(i{i+eB}f5(zowU#lo&(y;xY>#?yE;hpzSP?Ix?spf1 z(YLlSPhv$3#OT@{Zbp(!1&uOUSQcktQ(T2=$R&)&hnR^mb?gHcVtLBjkyGYvRL}3= zK>P#iVOCw+fO!~8c_YT)We-Uli9c6W$3*Op15iWtE~F)Ppag z>i@UjhdofAAA)+|Ow@A@U?_SDNiOe}_LP$RJkTjNz!heD`qh$+~V^=GD%FskM-s)e^u4e+J;T2wWW zSu$<04UR=FF^5nOzJuy<1@5XFC-9GYJO-;^E>^;2NT*E!s)1iio^O6|757nd`UrJl zGgh1y67o%=;2Fu}1)Ra6#HLx=Cr*b>g91lk|Y(AF7J*ZvtE^6d%qDL+CZEQ># z48ahLLp>lJH3B2C6uyK>xC%95*HEALZ(=`R3w3=0K8Ag<1ZJZj=Afo-42IymCX9a| z$s1HWiN{elxQH~)JV5m*lD+7Uolq_BjcQOXsv&bwQ?VblcyGA+Ko*o5(i}AGgidl1iQauu{7llsKwL|vwe)&fUGN1gn83QG)8r#2daT1 zu`=diOI(3TScvLa6;GluPmm;{F6@A8VKWppC9hyGZbRMp6lyLnV+j6;`dmPg-G+5h zbKecM&7MPbWG0rx^{D&qLXEuVG>L9-0d?XY24Rt8+oSSWjdDC{sC%FqG6QwP6{rqu zMh$TRs)2{FDxO0v&N~>26&VJZfQ+=qWZJ~cK<)D_$bvSPQ7@KKPucfEBV^RfSmbqX z-o%FZIcmg8x3c>?5xsMZW2s+)6|gw-rXGi(7G(phto@%vq7U@L$8a{PC-YD(UxJ$Z z6R4hlg5~iR>V`fn9F0&AMqn(4V=vT5b~D$49_=Z+S<8ljT-vySPX|? z2#!JxcRW4C?0aD>);;L5EWt#EZ)IxrzjjvIT1A?dr%EKk9~Z2Z=iY>lV*F|6V;H>sHvKZ>d>p$ z8+WBK{#tDQ9qlSk##G8_s3BX4YT#b1i5E~ke1y7D`A)WH^-v?$5*byKj_S}F)Ed~2 z8u|}WBlrk=pr5C+y`VQnQ85aO;ab##He)$Fjq34L)PsM=`dG4yF^^+{vkhu0Iy-wH z17rGPYs|#j_&TaXp0gy{|Nlb`U74=-K}|4=axc^z9z;F(Thw(AQ4I*`X18A_XFiUm zemiO^t8}-o?sljSbVEIF46=PaW&sIX-MoW=SUlZMMFrFlMqns5$4GqI)z8C{lsBRp zSb$~lODv1`osTolVU(-la7@NpxB~}i|6e4jOGUGu_Jc!EEzd(u$!1KzOQ;8x?PW(G z8AB)!K@II})cLch2mFEhe0YX2eAIMDcBg6y)#LrB#dq2H z8|q7@d>{MZc+|-CL|wlU_2M~#(Rc%!U{GH>a;c~n(In>@^sq(EDH64~L_hmw(GWG1 zol*4zo%2u)+K+nBXZQsEfmN_rrtMh-R;1hoH5DUWc^YbDSE256CX?~koPS3}Y5WZ} zg#J(42RCwNVJqtAphoB{Rz<%oyNbhbm*F=ZYIQ$E4RLt3-JYHC8_I*RtPfkfzn#MD z0UoA3d>RMgBqDJt~?Vp0;{nSZbd!#9c+yEP$N)hko|ii z5o0M&LamLR9uoEZ8tP5=6IQ@-gY6qH8g*e37Qtt+C{DoUn2$B^Fb3gQsBQTGHFe=b zYzNaYobt06ic3)q@w`P6LGr!3AaJOin}(=Gl#bF44B6tQ#%cc_Cee`G#ikg<-C{5ewOu@@ z25rFl_#p=4Lu3$4&=~szWir;L{1$4z-#{(aCS&cY&%t(-SD>c&E7bZkk4RE6Yn*-X zPUM|rzCfnY#E-XsOs>ZElzk`gKF3sy!maoeUO_G~Ri3j`vlw;X?~s?FiJNGzpNqXH zA3~2-ZJAvAB8kE@%41M1KY@+$0czjYpJYr|%)kuXfx5ovWMigacZ|hPQ4K1ZXGb;# zlPHfwKir9}aZeuO-;Lx~DoS97e7op+VP(p5FbFrHdU_BwwEx8}n9Nhvlf}rEHa}oz z?8LCjb*S_AkmX@grrI@g5dBp@l@rZL9#JtIn@+Psw-Ko_zhgE|nrwow2Ct(&7qQyD5r?Dd525$(f1fqB$JMX`C%U70oP*VHH4ea|7>l86?K`|X z)}=fR8{kgVl-)or=D2nCTX8TxNqIVIikG9-%7%4}e>0Nzsc4Ty*4v**ov<_IWtfh) zoGo6nzuTAKGt~ct+TZ;)utjk{ZpN6`ZT%ITPC0g??Z7_lPPxJ+d*7T*9#*>#|J{y? zCY<=0PbXl#Ew+clurcLVa4??3q8Pu`{;Y0}T5O3Jg7Z*Q@CMe#>sS+uZ?kJ88dE5b z!BjlzA&DmO-)!BzA4Z9e&q2}x!YL2V#vP0Mdr%>L79kBjxyR9ant~-Eg=xx-<)Y)Sj z7K8qjTcGOOyK-mLNcX{H?ck*(n&V5Tp^ALd_Bb7@QC^N(y$4W>>`&~9F$LPcymqlQ z{(ySX#O~#-iO*njthvuNWDwr=$(wp#ePKtS8Z2oX0Hu6N54H zsQvPofDI{Mz!B(w%>HJafU2L3F?bB4@h<9qp~vmFWk;+;c@vhzQ&9!E9orBn8M|2JpCY1@IR*pc(saTrFvO(${L z+l+r3lBMt1mK9<=AO z!ZshV(C{Q`amI4fX*dz5<3ntZ`JQw3d-)8$Ohx2*h80g>J52xBuKqQs8{fnUnE8oa zgcor<<-PAE4Gm%gc6=O>~~ezSP&cV&4ldpziZF_Co)w?0p=7aoYdKNor7WALFso z=XTD!qNZR2hU0D2+y@rg@B1k1O?f4b!Uwno2VJvoxPa?+WVfI?81Mxn;=@|QEXrSg zsaHDlpM1l<^S9tKF8Bs7Vg60~hei4~w&iCqhYyB)Ya6%#+vr9(3~PR8JF*C?Q$FCz zg;{`uomTO zn2kk$uzw>C#iEpRa59cZ&GkL3hsi%`+&M2_Cb>hR8&A7qx5ZUwxu5LUY*)M zH@|E5`Et~Q3o#K}+_S%Wr{HqRH*p!}{cOKQ%l=|NpN0&u4v(qlvb|W7DB{W!INR0b zy7EincY@LMZn<#9NRm`ZH_*ZuZ;bH-seC(aQ%*j?T~ zCR^beVh|T?Lmdf(R=n0gC+Z(Z7Pa^Lz8IEtH~)=%jLZGVGsqt!{wCM4*qzgw2;uqW z7!}=-(K4?Snrj`Us9$1J^OE~eBI^Iwwx@nK)^+uVoWagq=Sy6-+T|JUURrAlscT4h zM!AzgRE84wiLZ!%j{YQSq>eX;(eC;Y_&l-Ndxjn0>Q(%L=u2oj>j)$kalV1KWdC^! zj{9)ylCE+fw*S{nR6U6}L-(et$hbyT22hh9PpZE7ZwYmd*t%{ZU%kpB;d5ISm6o=)g! ziZigll}kIPIej@7LmVLzsPn8KVOx8Ta4J%XKPVN)F8HTC<=w~ON#OL13 z{=<94Y$95@&++2){`PB(Rf!*n<(zvDbrd5XLh!;gkg66Ub5ld7j@`-iC zaAE`(hGH{fJo&doHS&030&$Sg(aWiP3K2%R5iyYPS0zVhi)l;UE|(W2_w?YO5JJZ~ zqN>a5kY6IQiPxyB>iw{TPI62mD!TghP8YtuKaOw(Ovt$KCy#1Ogu*AT>J)y6K|475js{{ynhudO`^UEQHS`;o!f~| zxV#tccX=1CX+dbDwlMB{BX}zk<#to3?JnZH`J3bFF9kt0aswA{k3Uv0t5JHL0-ydn ziwDF+N5;m5#5QOe-MDUagT+UNZ!VFVoik*7_K-nMLq_Bl^dB*!Nzw+r5{0PQwrHmO^(3mmRjZyti0oGsf38BNkwlP&P0E=QPbYUFU#3AU7a~zl89P)Ru z64nhgCJ3VgjoVWgO@;2g63gOI^uvqT4*x)ZjHzQxNgRx{&rHBZ_&Vyrhp+{Hhdx-N zuDxG#tV|w{6)^?N;FP*UzSY1DHxY_-7cPeDD2!)BO_Tw|7_ZhQjc@e%3+Q7jTo z)j%wVvyj;_%TVj(Q&d9^qdImAi=q!t*P5w?rLcw7ZQ?2DMhU378-beZjZS_FdA2Fe zxXEx-gVRwxn~99RS%Vtl)98giphn^WwnaY@b!aGt;UbJ+{h1RK7;RIC=BkCks0PHN z7S(8Ey37KM!+pp{OhN9V2RB9aI2m>0nfy?X_hJn^gw^mGG8pD5s(}qyP+mOWG*JN~ zQF9uLdhjc#53E5g&hw}TKSkZJ5%X0EJE9(xf|{ZXRD<7h^3$j}e~4;mh30mVH$%6! zQ6~x-%5>C?vavj_M;GozJ?ILmVUMshmJ4SOqaSJn2cbT{5cT&`GKJYWDr#_K(u0v33VG8=-J6HvGV_D2cEv_4wTz~}@W%u`7 z=20W@392LCpc?oHt7E}dyi2gAn?f{&6jaaF;B$BkbzwfT#mxiMkXDbjt2`KW;=hJ*b|4hWfw_ zER3b%Y){IgTJD3I`#4n3`=QpvDAWkfL5$V^HC$W zFP`ytQOKu4Q}75ibbq5BT(hI?Ni)<4rC@EGkJ?Tj;#fR}8j)t5Y{UBC3k3*N$3E_C zd;Be`A&*g0Ri+E$uhn0x3o9POP>XFLK8MGVdzf>mA#-)L4U9mIP=8bpvrzY0iR#%0 zs1ZAXjJ~;o>X3goy9OdrBj4RkK|`2@eJ}^LNUmce{0+S@pu2rgL##yJ0oCIq)Pvm^ zgp08_9(Mc^H5C^fzd;7Ze2;C>eUn063iW!}9`!=)f|pT4w;c7LgP4R@u>rQ~X&*cS zbzKIk0qarQ?}B5YUUrH?upaemumqk)?&~&RQ_usSU>H{HZC{NYu?+cq)KsiO4dE87 zg-1{iy5-cDXZT8z*GDxl9LwWitbo%T7oZ>cS{$bRf1E-cDnk1jlZG!~eLRHv;C)of z3-+^9(hwub2cRCb0yP51(S`T1EtX2K=X;^7bnAg;fPJt( zveiv{RErm(5AH(^p$YxYSFJeV} zn(Sr)Q7D^2%L?#fK+UChs$C?Zs0Q>#4OtfIhC5I_yNs2vXqp|N8mK%3H4^Qy8umh6 zKL(rQ+o+Ma;HD5k;U0!!z+k&b`k_W38*AeVtcr)QG+se1rXR5gRvTj9BegJ!ybjjJ z!B`IGp|Y=kkzwEw42Xi7yUYN&Uk*1#>Sj=$q)Sbn6P+snv~ zH3diU`osimhFdTUZ#a3?(e}mD9UD`B1hpt1V^^#=M!y}I|1=8mRJ@O@3-cJY?Gnb? z5t)ygq8%85KcaR`jd8X?F&IRij+Jp4GDv0zw!o_6?V9P0+V^hM{V!oXo^QM-*k2OO zP;;DtgK!0Q!vCNi+;O7q`E+F3&3R<~nHH1mwq1>EX>$)7VY|uv0g986OU*v)i6K+$ zeP^M&Hx*|o=mT}8@@)qDp;qlqY>lU|GnScVTb_u`$roci{1SWMV@$yKm+bXxaR&J# z48^f8+Xk)0TI6?LX8fZml$dV+An1r~$-AOjx)iIh2v;d>XS0D@4e1&RIn=GaW-^66B z@``=nG*m;rL`}h;*Z~t}^7kOF;m0AYGs{ldJsd#Z)jiw3leZ$DF}IOzVTRAKzXK+q z=6)x#Ud#>D`M%lqJ7N-gk&i|;hMA0!cnj44zZ^S-BTxY5SnoC4(}~!S`gPa|&tVL@=Gpf_3br86L_a)$iFh3Yu+@Cel)6nC z1-0l6jKJGi7yTC4Mbin3k-M=HW@8Clg)MP2YVqC0+8DXeF3Ld|Mm`^zWpfmVVeIR6 zO>M`{IlN z8oAVY0ij0dG5TZp8$3@fOQcY_5HAFrK>qV``#wlrVc%F=QA79zHo^zUXdBJ3_BvEcqH7ig&OUc7Ml?(0J5+R-oti|49mQR6Ia^Fl?oLMNUK2pTrtic9rdM zBdkiEit6zUtchE35T3$N3|Vbo>8V(s{B>-M2e1eJYc=B^LLv5D`@)%o70DN&=6EA& zvE-r_)7RJmE52v{U2q_FBj13%@rh%XHTLWLS{zCJ->CP&$hCaS!q0F6#;kMO6L;6~ zyPb;G>unE?VK4H!T%{Y&z=j2QQZ=sfmmgWT_n*MPo9O^UZ*e^ecrbX=!gmAvrxO>8n#B?t@aI>j19?W zpf|pcb#M>X#_!RytBP;4+oc?i;6xO*$IZw(G{0a2oVVSsg}taLE3m`Pabwib4#pXH z5IbVaopx8fidqXNPz`;G8kvX>JPmW37z!n*=z=>>`W7A>>Q2E&hoS*!n|8L;HU^g(xbTePkOl5q~Vm-p7X2kJw{Z z`3kI0{yF;LZ|ILz_Oh}u3j5<3tc3OU*^!9B&gAnj39n!$jNH%XdA`Y^5Q^JS5BLs! zvE%{!%cB7Xk?%xJ#dS>5`A_T@j!`&(d^U#RO&pFs2km#r*{J$u7=ouU7|o~bf88*I zf_{A_Vm15-OX6Ad!t0KAun_q}oQ}U@B91#`8l^0oLSoN@v+$sCLAq)qS=imsui_@@=o4bsmkdIoOtJA)dk$%)vGn>^uGxb|x=) z(GFENoK3zOdtl%tdwv?K;U{o1mio%R2WDd@@*-c`HPHk6l4m`@r28NqzAfd=KQhIJ|^cZ`waNKKj9S zpw4ak-7*u^(1#d@F?a0Z&c@n2-#nu5JXXDHdl-e)$WyU9X5cV9i*I7oJ-fIr;6m~z zn1ne$+UxG2c2V!2Y(v&!H2Ggx2V35^-vx)Dy9gDZQz(jO@Fl#6+8#X~*cZ-wsD_@w zMcDOcd*ko11$m2y*2y@MJQrWaTK}>`zY^P!|AEOE^@y#Bs~&ONR0`LqScb8`*dBh1 z&B-VJYHzR&8DY=wiEQjgqLI+SZ2Yfdt&`1l9L2SI_)}t#Zo;8|8&pRJt6LLDs*~)| z8IBs{Q;4a=UgC9I?fH3vpRK5S;~#Z($z#c<5*psl&N*hm{6T2(Hs>0>8MR(Ck~(}T zdlD_WnS@>}^@)>&j+tEWI#H7{BkwsTl8<-Fqi~LH!m-ZLGfd=@pXHvjtS9mjlm}x7 zULxjFcDJU$w3y{2KE!8~I}kdS6MH=+`!afqvR*>Zj_wqe5WV?aJibS03x7_uq)vyn z9LvdsIr-a^U!&|MJ}E%|>r%0TSV9F0)N>4X401lS$Ze$_>47 z9P%AbU7F(^PHrG>5g!xt3NRV(a`FaAGR8O;_9kykd6ScCaq6u%gm`w8;#^6RJ-G2% zB~~RLh#5o!=kpZJCgKYfIM^We&|=8tqEGQJ;(g}>FF7V*D)ly<1BcJF+l;_+y;u}?Rw5D8wk*pwEgEYr)WN*u#|}8!Y)o_ z9Oc@Cj)KG?$|aoqRZlJdA3(m-sVjsZ5T%`S5tvK_P&bL-6=U@N@%)K&kmNOj-wEaj zCr_c?Y#$PhiEY$vB-T*Y5kk2cp`$%fma;do*;8ZRf(IzKqi!cQMHf+tawF%O>sVad zpc#c0_@Z;-f@3f0YEho%|UO}Q)4pK>u=fjTZ*OcZ%2 zq4j6}b}G-{St5XF&&g=~lh{H$JIYe%;M^=6r<40T`Dx0XD1YSS`b;OHDES;*iuJH0 zjwJSJ|GTIdN9bruR3`co*NA@}i6k?Ka>Ot`?1l3P9ev1q5Os)^w#xJK3O`p;x8JF| z?N|i8sNb&r|Ig!ND*dQPAo^0)QNXbVpYS{af$2#XzaTxW-opa(4vCBEX!Ev~w z&hOF>j+d!>f=BTH@x0dGdlY67Ylx3Lm;Lw0V(LnfF8XhkSx>nz(S&omiC2hzx~=wnf$T&1 z2=OZQ+wh!o&d2e0e1YgmLeWWdxim4_ye8j|LkJbK*l^ie}xsp;d= z22B_}ZtCKQrpGIdPoDJuoXY*9>418^gVRT(xkipoO&^>-D0xEq=uxiJ zU3mu=ZyM{nc+9cFUVHMh@^<8B<;G=a6bSjh*YSaad3*DAxbib8?$yP4`|@`3)APZ_ z^Rt6;ALi`t>zzMSb)4IkKX-BT=}JL*nCIS^`E&CQsFAMxth3wmGtO?$JCL{Q+$LAv U-gBGsGx9U}nU%ZYJ9oMN0hjjACjbBd diff --git a/po/ky.po b/po/ky.po index 1ce343e..3683c6e 100644 --- a/po/ky.po +++ b/po/ky.po @@ -3,14 +3,16 @@ # This file is distributed under the same license as the PACKAGE package. # Azilet Beishenaliev , 2007. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.18\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2007-09-01 01:06+0100\n" "Last-Translator: Azilet Beishenaliev \n" "Language-Team: Kirghiz \n" +"Language: ky\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -91,7 +93,7 @@ msgstr "Толук маалымат үчүн `%s --help' же `%s --usage' де msgid "Report bugs to %s.\n" msgstr "Каталарды бул жерге билдиргиле %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Белгисиз система катасы" @@ -103,8 +105,8 @@ msgstr "Бул жардам тизмесин көрсөтөт" msgid "give a short usage message" msgstr "Колдонуу жөнүндө кыска маалымат көрсөтөт" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "АТЫ" @@ -142,56 +144,61 @@ msgstr "(ПРОГРАММАДА КАТА) Опция билиниш керек msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: `%s' опциясы так эмес\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: `--%s' опциясы менен аргумент колдонулбайт\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: `%c%s' опциясы менен аргумент колдонулбайт\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: `%s' опциясы менен аргумент болуш керек\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: бул опция түшүнүксүз `--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: бул опция түшүнүксүз `%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: жараксыз опция -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: бул опциянын аргументи болуш керек -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: `-W %s' опциясы так эмес\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: `-W %s' опциясы менен аргумент колдонулбайт\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: `%s' опциясы менен аргумент болуш керек\n" + # Памятты эмне дейбиз яя? ;) #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" @@ -521,186 +528,186 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Алыстагы команда процессору иштетилген жок" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Издөө жолу диапазондун тышында" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Опцияда жарабаган укук абалы берилди" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Жараксыз көлөм: %s" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Издөө даражасы диапазондун тышында" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Лентанын узундугу жараксыз" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Издөө даражасы диапазондун тышында" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Файлдын соңу эрте келди\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Негизги иштөө абалы:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Архивде күтүлбөгөн жерде файлдын соңу бар" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "N" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "ФАЙЛ" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "`%s' ачылбай жатат" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "аргументтердин саны көп" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Туура эмес команда" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Бул tar-архиви эмес окшойт" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Жазылган жалпы байт" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Алынган жалпы байт" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Өчүрүлгөн жалпы байт: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(канал)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "record_size мааниси жарабайт" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Архивдин аты берилген жок" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Архивдин stdin/stdout текшерүүсү болбой жатат" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Архив кысыштырылган абалда. %s опциясын колдонгула" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Кысыштырылган архивдерди жаңырталбай калды" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Лентанын башына келди, иш бүттү" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Өтө көп ката бар, иш бүттү" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Маалыматтын көлөмү = %lu блок" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Архивде түз жайлашпаган блок бар (%lu байт)" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Архивдеги файл өчпөй калды; архив ачылбаса -i деп колдонгула" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek маалыматтын чегинде токтогон жок" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: жараксыз том номери бар" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Томдун номери батпай калды" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "%2$s үчүн %1$d-томду даярдап Enter'ди басыңыз: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Колдонуучудан жооп күтүбатканда файлдын соңу келип калды" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "ЭСКЕРТҮҮ: Архив толук эмес" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -711,72 +718,72 @@ msgstr "" " q\t\ttar программасынын ишин бүтүр\n" "y же Ввод\t\tИшти улант\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Команда строкасын ач\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Бул тизмени жаз\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Жаңы том жок; иш бүттү.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Файлдын аты берилген жок. Кайра жазып көргүлө.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Туура эмес ввод. Жардам үчүн ? жазгыла.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "%s командасы аткарылбай калды" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s бул томдо уланса керек: башкы-маалыматта аты кыскартылыптыр" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s мунун бул томдо уландысы жок" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s көлөмү туура эмес (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Бул том иретте эмес" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Архивдин тамгасы %s менен келишпей жатат" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "%s тому %s менен келишпей жатат" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" "%s: файлдын аты көп-томдук GNU башкы-маалымат үчүн өтө узун, кыскартылды" -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "rmtlseek маалыматтын чегинде токтогон жок" @@ -787,20 +794,20 @@ msgid "Could only read %lu of %lu byte" msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "%2$lu байттан %1$lu гана окулду" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Мазмундары окшобойт" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Архивде күтүлбөгөн жерде файлдын соңу бар" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Файл түрү окшошпойт" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Укук абалдары окшошпойт" @@ -816,141 +823,141 @@ msgstr "Gid окшошпойт" msgid "Mod time differs" msgstr "Алмаштыруу убактылары окшошпойт" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Көлөмү окшошпойт" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "%s жака шилтенген эмес" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Символикалык шилтеме окшошпойт" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Аспап номери окшошпойт" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Текшерүү " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: `%c' файл түрү бүлгисиз, жөнөкөй файл катары салыштырды" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Архивдин ичинде префикстери алынган файл аттары бар." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Текшерүү учурунда алгачкы файлдар табылбай калышы мүмкүн." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "ТЕКШЕРҮҮ КАТАСЫ: %d жараксыз башкы маалымат табылды" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "%s болгон жерде нөлдүк блок бар" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: мунун ичинде %s деген кэш-папка белгиси бар; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "%s мааниси %s диапазонунун тышында %s..%s; ордуна %s коюлат" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "%s мааниси %s диапазонунун тышында %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Терс сегиздик системасында башкы маалыматтар даярдалууда" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: файлдын аты өтө узун (эң көп %d болот); кошулбайт" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: файлдын аты өтө узун (бөлүнбөйт); кошулбайт" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: шилтеменин аты өтө узун; кошулбайт" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Файл %s байтка азайды; нөлдөр менен толтурулат" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: файл башка файл-системасында; кошулбайт" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "астындагылар кошулган жок" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Файлдын түрү белгисиз; файл каралбайт" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "%s жака шилтемелер жок.\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: файл алмашкан жок; кошулбайт" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: файл архив экен; кошулбайт" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "папка кошулган жок" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: файлды окуу учурунда файл алмашты" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: сокет каралбайт" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: door каралбайт" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Эмики башкы-маалыматка өттү" @@ -958,74 +965,74 @@ msgstr "Эмики башкы-маалыматка өттү" msgid "Deleting non-header from archive" msgstr "Архивде башкы-маалымат болбогондор өчүрүлөт" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: %s убакыт тамгасы өтө эски" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: %s убакыт тамгасы %s сек. келечекте" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Папка ачыбатканда күтүлбөгөн нерселер болду" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Папканын статусу билинелектен мурун аты алмашып кетти" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Удаа болгон файлдар жөнөкөй файл катары чыгарылып жатат" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Символикалык шилтемелерди түз шилтеме катары чыгарууга аракет кылынат" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Чыгарылган жок -- файл башка томдон уланып келиптир" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Башкы-маалымат узун" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: `%c' файл түрү бүлгисиз, жөнөкөй файл катары чыгарылды" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Азыркы %s жаңыраак же бирдей" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Бул файлдын резерв копиясы алыналбай калды" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "%s файлы %s деп алмаштыралбай калды" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Папканын эски аты %s эле" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Папка алмаштырылды" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Папка жаңы" @@ -1139,35 +1146,35 @@ msgstr "%s: %s өчүрүлүп жатат\n" msgid "%s: Cannot remove" msgstr "%s: Өчүрүлбөй жатат" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Муну аттады" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "блок %s: ** нөлдөр болгон блок **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "блок %s: ** Файлдын соңу **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "блок %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Башкы-маалыматта сан түрүндө %s болотурган жерде бош жерлер бар" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1175,102 +1182,99 @@ msgstr "" "экилик системадагы терси алынды" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "" "Архивдин сегиздик системадагы мааниси болгон %.*s %s диапазонунун тышында" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Архивде эски түрдөгү base-64 башкы-маалымат бар" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Архивдеги base-64 түрүндөгү %s сөзү %s диапазонунун тышында" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Архивдин base-256 мааниси %s диапазонунун тышында" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "" "Архивдин ичинде %.*s бар, алардын ордунда сан түрүндө %s болушу керек эле" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Архивдин %s мааниси %s түрүнүн %s..%s диапазонунда эмес" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " %s жака шилтеме\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " белгисиз файл түрү %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Узун шилтеме--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Узун ат--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Томдун башкы-маалыматы--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--%s-байттан баштап уланды--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Жаңы папка ачылыбатат:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Учурдагы папка алмаштырылбайтат" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "%s'тин атын %s деп алмаштырды\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Аты %s деп алмаштыралбай калды" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "%s'тин атын кайра %s деп алмаштырды\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Учурдагы папка сакталбайтат" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Учурдагы папка алмаштырылбайтат" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Файл окулганча өчүрүлүп кетти" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Файл окулганча өчүрүлүп кетти" @@ -1278,20 +1282,20 @@ msgstr "%s: Файл окулганча өчүрүлүп кетти" # орусчада дочерный процесс, бир процесс өз ичинен жаңы бир # процесс жаратканда ошол чайлд процесс болот. Биз эмне дейбиз? # Мен туулган процесс дейм. -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "туулган процесс" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "процесс-аралык канал" -#: src/names.c:601 +#: src/names.c:594 #, fuzzy msgid "Pattern matching characters used in file names" msgstr "Файлдын аттарында уйкаштарды издөө үчүн колдонулган тамгалар бар." -#: src/names.c:603 +#: src/names.c:596 #, fuzzy msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " @@ -1299,22 +1303,27 @@ msgid "" msgstr "" "Уйкаштарды издөө үчүн --wildcards опциясын колдонуңуз, же --no-wildcards" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Архивде табылган жок" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Керектүү нерселер архивде табылган жок" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Архивдин тамгасы %s менен келишпей жатат" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1340,7 +1349,7 @@ msgstr "" "Ковычкалардын түрү белгисиз - `%s'. Тизмени көрүүгө `%s --quoting-" "style=help' жазгыла." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1362,7 +1371,7 @@ msgstr "" " tar -xf archive.tar # Аты archive.tar болгон архивдин ичиндеги " "баардык файлдарды чыгарат.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1384,82 +1393,82 @@ msgstr "" "жөнөкөй вариант\n" " never, simple ар дайым жөнөкөй резерв копиялар сакталат\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Негизги иштөө абалы:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "архивдин ичиндеги файлдарды тизмелейт" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "архивден файлдарды чыгарат" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "жаңы архив жаратат" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "архив менен файл система айырмаларын табат" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "файлдарды архивдин аягына кошот" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "архивдин ичиндегилерден жаңы болгон файлдарды гана кошот" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "tar файлын архивге кошот" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "архивден өчүрөт (магниттик ленталарда жарабайт!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "архивдик томдун атын текшерет анан бүтүрөт" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Иштөөнүн модификаторлору:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "кеңири жайлашкан файлдарды эфектүү түрдө колго ал" # major, minor -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "БАШКЫ[.КИЙИНКИ]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" "кеңири жайлаштыруу форматынын версиясын тандайт (--sparce опциясы кошулган " "болот)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "эски GNU форматындагы резервдөө методун колго ал" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "жаңы GNU форматындагы резервдөө методун колго ал" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "окулбаган файлдар келгенде нөл болбогон статус менен ишти бүтүрбө" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1471,123 +1480,123 @@ msgstr "" "файлдардын аттары команда строкасында же -T опциясы менен берилгенде гана " "жарактуу болот. N-дин мааниси алдынала 1ге барабар." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "Архивдин ичиндегилерди издесе болот" -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "Архивдин ичиндегилерди издесе болот" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "үстүнө көчүрүү контролу:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "архивди сактагандан кийин текшерүүгө аракет кылат" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "файлдарды архивге кошулгандан кийин өчүрөт" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "файлдарды чыгаруу учурунда мурун бар болгон файлдардын ордуна көчүрбө" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "мурун бар болгон файл архивдеги копиясындан жаңы болсо аны алмаштырба" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "чыгаруу учурунда мурун бар болгон файлдардын ордуна көчүрөт" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "бар болгон файлдын ордуна көчүрүүдөн мурун ал файлды өчүрөт" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "папканы чыгарардан мурун баардык иерархияларды өчүрөт" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "мурун бар болгон папкалардын мета-касиеттерин корго" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "чыгаруу учурунда бар болгон папкалардын мета-даталардын үстүнө жазылат " "(алдынала тандалат)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Чыгаруу() жолун танда:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "файлдарды стандарт чыгарууга (output) жөнөт" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "КОМАНДА" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" "архивден чыккан файлдарды канал(pipe) жолу менен башка программага жөнөтөт" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "туулган процесстердин бүтүрүү кодторуна караба" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "туулган процесстердин нөл болбогон бүтүрүү кодторун ката деп ишке ал" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Файлдын өзгөчөлүктөрүн колго алууда:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "кошулган файлдардын ээсин АТЫ деп кой" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "кошулган файлдардын группасын АТЫ деп кой" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "ДАТА-ЖЕ-ФАЙЛ" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "кошулган файлдардын алмашуу убактысын ДАТА-ЖЕ-ФАЙЛ дан ал" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "УКУК" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "кошулган файлдардын укук абалын УКУК деп кой" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "МЕТОД" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1597,32 +1606,32 @@ msgstr "" "сакта (МЕТОД='replace'; алдынала тандалат) же колдонуу убакыттарын " "алмашырбай туруп сактап кал (МЕТОД='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "файлдын алмаштыруу убактын чыгарбайт" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "ээсин ошол бойдон калтырып файлдарды чыгарууга аракет кылат" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "файлдарды өзүңдүкү катары чыгарат" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "ээси/группа аттарын ардайым номерлер менен көрсөтөт" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "файлдын уруксат маалыматын да чыгар (суперколдонуучуга алдынала тандалат)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1630,15 +1639,15 @@ msgstr "" "архивден уруксат маалыматын чыгарыбатканда колдонуучунун umask'ын колдон " "(жөн колдонуучуларга алдынала тандлат)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "чыгатурган файлдарды архивдегидей кылып сортто" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "-p жана -s менен бирдей" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1646,141 +1655,141 @@ msgstr "" "чыгарылган папкалардын колдонуу убакыттарын жана уруксаттарын чыгаруу иши " "бүткөндөн кийин коёт" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "--delay-directory-restore опциясынын эффектин токтотот" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Аспапты тандоо жана ага өтүү:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "АРХИВ" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "АРХИВ деген архивдик файлды же аспапты колдонот" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "архивдик файлда эки точка болушуна карабастан ал локалдуу" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "rmt'нин ордуна КОМАНДА колдонулат" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "rsh'тын ордуна КОМАНДА колдонулат" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "драйв жана анын тыгыздыгын белгиле" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "көп томдуу архивди жарат/тизмеле/чыгар" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "N x 1024 байт жазгандан кийин лентаны алмаштыр" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "ар лентанын аягында скриптти иштет (-M опциясы колдонулат)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "ФАЙЛ файлынын ичиндеги том номерин колдон/жаңырт" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Аспаптын блоктолушу:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "БЛОК" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "ар маалыматка БЛОК x 512 байт түшөт" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "Ар маалыматка N байт түшөт, 512 көбөйтүндүсү" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "архивдеги нөлдүү блокторду өтүп кетет (EOF жөнүндө)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "окубатканда кайрадан блокторго бөлүп чык (4.2BSD каналдары үчүн)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Архивдин форматын тандоо:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "ФОРМАТ" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "тандалган форматта архив жаратат" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "ФОРМАТ булардан бирөө болот:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "эски V7 tar форматы" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "tar <= 1.12 версиясында болгондой GNU форматы" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU tar 1.13.x форматы" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) форматы" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) форматы" # pax деген gid,atime сияктуу нерселер -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "pax менен бирдей" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "--format=v7 менен бирдей" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "--format=posix менен бирдей" # keyword эмне болот? -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "ачкыч-сөз[[:]=мааниси][,ачкыч-сөз[[:]=мааниси]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "контролдоо үчүн pax ачкыч сөздөрү" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "ТЕКСТ" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1788,78 +1797,78 @@ msgstr "" "том аты ТЕКСТ болгон архив жарат; тизмелөө/чыгаруу учурунда, ТЕКСТ дегенди " "том атынын глоб шаблону катары колдон" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Бирбирине келишпеген кысыштыруу опциялары берилди" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "ПРОГ" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "ПРОГ менен ишке ал (-d опциясы болушу керек)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Локалдуу файлдарды тандоо:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "ФАЙЛды архивге кош (файлдын аты тире менен баштаган учурда пайдалуу)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "ПАПКА" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "ПАПКА папкасына өт" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "чыгарылатурган же жаңы ачылатурган файлдарды АТЫ деген файлдан кара" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T опциясы нөл менен бүткөн аттарды окуйт, -C опциясы өчүрүлөт" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" "-T менен алынган файлдардын аттарындагы ковычкалар өчүрүлөт (алдынала " "тандалат)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "-T менен алынган файлдардын аттарындагы ковычкалар калаберет" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "ШАБЛОН" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "ШАБЛОН менен уйкаш файлдар ишке алынбайт" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "ФАЙЛда тизмеленген шаблондор менен уйкаш файлдар ишке алынбайт" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1867,96 +1876,96 @@ msgstr "" "CACHEDIR.TAG файлы болгон папкалардын астындагылары тэг файлдан тышкарысы " "кошулбайт" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "CACHEDIR.TAG файлы болгон папкалардын астындагыларынын баары кошулбайт" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "CACHEDIR.TAG файлы болгон папкалар кошулбайт" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" "ФАЙЛ файлы болгон папкалардын астындагылары ФАЙЛ файлындан тышкарысы " "кошулбайт" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "ФАЙЛ файлы болгон папкалардын астындагыларынын баары кошулбайт" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "ФАЙЛ файлы болгон папкалар кошулбайт" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "папкалардын тереңине кирип кетүүнү токтот" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "архивди жасабатканда локалдуу файл системасында кал" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "папкалардын тереңине кирет (алдынала тандалган)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "файл аттарынын башындагы '/'терди өчүрбө" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "символикалык шилтемелерге барат; алар көрсөткөн файлдарды архивге кошот" -#: src/tar.c:686 +#: src/tar.c:687 #, fuzzy msgid "follow hard links; archive and dump the files they refer to" msgstr "" "символикалык шилтемелерге барат; алар көрсөткөн файлдарды архивге кошот" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "МҮЧӨНҮН-АТЫ" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "архивдеги МҮЧӨНҮН-АТЫ мүчөсүнөн башта" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "ДАТА-ЖЕ-ФАЙЛ'дан жаңы болгон файлдарды гана сакта" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "ДАТА" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "датасы алмашканда гана дата жана убактысын салыштыр" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "CONTROL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "өчүрөрдөн мурун копиясын сактап кал, CONTROL версиясын танда" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "STRING" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1964,102 +1973,102 @@ msgstr "" "өчүрөрдөн мурун копиясын сактап калат, жалпы колдонулган суфикс кошулат (бул " "суфикс SIMPLE_BACKUP_SUFFIX жолу менен алмаштырылбаган болсо '~' болот)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Файлдын атынын алмашуулары:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "чыгаруу учурунда файл аттарынын башындагы N компонентти алып салат" # выражение кыргызча кандай? СҮЙЛӨМ башка жерде да бар -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "СҮЙЛӨМ" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "файлдардын аттарын алмаштыруу үчүн sed replace EXPRESSION колдонгула" # inclusion, exclusion - Kyrgyz equiv? -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "Файлдын атына уйкаштыруу опциялары (бардык шаблондорго тиешелүү):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "тамгалардын чоң-кичинесине каралбайт" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "шаблондор файлдын атынын башталышы менен уйкаштырылат" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" "шаблондор `/' символунан кийин келген ар жерде уйкашына каралат (алдынала " "тандалган)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "уйкаштырууда тамгалардын чоң-кичинесине каралат (алдынала тандалган)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "шаблондор колдонулат (иштен алынбаган файлдарга алдынала тандалат)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "кандай жазылса ошондой колдонулат" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "шаблондор `/' символун издебейт" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "шаблондор `/' символун издейт (алдынала тандалган)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Маалыматтандыруу:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "ишке алынган файлдарды кеңири маалыматы менен тизмеле" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 #, fuzzy msgid "warning control" msgstr "үстүнө көчүрүү контролу:" # Ушу 'record' сөзүнө жакшы котормо табалбай койдум # 'маалымат' деп жазыбаттым эле, бул жерде келишпей калаткен -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "ар N записьтен кийин маалымат берип турат (алдынала 10 болот)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "баардык шилтемелер кошулбай калса билдирүү жазып чыгар" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "СИГНАЛ" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2071,27 +2080,32 @@ msgstr "" "SIGHUP, SIGQUIT, SIGINT, SIGUSR1 жана SIGUSR2; SIG префикси жазылбаган " "аттарын да колдонсо болот." -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "файлды алмаштыруу датасын UTC түрүндө көрсөт" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "чыккан кеңири маалыматты ФАЙЛ файлына жибер" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "ар билдирүүдө архивдин ичиндеги блок номерин көрсөт" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "ар ишти аткарууга макулдук сурап тур" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "tar'да алдынала коюлган опцияларды көрсөтөт" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2099,33 +2113,33 @@ msgstr "" "тизмелөө же чыгаруу учурунда издөө критериясына жатпаган папкаларды да " "тизмелейт" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "алмаштыруудан кийин файлдын же архивдин аттарын көрсөтөт" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "СТИЛЬ" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" "аттарга ковычка кошуу стилин тандаңыз; жарактуу СТИЛЬ түрдөрү төмөндө " "көрсөтүлөт." -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "STRING ичинде болгон тамгаларга кошумча ковычка кошот" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "STRING ичинде болгон тамгаларга ковычка кошпойт" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Келишүү опциялары:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2133,64 +2147,64 @@ msgstr "" "жаңы архив жасабатканда --old-archive менен бирдей; чыгарыбатканда --no-same-" "owner менен бирдей" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Башка опциялар:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "зыяндуу көрүнгөн опцияларды колдонууга тыюуу салат" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "`-Acdtrux' опцияларынан бирөөнү гана колдоно аласыңар" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Бирбирине келишпеген кысыштыруу опциялары берилди" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Сигналдын аты белгисиз: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Датанын шаблон файлы табылган жок" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Белгисиз %1$s дата форматынын ордуна %2$s коюлат" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "%s опциясы: `%s' датасын %s деп алды" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: файл тизмеси окулган" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: алынган файлдын атында бош тамгалар бар" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "архивди gzip менен ишке ал" -#: src/tar.c:1290 +#: src/tar.c:1296 #, fuzzy msgid "Valid arguments for the --quoting-style option are:" msgstr "--quoting-style опциясы үчүн мындай аргументтер бар:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2198,168 +2212,168 @@ msgstr "" "\n" "*Бул* tar алдынала мындай иштетилет:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Блок көлөмү жараксыз" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Лентанын узундугу жараксыз" -#: src/tar.c:1511 +#: src/tar.c:1529 #, fuzzy msgid "Invalid incremental level value" msgstr "Файлдын форматы туура эмес" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Бирден көп ченемдөөчү дата бар" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "кеңири жайлаштыруу форматынын версиясы жарактуу эмес" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "Бул платформада --atime-preserve='system' опциясы иштебейт" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "--checkpoint опциясына жазылган аргумент сан эмес" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Жараксыз группа" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Опцияда жарабаган укук абалы берилди" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Жарабаган номер" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Ээси жарабайт" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Маалымат көлөмү жарабайт" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Маалыматтын көлөмү %d көбөйтүндүсү болушу керек." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Элементтердин саны жарабайт" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "--to-command опциясы бир эле жолу жазылыш керек" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Тыгыздык аргументи туура эмес: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Түшүнүксүз тыгыздык: `%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "*Бул* tar `-[0-7][lmh]' опцияларын иштетпейт" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[ФАЙЛ]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Эски болгон `%c' опциясына параметр керек." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "Файл тизмеси болбосо --occurrence дегендин мааниси болбойт" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "Колдонулган иштетүү абалда --occurrence колдонулбайт" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Бир нече архив файлы болсо `-M' опциясы колдонулушу керек" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "--listed-incremental менен --newer чогу колдонулбайт" -#: src/tar.c:2387 +#: src/tar.c:2406 #, fuzzy msgid "--level is meaningless without --listed-incremental" msgstr "Файл тизмеси болбосо --occurrence дегендин мааниси болбойт" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Томдун тамгасы өтө узун (эң көп %lu байт боло алат)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Көп-томдуу архивдерди текшералбай калды" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Кысыштырылган архивдерди текшералбай калды" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Көп-томдуу кысыштырылган архивдерди колдоналбай калды" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Кысыштырылган архивдер кошулалбайт" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option POSIX архивдеринде гана колдонула алат" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Бош архив жаратуудан уялып баш тартып жатат" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "`-Aru' опциялары `-f -' менен келишпейт" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "`-Acdtrux' опцияларынан бирөөнү тандап колдонуңуз" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2370,88 +2384,88 @@ msgid "%s: File shrank by %s byte" msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Файл %s байтка азайды" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "%s сөзү белигсиз же азырынча киргизилген эмес" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Сан жарактуу маанилердин тышында: %s" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "%s шаблону колдонулбайт" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "%s ачкыч сөзү алмаштырылбайт" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Кеңейтилген башкы-маалымат бузук: узундук жок" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Кеңейтилген башкы-маалыматтын узундугу жарактуу маанилердин тышында" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Кеңейтилген башкы-маалыматтын узундугу - %*s - диапазондун тышында" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" "Кеңейтилген башкы-маалымат бузук: узундуктан кийин бош жер (пробел) жок" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Кеңейтилген башкы-маалымат бузук: барабар символу жок" # newline эмне болот? -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Кеңейтилген башкы-маалымат бузук: жаңы сап жок" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Кеңейтилген башкы-маалыматта белгисиз `%s' сөзү каралбайт" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "Чыккан ачкыч-сөз/маани экилиги ото узун (ачкыч-сөз=%s, узундугу=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "%s=%s түрүндөгү кеңейтилген башкы-маалымат %s..%s диапазондун тышында" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Кеңейтилген башкы-маалымат бузук: %s=%s туура эмес" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Кеңейтилген башкы-маалымат бузук: %s=%s ашыкча көп" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Кеңейтилген башкы-маалымат бузук: туура эмес %s: күтүлбөгөн жерде бул - %c - " "бөлүүчү символ бар" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Кеңейтилген башкы-маалымат бузук: туура эмес %s: так санда маани бар" @@ -2492,7 +2506,7 @@ msgstr "Жазууну текшерүү жери: %u" msgid "Read checkpoint %u" msgstr "Окуунун текшерүү жери: %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2500,74 +2514,74 @@ msgstr "" "genfile, GNU paxutils пакетинин дата файлдарын ишке алат.\n" "ОПЦИЯЛАР мындай:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Жаңы файл ачуу опциялары:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "КӨЛӨМ" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Көсөтүлгөн КӨЛӨМдө жаңы файл ач" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Стандарт чыгарууга жазбай, АТЫ деген файлга жаз" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Файлдын аттарын ФАЙЛдан ал" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T опциясы бош/нөл (null) менен бүткөн аттарды окуйт" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Файлды тандалган ШАБЛОН менен толтурат. ШАБЛОН 'default' же 'zeros' болот" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Кеңири жайлашкан файлдын блок көлөмү" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Файлды кеңири жайлаштыр. Кийинки команда строкаларында файлдын картасы бар." -#: tests/genfile.c:145 +#: tests/genfile.c:144 #, fuzzy msgid "OFFSET" msgstr "ОРУН" # seek the given offset - orunga jyl -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "данный(data) жазаардан мурун айтылган орунга жыл" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Файлдын статистикасынын опциялары:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Алынган ар бир файл үчүн struct stat курамын көрсөтөт. Алдынала тандалган " "ФОРМАТ мындай: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Синхрондуу иштетүүнүн опциялары:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [ОПЦИЯ...]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 #, fuzzy msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " @@ -2576,19 +2590,19 @@ msgstr "" "Жазылган КОМАНДАны иштет. Бул --checkpoint жана --cut, --append, --touch " "бирөөсү менен колдонулганда пайдалуу" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "N текшерүү жерине жеткенде буларды (төмөндү карагыла) аткар" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Эмики --touch опциясы үчүн дата жазгыла" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Өтүлгөн текшерүү жердерди жана КОМАНДАнын бүтүрүү статусун көрсөтөт" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2596,7 +2610,7 @@ msgstr "" "Синхрондуу аткаруу иштери. Булар --checkpoint опциясы менен берилгенн " "текшерүү жерине жеткенде аткарылат." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2604,147 +2618,161 @@ msgstr "" "ФАЙЛды --length опциясы менен берилген көлөмгө кыскартат (берилбеген болсо 0 " "болот)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "ФАЙЛга КӨЛӨМ байт кошот. КӨЛӨМ --length опциясы менен берилет." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "ФАЙЛдын колдонуу жана алмашуу убакыттарын жаңылайт." -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Бул команданы иштеткиле - КОМАНДА" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Жараксыз көлөм: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Сан жарактуу маанилердин тышында: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Көлөмү терс сан: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) аткарылбай калды" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "`%s' жанындагы санды окубатканда ката чыкты" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Датанын форматы түшүнүксүз" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[АРГУМЕНТТЕР...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "`%s' ачылбай жатат" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "издөө болбой калды" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "файлдын атында бош тамга бар" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "кеңири(чоң) файлдарды стандарт чыгарууга жибералбайт, --file опциясын " "колдонуңуз" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "туура эмес маска (`%s' жанында)" # фиелд деген кандай болот? -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Белгисиз поле `%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "`%s'ке убакыт аталган жок" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "`%s' ачылбай жатат" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Команда толук аткарылды\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Команда %d статусу менен аткарылбай калды\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Команда %d сигналы менен жабылды\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Команда %d сигналы менен токтотулду\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Команда core dump менен бүттү\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Команда жабылды\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat опциясы менен файл аттары жазылыш керек" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Учурдагы папка сакталбайтат" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s файлы %s деп алмаштыралбай калды" + +#~ msgid "suppress this warning." +#~ msgstr "опциясы менен бул эскертүүнү көрсөтпөс кыл." + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: мындай опция колдонулбайт -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "%s жактан окуп жатат\n" + #~ msgid "" #~ "\n" #~ "Report bugs to <%s>.\n" @@ -2752,15 +2780,6 @@ msgstr "--stat опциясы менен файл аттары жазылыш к #~ "\n" #~ "Каталарды бул жерге билдиргиле <%s>.\n" -#~ msgid "Reading %s\n" -#~ msgstr "%s жактан окуп жатат\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Оңолбогон ката: иш бүттү " - -#~ msgid "suppress this warning." -#~ msgstr "опциясы менен бул эскертүүнү көрсөтпөс кыл." - #~ msgid "filter the archive through bzip2" #~ msgstr "архивди bzip2 менен ишке ал" @@ -2814,6 +2833,9 @@ msgstr "--stat опциясы менен файл аттары жазылыш к #~ msgid "Premature end of file" #~ msgstr "Файлдын соңу эрте келди" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Оңолбогон ката: иш бүттү " + #~ msgid "block size" #~ msgstr "бир блоктун көлөмү" diff --git a/po/ms.gmo b/po/ms.gmo index 28f239c7bcaf40f81771ccb7caeaf78a10248b65..6674dc5e99d0ee62cf6e21205e1792d4fe11bdad 100644 GIT binary patch delta 2605 zcmYk-Z%oxy9LMo5!sQAfp_ou2_o7nZ1-*Z`Dqv!ym;#C=_y>)sh%iwCS#7!9j5am4 zWMfzx^GVBwL0gLl&RUyornGwCY|A$1B^|ZZCXaG!ZvA3DAH^@+_dj4M_tO}~jO^qa z*I-2Dh@;uleG zdJC2Ee~_PAA$cyt)tHN|=*Od|j1OT<9e+Ya4^AN;yU#@(cu9l4&qK0qmB^ae7E}iZ zQA^Z^TKiK-GVDBRz)9yd6>4oap&rbcvC$-g?dPlMjr&n(nY5Vh7Vs5kF% z_s5Y(?W}VgbxI<5~;{rPx1{XQ0?5~0$Bdf;7L zj~CF7cabbxDzniK@{lH5hsxM4*WT{hPoU2GD3;(&RAzLkgaXtOwjgtf**jD;@F;3? zTt*$MIBMYeyoQ#f05!2%)c0?pmhL?2x$CHu&!95&8}hMxT$IsFI@iEHT!-~oqVqpM z<#8G&uoi#B8eGCc=~T3!COCjm97AosIBv!q(xUce}1)?i*3N{5WdO&md#jIn<{88p*zWhostO zkbP-?qaSnWJf`zrK}9L5Lk-mG?t9VC{YliO8AEk^3E5}%Eoy+h~K^?R!x#+K=<`Bx;>5IE(?IkP z5n^u9fX~fo=%P->ZMSRF#Hw9Ark$v=IZ5Ko9;L1gwTGy1?MjzY?j@MK^${wWNfOuR zx$blKTIZ(-W$_i)){jpT%G^AnP3J$AN-gmk@e-l^@PE-J(fX@Y5>FGmh`mG+(M+Tf zbIS&9bShNp2%QuaKk>RMuI$8Db^Z@hdC@iY;sIityYI$QqJ!8$@GsmN2^FoU)_x;V zPm~eb8`=jdhl%}!{@AEAB}rTlag7oMdgvH&gs35&Ayi%_v{O~uiB4iI5g>FDS_o|< zHh$u-qE3&Fq)IqR;@ZkJL=+R7CKqOwrVsDWX_&l{Q|HYN1xnXKY|Czm*oA5>bD?`{A<8kK2XCJR0ko{il0Sw z^b%_CKSiy4&UyX~>C>#_TtHA+V4PR<^c9F;%QWWY0O>&=c3L=HR}4>T~yTJII4r^ z(1-6h4KCvro>Lj!!tF@*&2CitgGdu|0+q3MozFjUKEH&z|8b<_Myy6jk$>iWe(3$Q^Ss7d z$lxYa|7}=gQ+b%m4S2@!Yt%~qMz+sv$XQrX4Js4u&htUkULHY?iFpgPfD3pt{)syE zc{I`)C`C=I4t0oo(Pn$h5EZ5V8BD{M(ZVUz{hvmq>{rx4@%)z2a~4|YMV+B$RL5PY zi4UOqe*)F-1k#0h8_V#!T=K7#yUC|cZ50;aAgbZ>$ZnW(s19aOhwTsKn3!Y^g08Oz z*$uM=)lUcNFpeWl&2iM;PoXCGE$aJo>&d@fEMY^m(rjFcUerK-RKr$`!9i38!nh2d zM6EF5_!??}k5TQuLS<^+c^|`Sm8mR@#{!#50u>)>Z~UkgbfN}SsUx&KDmwAQ#7;to zb|cYETwShy#lD4_?z?8K5+IaPrBg*GJ4}!<^B}Q}xQoak z*v4qlZ?bkmE80i&5f-7MbD(nn0@0uM{9Cup9v(u3_MN|!rkYSDh6trzrI^t6sB9&4 zs#TOZos%{~+qj=-B}Vlz=j+)X4By4w0Z5=Y#w@oNYjiu;IL2^Ae4m4_BEgV;*k zNmLN}4OdC1covBM7f#hXoM%6F5iTN+7$EK?bTd?LBebp2qSLIawpciS(SxYd+d28o zvit;hU!cFY#~K+3hl2gRR(CMm(=|L09*z8!+?GBR*#AGTCTmwUxRMHe1>Qo-TjVeH zc?ydn6Yh!0ri`Vo%_GZZaL-_%|G%#$Pi2?5 F{sCy*0`C9- diff --git a/po/ms.po b/po/ms.po index 5f667b9..87f2424 100644 --- a/po/ms.po +++ b/po/ms.po @@ -2,14 +2,16 @@ # Copyright (C) 2002 Free Software Foundation, Inc. # Hasbullah Bin Pit , 2002. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.13.25\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2002-11-23 02:38+0800\n" "Last-Translator: Hasbullah Bin Pit \n" "Language-Team: Malay \n" +"Language: ms\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -87,7 +89,7 @@ msgstr "" "\n" "Lapor pepijat ke .\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Ralat sistem tidak diketahui" @@ -99,8 +101,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -138,56 +140,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: opsyen `%s' adalah kabur\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: opsyen `--%s' tidak mengizinkan hujah\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: opsyen %c%s' tidak mengizinkan hujah\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: opsyen `%s' memerlukan hujah\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: opsyen tidak dikenali `--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: opsyen tidak dikenali '%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: opsyen tidak sah -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: opsyen memerlukan hujah -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: opsyen `-W %s' adalah kabur\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: opsyen `-W %s' tidak mengizinkan hujah\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: opsyen `%s' memerlukan hujah\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "memori keletihan" @@ -515,191 +522,191 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Tak boleh laksanakan shell jauh" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Hala rayauan diluar julat" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Mod tidak sah diberi pada opsyen" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Setem masa tidak sah" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Offset rayauan diluar julat" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "panjang pita tidak sah" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Offset rayauan diluar julat" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: eof tak matang\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "%s: opsyen tidak sah -- %c\n" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "EOF tanpa diduga pada arkib" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "%s: Tak dapat rayau ke %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Arahan sampah" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Ia nampaknya bukan seperti arkib tar" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Jumlah byte ditulis: %s (%sB, %sB/s)\n" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Jumlah byte ditulis: %s (%sB, %sB/s)\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(paip)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Nilai tidak sah bagi record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Tiada nama arkib diberi" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Tak dapat menentusahkan arkib stdin/stdout" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Tak dapat mengemaskini arkib termampat" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Pada permulaan pita, keluar sekarang" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Terlalu banyak ralat, keluar" -#: src/buffer.c:744 +#: src/buffer.c:821 #, fuzzy, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Saiz rekod = %lu blok" msgstr[1] "Saiz rekod = %lu blok" -#: src/buffer.c:765 +#: src/buffer.c:842 #, fuzzy, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Blok tidak dijajar (%lu byte) pada arkib" msgstr[1] "Blok tidak dijajar (%lu byte) pada arkib" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "tak dapat backspace fail arkib; ia mungkin tak boleh dibaca tanpa -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: mengandungi nombor volum yg tidak sah" -#: src/buffer.c:963 +#: src/buffer.c:1037 #, fuzzy msgid "Volume number overflow" msgstr "Nombor volum melimpah" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Menyedia volum #%d bagi %s dan tekan return: " # libgnomeui/gnome-app-helper.c:127 -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "EOF dimana maklumbalas pengguna dijangka" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "AMARAN: Arkib tidak lengkap" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -711,71 +718,71 @@ msgstr "" " ! Spawn subshell\n" " ? Cetak senarai ini\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Tiada volum baru; keluar.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, fuzzy, c-format msgid "%s command failed" msgstr "Arahan '%s' gagal" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s tidak bersambung pada volum ini" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s tidak bersambung pada volum ini" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s adalah salah saiz (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Volum ini tidak dalam turutan" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Arkib tidak dilabelkan supaya memadan %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Volum %s tidak sepadan %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "" @@ -786,20 +793,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Hanya boleh membaca %lu drpd %lu byte" msgstr[1] "Hanya boleh membaca %lu drpd %lu byte" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Kandungan berlainan" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "EOF tanpa diduga pada arkib" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Jenis fail berbeza" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Mod berbeza" @@ -815,143 +822,143 @@ msgstr "Gid berbeza" msgid "Mod time differs" msgstr "Masa mod berbeza" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Saiz berbeza" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Tidak dipautkan ke %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symlink berbeza" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Nombor beranti berbeza" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Tentusah" -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Jenis fail tak dikenali '%c', berlainan dengan fail normal" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" -#: src/compare.c:599 +#: src/compare.c:593 #, fuzzy, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "GAGAL TENTUSAH: %d pengepala tak sah dikesan" msgstr[1] "GAGAL TENTUSAH: %d pengepala tak sah dikesan" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "nilai %s diluar julat %s %s..%s; menggantikan %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "nilai %s diluar julat %s %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Menjana pengepala oktal negatif" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, fuzzy, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: fail tidak berubah; tidak dilonggokkan" -#: src/create.c:634 +#: src/create.c:621 #, fuzzy, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: fail tidak berubah; tidak dilonggokkan" -#: src/create.c:661 +#: src/create.c:648 #, fuzzy, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: fail tidak berubah; tidak dilonggokkan" -#: src/create.c:1078 +#: src/create.c:1062 #, fuzzy, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Fail mengucup sebanyak %s byte; pad dengan sifar" msgstr[1] "%s: Fail mengucup sebanyak %s byte; pad dengan sifar" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: fail adalah pada sistemfail lain; tidak dilonggokkan" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Jenis fail tak dikenali; fail diabaikan" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "Pautan ke %s\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: fail tidak berubah; tidak dilonggokkan" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: fail adalah arkib; tidak dilonggokkan" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: fail berubah bila kami membacanya" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: soket diabaikan" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: pintu diabaikan" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Melangkah ke pengepala berikut" @@ -959,75 +966,75 @@ msgstr "Melangkah ke pengepala berikut" msgid "Deleting non-header from archive" msgstr "Memadam bukan-pengepala drpd arkib" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, fuzzy, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: setem masa %s adalah %lu pada masa akan datang" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Ketidakkonsistenan luar dugaan bila membuat direktori" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Direktori ditukarnama sebelum statusnya boleh diekstrak" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Mengekstrak fail bersambung sebagai fail biasa" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Cuba mengekstrak pautan simbolik sebagai pautan keras" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Tak dapat ekstrak -- fail bersambung dari volum lain" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Penghujungan tanpa diduga data imej PNM" -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Jenis fail tak dikenali '%c', diekstrak sebagai fail biasa" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Tak dapat backup fail ini" -#: src/extract.c:1402 +#: src/extract.c:1568 #, fuzzy, c-format msgid "Cannot rename %s to %s" msgstr "%s: Tak dapat menukarnama ke %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Direktori telah ditukarnama" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Direktori telah ditukarnama" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Direktori adalah baru" @@ -1139,172 +1146,174 @@ msgstr "%s: Memadam %s\n" msgid "%s: Cannot remove" msgstr "%s: tak dapat buang" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blok %s: ** Blok TIADA **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blok %s: ** Akhir Fail **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Pengepala kosong dimana nilai %s numerik dijangka" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "Nilai oktal arkib %.*s diluar julat %s; anggap kedua-dua pelengkap" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Nilai oktal arkib %.*s diluar julat %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Rentetan %s base-64 ditandatangani arkibadalah diluar julat %s " -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Nilai base-256 arkub adalah diluar julat %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Arkib mengandungi %.*s dimana nilai %s numerik dijangka" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Nilai %s arkib adalah dijuar julat %s %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr "Pautan ke %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr "jenis fail tak diketahui %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Pengepala Volum--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Bersambung pada byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Mencipta direktori:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Tak dapat tukar direktori kerja" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Menukarnama %s ke %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Tak dapat menukarnama ke %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Menukarnama %s kembali ke %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Tak dapat simpan direktori kerja" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Tak dapat tukar direktori kerja" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Fail dibuang sebelum kami membacanya" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Fail dibuang sebelum kami membacanya" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "proses anak" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "saluran antaraproses" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Tak dijumpai pada arkib" -#: src/names.c:622 +#: src/names.c:615 #, fuzzy, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Tak dijumpai pada arkib" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Arkib tidak dilabelkan supaya memadan %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1328,7 +1337,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 #, fuzzy msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " @@ -1348,7 +1357,7 @@ msgstr "" "verbose.\n" " %s -xf arkib.tar # Ekstrak semua fail drpd arkib.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1360,80 +1369,80 @@ msgid "" " never, simple always make simple backups\n" msgstr "" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" -#: src/tar.c:394 +#: src/tar.c:395 #, fuzzy msgid "create a new archive" msgstr "EOF tanpa diduga pada arkib" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1441,565 +1450,565 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 #, fuzzy msgid "extract files to standard output" msgstr "Ralat ketika menulis ke output piawai" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" -#: src/tar.c:556 +#: src/tar.c:557 #, fuzzy msgid "create/list/extract multi-volume archive" msgstr "Tak dapat menentusah arkib multi-volume" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" -#: src/tar.c:582 +#: src/tar.c:583 #, fuzzy msgid "Archive format selection:" msgstr "opsyen format arkib konflik" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Opsyen mampatan konflik" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" -#: src/tar.c:641 +#: src/tar.c:642 #, fuzzy msgid "change to directory DIR" msgstr "Tak dapat tukar direktori kerja" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" -#: src/tar.c:682 +#: src/tar.c:683 #, fuzzy msgid "don't strip leading `/'s from file names" msgstr "Membuang awalan `%.*s' drpd nama ahli" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "Volum %s tidak sepadan %s" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2007,290 +2016,295 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" +msgstr "Mod tidak sah diberi pada opsyen" + +#: src/tar.c:758 +msgid "print file time to its full resolution" msgstr "" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Anda tak boleh nyatakan lebih drpd satu opsyen `-Acdtrux'" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Opsyen mampatan konflik" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr "jenis fail tak diketahui %s\n" -#: src/tar.c:1017 +#: src/tar.c:1020 #, fuzzy msgid "Date sample file not found" msgstr "Fail tarikh tidak dijumpai" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Mengganti %s bagi format tarikh tak diketahui %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, fuzzy, c-format msgid "%s: file list already read" msgstr "%s: fail adalah arkib; tidak dilonggokkan" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "%s: fail adalah arkib; tidak dilonggokkan" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Faktor pemblokan tidak sah" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "panjang pita tidak sah" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Kumpulan tidak sah" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Mod tidak sah diberi pada opsyen" -#: src/tar.c:1894 +#: src/tar.c:1912 #, fuzzy msgid "Invalid number" msgstr "Nombot inod tidak sah" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Pemilik tidak sah" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Saiz rekod tidak sah" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Saiz rekod mesti dalam gandaan %d." -#: src/tar.c:2000 +#: src/tar.c:2019 #, fuzzy msgid "Invalid number of elements" msgstr "panjang pita tidak sah" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Opsyen `-[0-7][lmh]' tak disokong oleh tar *ini*" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "OPsyen lama `%c' memerlukan hujah." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 #, fuzzy msgid "Multiple archive files require `-M' option" msgstr "Fail akrib beraneka memerlukan opsyen `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Tak boleh gabung --listed-incremental dengan --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, fuzzy, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Label volum adalah terlalu panjang (had adalah %lu byte)" msgstr[1] "%s: Label volum adalah terlalu panjang (had adalah %lu byte)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Tak dapat menentusah arkib multi-volume" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Tak dapat menentusahkan arkib termampat" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Tak dapat menggunakan arkib multi-volume termampat" -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "Tak dapat mengemaskini arkib termampat" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Secara dayus enggan mencipta arkib kosong" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Opsyen `-Aru' tak serasi dengan `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Anda mesti nyatakan satu drpd opsyen `-Acdtrux'" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2302,84 +2316,84 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Fail mengecil sebanyak %s byte" msgstr[1] "%s: Fail mengecil sebanyak %s byte" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Setem masa diluar julat" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "Rentetan %s base-64 ditandatangani arkibadalah diluar julat %s " -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, fuzzy, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Nilai %s arkib adalah dijuar julat %s %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2420,247 +2434,258 @@ msgstr "Menulis titiksemak %d" msgid "Read checkpoint %u" msgstr "Membaca titiksemak %d" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Menjana fail data untuk suit ujian GNU tar.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Opsyen mampatan konflik" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "Ralat ketika menulis ke output piawai" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr "" "\n" "Pengunaan : %s [OPSYEN]...\n" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Setem masa tidak sah" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Nombor inod diluar julat" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Ralat sistem tidak diketahui" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Tak dapat tutup" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr "jenis fail tak diketahui %s\n" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "%s: Tak dapat rayau ke %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "%s: Tak dapat rayau ke %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, fuzzy, c-format msgid "Command failed with status %d\n" msgstr "Anak mati dengan isyarat %d" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "Nama fail modul" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Tak dapat simpan direktori kerja" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s: Tak dapat menukarnama ke %s" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: opsyen salah -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Membaca %s\n" + #, fuzzy #~ msgid "" #~ "\n" @@ -2669,12 +2694,6 @@ msgstr "Nama fail modul" #~ "\n" #~ "Lapor pepijat ke .\n" -#~ msgid "Reading %s\n" -#~ msgstr "Membaca %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Ralat adalah tidak boleh dipulihkan: keluar sekarang" - #, fuzzy #~ msgid "filter the archive through compress" #~ msgstr "%s: fail adalah arkib; tidak dilonggokkan" @@ -2717,6 +2736,9 @@ msgstr "Nama fail modul" #~ msgid "Premature end of file" #~ msgstr "Akhir fail tak matang" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Ralat adalah tidak boleh dipulihkan: keluar sekarang" + #~ msgid "block size" #~ msgstr "saiz blok" diff --git a/po/nb.gmo b/po/nb.gmo index 82630b30696cd67dd945795c264af0910c7d3b18..3ebdbf53bac0b6883ca248c6926f3d443c19a773 100644 GIT binary patch delta 464 zcmXZXKS%;`7{>8eB7-xvH2W`Hnf6DL^AxHZ+6n^4LK+>yAaD?BakwdHEtfVYCzt3J zhaA+Q%^`58miAg2soBj*EnF4|RTsTUf&-^w7lN|NC#;;W75pFSy7P3+fa2kuK7psI_kwp$y3?kS>ZP-Q)dczHj zlCqDxs6{SO3${>$IvB%O)WV;r0aJXW#WJYH9Mqg6)Iz5w2fgtHuHh|?Vi*1R=pB!w j$3j_a)6ScA&at-BR<3?y)Qv)^Qa&%0PaM-*2{in_jzu&r delta 453 zcmXZXJugFH7{>9t5pDIACT+auaB>ihI4?wWkXR(7U%()d7z`GJNg`+KW>HfIv9UC1 zG-2sxkQmBhXEESI_+MiBJ?B2>+}HK=-AA|6OT_yLGcRM7H?v08Y!)xEhz~f1PdJAk z7+^YQR=^r+zKv^mj5BzP4nF_C|HgHmON7j09YZ|HTl}}+hQS1bK5D@ij$n=y6`Dp5 zH&H(x;tIBK7+;WX_KxHDgHxE|7Nh7PD{TWSSVvv#pctD?ayVm9!WODw8x{11i}^y-NN9QOYiE diff --git a/po/nb.po b/po/nb.po index 4dfcbff..99a13b1 100644 --- a/po/nb.po +++ b/po/nb.po @@ -2,14 +2,16 @@ # Copyright (C) 1996 Free Software Foundation, Inc. # Karl Anders Øygard , 1996. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: GNU tar 1.12\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 1997-06-05 19:39 MET DST\n" "Last-Translator: Espen Skjelnes Johnsen \n" "Language-Team: Norwegian-bokmål \n" +"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" @@ -85,7 +87,7 @@ msgstr "Tast msgid "Report bugs to %s.\n" msgstr "" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Unkjent systemfeil" @@ -97,8 +99,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -136,56 +138,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "Gammelt flagg «%c» behøver et argument." -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "Gammelt flagg «%c» behøver et argument." -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "Gammelt flagg «%c» behøver et argument." -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "Gammelt flagg «%c» behøver et argument." -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "Ugyldig verdi for record_size" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "Gammelt flagg «%c» behøver et argument." -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "Gammelt flagg «%c» behøver et argument." -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "Gammelt flagg «%c» behøver et argument." +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "Gammelt flagg «%c» behøver et argument." + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 #, fuzzy msgid "memory exhausted" @@ -514,195 +521,195 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Kan ikke eksekvere \"remote shell\"" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Ugyldig modus gitt i flagg" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Ugyldig datoformat «%s»" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Ugyldig eier gitt i flagg" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: For tidlig filslutt\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Ugyldig verdi for record_size" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Uventet filslutt i ødelagte navn" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "Kan ikke åpne %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Ugyldig kommando" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Dette ser ikke ut som et tar-arkiv" # -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Totalt antall bytes skrevet: " # -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 #, fuzzy msgid "Total bytes read" msgstr "Totalt antall bytes skrevet: " # -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Totalt antall bytes skrevet: " -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Ugyldig verdi for record_size" # -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Arkivnavn er ikke oppgitt" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Kan ikke verifisere stdin/stdout-arkiv" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" # -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Kan ikke oppdatere komprimerte arkiver" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "På begynnelsen av båndet, avslutter nå" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "For mange feil, avslutter" -#: src/buffer.c:744 +#: src/buffer.c:821 #, fuzzy, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Blokkstørrelse = %d enheter" msgstr[1] "Blokkstørrelse = %d enheter" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "" msgstr[1] "" -#: src/buffer.c:842 +#: src/buffer.c:919 #, fuzzy msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Kunne ikke gå tilbake i arkivfilen. Den kan være uleselig uten -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, fuzzy, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "\aGjør klar volum nummer %d for %s og trykk return: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "EOF der svar fra bruker var forventet" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "ADVARSEL: Arkivet er ufullstendig" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -714,71 +721,71 @@ msgstr "" " ! Start et shell\n" " ? Skriv denne listen\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Ikke nytt volum; avslutter.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s fortsetter ikke i dette volumet" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s fortsetter ikke i dette volumet" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, fuzzy, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s har feil størrelse (%ld != %ld + %ld)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Dette volumet kommer ute av rekkefølge" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, fuzzy, c-format msgid "Archive not labeled to match %s" msgstr "Arkivet er ikke navngitt for å passe med «%s»" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, fuzzy, c-format msgid "Volume %s does not match %s" msgstr "Volumet «%s» stemmer ikke overens med «%s»" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "Arkiv %s sluttet ikke ved en blokkgrense" @@ -790,22 +797,22 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Kunne bare lese %d av %ld bytes" msgstr[1] "Kunne bare lese %d av %ld bytes" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 #, fuzzy msgid "Contents differ" msgstr "Modus er ulik" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Uventet filslutt i arkivet" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 #, fuzzy msgid "File type differs" msgstr "Størrelse er ulik" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Modus er ulik" @@ -821,145 +828,145 @@ msgstr "Gid er ulik" msgid "Mod time differs" msgstr "Modifiseringstid er ulik" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Størrelse er ulik" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Ikke linket til %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symbolsk link er ulik" -#: src/compare.c:321 +#: src/compare.c:316 #, fuzzy msgid "Device number differs" msgstr "Enhetsnummer er endret" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verifisering " -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "Ukjent filtype «%c» for %s, diffet som en vanlig fil" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" -#: src/compare.c:599 +#: src/compare.c:593 #, fuzzy, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "VERIFIKASJONSFEIL: %d ukjente arkivhoder funnet" msgstr[1] "VERIFIKASJONSFEIL: %d ukjente arkivhoder funnet" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, fuzzy, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: er uendret; ikke lagret" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" -#: src/create.c:661 +#: src/create.c:648 #, fuzzy, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: er uendret; ikke lagret" -#: src/create.c:1078 +#: src/create.c:1062 #, fuzzy, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "Filen %s krympet med %d bytes, fyller ut med nuller" msgstr[1] "Filen %s krympet med %d bytes, fyller ut med nuller" -#: src/create.c:1175 +#: src/create.c:1158 #, fuzzy, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: På et annet filesystem. Ikke lagret" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 #, fuzzy msgid "contents not dumped" msgstr " (minnet lagret)" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Ukjent filtype; filen ble ignorert" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr " link til %s\n" -#: src/create.c:1543 +#: src/create.c:1688 #, fuzzy, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: er uendret; ikke lagret" -#: src/create.c:1552 +#: src/create.c:1697 #, fuzzy, c-format msgid "%s: file is the archive; not dumped" msgstr "%s er arkivet; ikke lagret" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Hopper til neste startseksjon" @@ -967,75 +974,75 @@ msgstr "Hopper til neste startseksjon" msgid "Deleting non-header from archive" msgstr "Tar bort ikke-hodedata fra arkivet" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Ekstraherer sammenhengende filer som vanlige filer" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Forsøker å ekstrahere symbolske linker som harde linker" -#: src/extract.c:1183 +#: src/extract.c:1339 #, fuzzy, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "Kan ikke ekstrahere «%s» -- filen fortsetter fra et tidligere volum" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Uventet filslutt i arkivfilen" -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "Ukjent filtype «%c» for %s, ekstrahert som en vanlig fil" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Kunne ikke lage sikkerhetskopi av denne filen" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Kan ikke endre navn på %s til %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "Filkatalogen %s har endret navn" -#: src/incremen.c:494 +#: src/incremen.c:486 #, fuzzy, c-format msgid "%s: Directory has been renamed" msgstr "Filkatalogen %s har endret navn" -#: src/incremen.c:539 +#: src/incremen.c:531 #, fuzzy, c-format msgid "%s: Directory is new" msgstr "Filkatalogen %s er ny" @@ -1149,174 +1156,174 @@ msgstr "%s: Sletter %s\n" msgid "%s: Cannot remove" msgstr "Kan ikke slette %s" -#: src/list.c:115 +#: src/list.c:130 #, fuzzy, c-format msgid "%s: Omitting" msgstr "Utelater %s" -#: src/list.c:133 +#: src/list.c:146 #, fuzzy, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blokk %10ld: ** Blokk med NUL-er **\n" -#: src/list.c:159 +#: src/list.c:172 #, fuzzy, c-format msgid "block %s: ** End of File **\n" msgstr "blokk %10ld: ** Slutt på fil **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, fuzzy, c-format msgid "block %s: " msgstr "blokk %10ld: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" -#: src/list.c:821 +#: src/list.c:836 #, fuzzy, c-format msgid "Archive base-256 value is out of %s range" msgstr "Dette volumet kommer ute av rekkefølge" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " link til %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, fuzzy, c-format msgid " unknown file type %s\n" msgstr " ukjent filtype «%c»\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Volumhode--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, fuzzy, c-format msgid "--Continued at byte %s--\n" msgstr "--Fortsetter ved byte %ld--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Lager filkatalog:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Kan ikke gå til filkatalogen %s" + +#: src/misc.c:571 #, fuzzy, c-format msgid "Renaming %s to %s\n" msgstr "Endret navn på %s til %s" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, fuzzy, c-format msgid "%s: Cannot rename to %s" msgstr "Kan ikke endre navn på %s til %s" -#: src/misc.c:534 +#: src/misc.c:604 #, fuzzy, c-format msgid "Renaming %s back to %s\n" msgstr "Endret navn på %s til %s" -#: src/misc.c:669 -#, fuzzy -msgid "Cannot save working directory" -msgstr "Kan ikke gå til filkatalogen %s" - -#: src/misc.c:675 -#, fuzzy -msgid "Cannot change working directory" -msgstr "Kan ikke gå til filkatalogen %s" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "Filkatalogen %s har endret navn" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Finnes ikke i arkivet" -#: src/names.c:622 +#: src/names.c:615 #, fuzzy, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Finnes ikke i arkivet" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Arkivet er ikke navngitt for å passe med «%s»" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1340,7 +1347,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1351,7 +1358,7 @@ msgid "" " tar -xf archive.tar # Extract all files from archive.tar.\n" msgstr "" -#: src/tar.c:356 +#: src/tar.c:357 #, fuzzy msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" @@ -1375,80 +1382,80 @@ msgstr "" " ellers enkle\n" " never, simple lag enkle sikkerhetskopier\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" -#: src/tar.c:394 +#: src/tar.c:395 #, fuzzy msgid "create a new archive" msgstr "Uventet filslutt i arkivet" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1456,568 +1463,568 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" -#: src/tar.c:452 +#: src/tar.c:453 #, fuzzy msgid "remove files after adding them to the archive" msgstr "Tar bort enhetsnavn fra navn i arkivet" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" -#: src/tar.c:556 +#: src/tar.c:557 #, fuzzy msgid "create/list/extract multi-volume archive" msgstr "Kan ikke verifisere arkiv som går over flere volum" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" -#: src/tar.c:582 +#: src/tar.c:583 #, fuzzy msgid "Archive format selection:" msgstr "Arkivér til stdin" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Konflikt i kompresjonsflagg" -#: src/tar.c:615 +#: src/tar.c:616 #, fuzzy msgid "use archive suffix to determine the compression program" msgstr "Kan ikke skrive til komprimeringsprogrammet" -#: src/tar.c:617 +#: src/tar.c:618 #, fuzzy msgid "do not use archive suffix to determine the compression program" msgstr "Kan ikke skrive til komprimeringsprogrammet" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" -#: src/tar.c:641 +#: src/tar.c:642 #, fuzzy msgid "change to directory DIR" msgstr "Kan ikke gå til filkatalogen %s" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" # -#: src/tar.c:682 +#: src/tar.c:683 #, fuzzy msgid "don't strip leading `/'s from file names" msgstr "Tar bort ledende «/» fra absolutte linker" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "Volumet «%s» stemmer ikke overens med «%s»" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2025,292 +2032,297 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" +msgstr "Ugyldig modus gitt i flagg" + +#: src/tar.c:758 +msgid "print file time to its full resolution" msgstr "" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" -#: src/tar.c:761 +#: src/tar.c:764 #, fuzzy msgid "ask for confirmation for every action" msgstr "Kan ikke lese bekreftelse fra brukeren" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Du kan ikke angi mer enn ett av «-Acdtrux»-flaggene" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Konflikt i kompresjonsflagg" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr "Ukjent mønster «%s»" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Mer enn én grense-dato" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "Ugyldig eier gitt i flagg" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Ugyldig modus gitt i flagg" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "" -#: src/tar.c:1916 +#: src/tar.c:1934 #, fuzzy msgid "Invalid owner" msgstr "Ugyldig eier gitt i flagg" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 #, fuzzy msgid "Invalid record size" msgstr "Ugyldig verdi for record_size" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Blokkstørrelse må være delbart på %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, fuzzy, c-format msgid "Unknown density: `%c'" msgstr "Ukjent mønster «%s»" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Flaggene «-[0-7][lmh]» støttes ikke av *denne* implementasjonen av tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Gammelt flagg «%c» behøver et argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 #, fuzzy msgid "Multiple archive files require `-M' option" msgstr "Ved flere arkivfiler behøves «-M»-flagget" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "" msgstr[1] "" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Kan ikke verifisere arkiv som går over flere volum" # -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Kan ikke verifisere komprimerte arkiver" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Kan ikke bruke komprimerte arkiv som går over flere volum" # -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "Kan ikke oppdatere komprimerte arkiver" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "For feig til å lage et tomt arkiv" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Flaggene «-Aru» er inkompatible med «-f -»" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Du må angi ett av «-Acdtrux»-flaggene" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2322,83 +2334,83 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Filen krympet med %d bytes, (øh!)" msgstr[1] "%s: Filen krympet med %d bytes, (øh!)" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2439,244 +2451,252 @@ msgstr "Skriver kontrollpunkt %d" msgid "Read checkpoint %u" msgstr "Leser kontrollpunkt %d" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Genrerer datafiler for GNU tar testpakke.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Konflikt i kompresjonsflagg" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr "" "\n" "Bruk: %s [FLAGG]...\n" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 #, fuzzy msgid "Update the access and modification times of FILE" msgstr "%s: Kunne ikke endre aksess- og modifiseringstider" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Ugyldig datoformat «%s»" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Unkjent systemfeil" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, fuzzy, c-format msgid "cannot open `%s'" msgstr "Kan ikke åpne %s" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Kan ikke eksekvere %s" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr "Ukjent mønster «%s»" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "Kan ikke gjøre «stat» på %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "Kan ikke åpne %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Ødelagte filnavn--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Kan ikke gå til filkatalogen %s" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "Kan ikke endre navn på %s til %s" + #~ msgid "Reading %s\n" #~ msgstr "Leser %s\n" diff --git a/po/nl.gmo b/po/nl.gmo index 3e32023c424e6e86c188999c93d5e9f945cc6bb6..8decb5c7d1f39c78c27eff3c1ac0f0dba17d8576 100644 GIT binary patch delta 17129 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 delta 11984 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≷_De-T&VZ(A5%xP4Tq@X*~pm;J_`PE`^UgMmakm*??kYngiQb%%@h z_IKG)FE+8qzBs~u=f#ob;tGQWMOi_2xJ~$wD?E1J&k;@jXWBJ&Ow=^blqp_+0xMI} zf49HLZO=Lw7v6fXSw#4!SH5xCzZ^~~m+1F+@^SU4VKN}HFI9e?t+Eb7<$>*J@OJ@fH1v3NQ+zD)q@Vw*ix$H3~Hrmxs)^g?A%};g+ z&p5dvqS7R$!mAN$6FTWS)FpcYv2bwzfl_Czt8F(?xBvyg&}qG&wi? zO%l#uOH=RA-)?eU+)MHUoJ3LpGr lk}KTqvuIbN=>@)^_isD5uw+{V^4)q+CQJ$B+6AA_`!7yWhZ+C? diff --git a/po/nl.po b/po/nl.po index a671c82..6b5efba 100644 --- a/po/nl.po +++ b/po/nl.po @@ -1,21 +1,25 @@ # Dutch translations for tar. -# Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +# Copyright (C) 2010 Free Software Foundation, Inc. # This file is distributed under the same license as the tar package. # # Elros Cyriatan , 2004. -# Benno Schulenberg , 2005, 2006, 2007, 2008. +# Erwin Poeze , 2009. +# Benno Schulenberg , 2005, 2006, 2007, 2008, 2010. +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar-1.22\n" +"Project-Id-Version: tar-1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2009-03-25 21:42+0100\n" -"Last-Translator: Erwin Poeze \n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-12 10:28+0200\n" +"Last-Translator: Benno Schulenberg \n" "Language-Team: Dutch \n" +"Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 1.0\n" #: gnu/argmatch.c:135 #, c-format @@ -89,7 +93,7 @@ msgstr "" "Rapporteer gebreken in het programma aan %s;\n" "meld fouten in de vertaling aan .\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Onbekende systeemfout" @@ -101,8 +105,8 @@ msgstr "deze hulptekst tonen" msgid "give a short usage message" msgstr "een korte gebruikssamenvatting tonen" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NAAM" @@ -140,56 +144,61 @@ msgstr "**Interne programmafout**: optie had herkend moeten worden!?" msgid "write error" msgstr "schrijffout" -#: gnu/getopt.c:531 gnu/getopt.c:547 -#, fuzzy, c-format +#: gnu/getopt.c:529 gnu/getopt.c:545 +#, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: optie '%s' is niet eenduidig\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 -#, fuzzy, c-format +#: gnu/getopt.c:578 gnu/getopt.c:582 +#, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: optie '--%s' staat geen argument toe\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 -#, fuzzy, c-format +#: gnu/getopt.c:591 gnu/getopt.c:596 +#, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: optie '%c%s' staat geen argument toe\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 -#, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: optie '%s' vereist een argument\n" +#: gnu/getopt.c:639 gnu/getopt.c:658 +#, c-format +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: optie '--%s' vereist een argument\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 -#, fuzzy, c-format +#: gnu/getopt.c:696 gnu/getopt.c:699 +#, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: onbekende optie '--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 -#, fuzzy, c-format +#: gnu/getopt.c:707 gnu/getopt.c:710 +#, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: onbekende optie '%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 -#, fuzzy, c-format +#: gnu/getopt.c:759 gnu/getopt.c:762 +#, c-format msgid "%s: invalid option -- '%c'\n" -msgstr "%s: ongeldige optie -- %c\n" +msgstr "%s: ongeldige optie -- '%c'\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 -#, fuzzy, c-format +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 +#, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: optie vereist een argument -- %c\n" +msgstr "%s: optie vereist een argument -- '%c'\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 -#, fuzzy, c-format +#: gnu/getopt.c:885 gnu/getopt.c:901 +#, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: optie '-W %s' is niet eenduidig\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 -#, fuzzy, c-format +#: gnu/getopt.c:925 gnu/getopt.c:943 +#, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: optie '-W %s' staat geen argument toe\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: optie '-W %s' vereist een argument\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "onvoldoende geheugen beschikbaar" @@ -254,12 +263,12 @@ msgstr "^[nN]" #: gnu/version-etc.c:76 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "" +msgstr "In pakketvorm gebracht door %s (%s)\n" #: gnu/version-etc.c:79 #, c-format msgid "Packaged by %s\n" -msgstr "" +msgstr "In pakketvorm gebracht door %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's @@ -278,10 +287,11 @@ msgid "" "\n" msgstr "" "\n" -"Licentie GPLv3+: GNU GPL versie 3 of nieuwer .\n" "Dit is vrije software: u mag het vrijelijk wijzigen en verder verspreiden.\n" -"Er is GEEN GARANTIE, voor zover de wet dit toestaat.\n" +"De precieze licentie is GPL-3+: GNU General Public License versie 3 of " +"later.\n" +"Zie http://gnu.org/licenses/gpl.html voor de volledige (Engelse) tekst.\n" +"Deze software kent GEEN GARANTIE, voor zover de wet dit toestaat.\n" "\n" #. TRANSLATORS: %s denotes an author name. @@ -397,38 +407,36 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: gnu/version-etc.c:247 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Report bugs to: %s\n" msgstr "" -"Rapporteer gebreken in het programma aan %s;\n" +"\n" +"Rapporteer gebreken in het programma aan <%s>;\n" "meld fouten in de vertaling aan .\n" #: gnu/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report %s bugs to: %s\n" msgstr "" -"\n" -"Rapporteer gebreken in het programma aan <%s>;\n" +"Rapporteer gebreken in het programma '%s' aan <%s>;\n" "meld fouten in de vertaling aan .\n" #: gnu/version-etc.c:253 #, c-format msgid "%s home page: <%s>\n" -msgstr "" +msgstr "Webpagina van %s: <%s>\n" #: gnu/version-etc.c:255 -#, fuzzy, c-format +#, c-format msgid "%s home page: \n" -msgstr "%s-beginpagina: .\n" +msgstr "Webpagina van %s: \n" #: gnu/version-etc.c:258 -#, fuzzy msgid "General help using GNU software: \n" msgstr "" -"Algemene hulp bij het gebruik van GNU software: .\n" +"Algemene hulp bij gebruik van GNU-software: \n" #. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. #. Directly translating this to another language will not work, first because @@ -535,196 +543,190 @@ msgstr "standaarduitvoer" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Kan geen verbinding maken met %s: herleiding is mislukt" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Kan gindse shell niet uitvoeren" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Sprongrichting valt buiten bereik" -#: rmt/rmt.c:419 -#, fuzzy +#: rmt/rmt.c:438 msgid "Invalid seek direction" -msgstr "Ongeldige modus gegeven bij optie" +msgstr "Ongeldige sprongrichting" -#: rmt/rmt.c:427 -#, fuzzy +#: rmt/rmt.c:446 msgid "Invalid seek offset" -msgstr "Ongeldige grootte: %s" +msgstr "Ongeldige sprongpositie" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Sprongpositie valt buiten bereik" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 -#, fuzzy +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" -msgstr "Ongeldige bandlengte" +msgstr "Ongeldig byte-aantal" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 -#, fuzzy +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" -msgstr "Sprongpositie valt buiten bereik" +msgstr "Byte-aantal valt buiten bereik" -#: rmt/rmt.c:539 -#, fuzzy +#: rmt/rmt.c:558 msgid "Premature eof" -msgstr "rmtd: Voortijdig einde van bestand\n" +msgstr "Voortijdig einde van bestand" -#: rmt/rmt.c:582 -#, fuzzy +#: rmt/rmt.c:601 msgid "Invalid operation code" -msgstr "Hoofdbewerkingen:" +msgstr "Ongeldige bewerkingscode" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" -msgstr "" +msgstr "Bewerking wordt niet ondersteund" -#: rmt/rmt.c:645 -#, fuzzy +#: rmt/rmt.c:664 msgid "Unexpected arguments" -msgstr "Onverwacht einde-van-bestand in archief" +msgstr "Onverwachte argumenten" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" +"Een magneetband manipuleren, en opdrachten accepteren van een ander proces." -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "AANTAL" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" -msgstr "" +msgstr "debug-niveau instellen" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "BESTAND" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" -msgstr "" +msgstr "naam van debug-uitvoerbestand instellen" -#: rmt/rmt.c:696 rmt/rmt.c:764 -#, fuzzy, c-format +#: rmt/rmt.c:715 rmt/rmt.c:783 +#, c-format msgid "cannot open %s" -msgstr "Kan '%s' niet openen" +msgstr "kan %s niet openen" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "te veel argumenten" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Ongeldige opdracht" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Dit ziet er niet uit als een tar-archief" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Totaal aantal geschreven bytes" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Totaal aantal gelezen bytes" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Totaal aantal verwijderde bytes: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(pijp)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Ongeldige waarde voor recordgrootte" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Geen archiefnaam opgegeven" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Kan archieven op standaardinvoer of -uitvoer niet verifiëren" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Archief is gecomprimeerd. Gebruik optie '%s'." -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Kan ingepakte archieven niet bijwerken" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Aan het begin van de band -- tar sluit nu af." -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Te veel fouten -- tar sluit nu af." -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Recordgrootte = %lu blok" msgstr[1] "Recordgrootte = %lu blokken" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Niet-uitgelijnd blok (%lu byte) in archief" msgstr[1] "Niet-uitgelijnd blok (%lu bytes) in archief" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Kan niet terugzoeken in archiefbestand; het kan onleesbaar zijn zonder -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek() is niet gestopt op een recordgrens" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: bevat een ongeldig deelnummer" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Deelnummer-overloop" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Zet deel #%d voor %s klaar en druk op Enter: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "een lege tekst, terwijl gebruikersinvoer werd verwacht" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "WAARSCHUWING: Archief is onvolledig" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -736,65 +738,65 @@ msgstr "" " q tar afbreken\n" " y of Enter doorgaan\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! een subshell starten\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? dit lijstje tonen\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Geen nieuw deel -- tar sluit af.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Geen bestandsnaam opgegeven. Probeer het nog eens.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Ongeldige invoer. Typ ? voor hulp.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "Opdracht %s is mislukt" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s gaat mogelijk verder in dit deel: de kop bevat een afgekapte naam" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s gaat niet verder in dit deel" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s heeft een verkeerde grootte (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Dit deel valt buiten de reeks (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" -msgstr "Archief is niet gemerkt als overeenkomend met %s" +msgstr "Archief bevat geen label, kan niet overeenkomen met %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Deel %s komt niet overeen met %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -802,9 +804,9 @@ msgstr "" "%s: bestandsnaam is te lang om opgeslagen te worden in een GNU-meerdelenkop; " "afgekapt" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" -msgstr "write is niet gestopt op een blokgrens" +msgstr "schrijven is niet gestopt op een recordgrens" #: src/compare.c:95 #, c-format @@ -813,20 +815,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Kon slechts %lu van %lu byte lezen" msgstr[1] "Kon slechts %lu van %lu bytes lezen" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Inhouden verschillen" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Onverwacht einde-van-bestand in archief" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Bestandssoort verschilt" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Modus verschilt" @@ -842,144 +844,144 @@ msgstr "GID verschilt" msgid "Mod time differs" msgstr "Wijzigingstijd verschilt" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Grootte verschilt" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Niet gekoppeld aan %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symbolische koppeling verschilt" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Apparaatnummer verschilt" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verifiëren " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Onbekende bestandssoort '%c'; gedifft als gewoon bestand" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Archief bevat bestandsnamen waarvan de prefixen verwijderd zijn." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Een verificatie kan mogelijk de originele bestanden niet vinden." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "Verificatie is MISLUKT: %d ongeldige kop gevonden" msgstr[1] "Verificatie is MISLUKT: %d ongeldige koppen gevonden" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Een los blok met nullen op %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: map bevat cache-markering %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "waarde %s valt buiten bereik voor %s (%s..%s); wordt vervangen door %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "waarde %s valt buiten bereik voor %s (%s..%s)" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Er worden negatieve octale koppen gemaakt" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: bestandsnaam is te lang (max %d); niet gearchiveerd" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" "%s: bestandsnaam is te lang (kan niet worden gesplitst); niet gearchiveerd" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: koppelingsnaam is te lang; niet gearchiveerd" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Bestand is gekrompen met %s byte; aangevuld met nullen" msgstr[1] "%s: Bestand is gekrompen met %s bytes; aangevuld met nullen" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: bestand staat op een ander bestandssysteem; niet gearchiveerd" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "inhoud niet gearchiveerd" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Onbekende bestandssoort; bestand genegeerd" -#: src/create.c:1472 -#, fuzzy, c-format +#: src/create.c:1527 +#, c-format msgid "Missing links to %s." -msgstr "Ontbrekende koppelingen naar %s.\n" +msgstr "Ontbrekende koppelingen naar %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: bestand is ongewijzigd; niet gearchiveerd" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: bestand is het archief zelf; niet gearchiveerd" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "map is niet gearchiveerd" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: bestand is gewijzigd tijdens het lezen" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: socket genegeerd" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: deur genegeerd" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Alles tot aan volgende kop wordt overgeslagen" @@ -987,75 +989,75 @@ msgstr "Alles tot aan volgende kop wordt overgeslagen" msgid "Deleting non-header from archive" msgstr "Niet-kop wordt uit archief verwijderd" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: onwaarschijnlijk oude tijdsstempel %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: tijdsstempel %s ligt %s seconden in de toekomst" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Onverwachte inconsistentie tijdens aanmaken van map" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Map werd hernoemd voordat de status ervan kon worden bepaald" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Aaneengesloten bestanden worden uitgepakt als gewone bestanden" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "" "Poging om symbolische koppelingen als harde koppelingen uit te pakken..." -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" -msgstr "%s: Kan niet uitpakken -- bestand gaat door in een ander deel" +msgstr "%s: Kan niet uitpakken -- bestand gaat door vanuit een ander deel" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" -msgstr "Onverwachte lange-naamkop" +msgstr "Onverwachte langenaamkop" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Onbekende bestandssoort '%c'; uitgepakt als gewoon bestand" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Huidige %s is nieuwer of even oud" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Kan geen reservekopie van dit bestand maken" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Kan %s niet tot %s hernoemen" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Map is hernoemd van %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Map is hernoemd" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Map is nieuw" @@ -1167,35 +1169,35 @@ msgstr "%s: Verwijderen van %s...\n" msgid "%s: Cannot remove" msgstr "%s: Kan niet verwijderen" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Overgeslagen" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blok %s: ** Blok van NUL-tekens **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" -msgstr "blok %s: ** Einde-bestand **\n" +msgstr "blok %s: ** Einde-van-bestand **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Witruimte in kop waar numerieke waarde voor %s werd verwacht" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1203,144 +1205,145 @@ msgstr "" "aangenomen" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Octaalwaarde %.*s in archief valt buiten bereik voor %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Archief bevat ouderwetse grondtal-64 koppen" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Tekenreeks %s (met grondtal-64-met-teken) valt buiten bereik voor %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Grondtal-256 waarde in archief valt buiten bereik voor %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Archief bevat %.*s waar numerieke waarde voor %s werd verwacht" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Waarde %s in archief valt buiten bereik voor %s (%s..%s)" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " koppeling naar %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " onbekende bestandssoort %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Lange koppeling--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Lange naam--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Deelkop--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Verder bij byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Aanmaken van map:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Kan werkmap niet wijzigen" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Hernoemen van %s tot %s...\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Kan niet tot %s hernoemen" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Hernoemen van %s terug tot %s...\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Kan werkmap niet opslaan" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Kan werkmap niet wijzigen" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Bestand werd verwijderd voordat het gelezen kon worden" -#: src/misc.c:774 -#, fuzzy, c-format +#: src/misc.c:866 +#, c-format msgid "%s: Directory removed before we read it" -msgstr "%s: Bestand werd verwijderd voordat het gelezen kon worden" +msgstr "%s: Map werd verwijderd voordat deze gelezen kon worden" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "dochterproces" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "interproces-kanaal" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "Bestandsnamen bevatten jokertekens. Gebruik '--wildcards'" +msgstr "Bestandsnamen bevatten jokertekens." -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" -msgstr "om patroonovereenkomsten in te schakelen," +msgstr "" +"Gebruik '--wildcards' om patroonovereenkomsten in te schakelen,\n" +"of '--no-wildcards' om deze waarschuwing te onderdrukken." -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Komt niet voor in archief" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Is vereist maar komt niet voor in archief" -#: src/names.c:894 -#, fuzzy +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Archieflabel komt niet overeen" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" -msgstr "--preserve-order en --listed-incremental gaan niet samen" +msgstr "" +"Met '--listed-incremental' is '-C' niet toegestaan binnen een bestandenlijst" -#: src/names.c:900 -#, fuzzy +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" -msgstr "--preserve-order en --listed-incremental gaan niet samen" +msgstr "Met '--listed-incremental' is slechts één '-C' toegestaan" #: src/tar.c:81 #, c-format @@ -1364,7 +1367,7 @@ msgstr "" "Onbekende aanhalingsstijl '%s'. Probeer '%s --quoting-style=help' voor een " "overzicht." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1384,7 +1387,7 @@ msgstr "" " tar -tvf archief.tar # Alle bestanden in archief.tar opsommen.\n" " tar -xf archief.tar # Alle bestanden van archief.tar uitpakken.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1405,80 +1408,80 @@ msgstr "" " nil, existing genummerd als ze al bestaan, anders simpel\n" " never, simple altijd simpele reservekopieën maken\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Hoofdbewerkingen:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "de inhoud van een archief opsommen" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "bestanden uit een archief uitpakken" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "een nieuw archief aanmaken" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "verschillen tussen archief en bestandssyteem vinden" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "bestanden aan het eind van een archief toevoegen" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" "alleen bestanden toevoegen die nieuwer zijn dan hun versie in het archief" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "tar-bestanden aan een archief toevoegen" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "uit het archief verwijderen (niet gebruiken bij magneetbanden!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "label van archiefdeel controleren en stoppen" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Werkingsaanpassers:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "luchtige bestanden efficiënt verwerken" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "HOOFD[.SUB]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" -msgstr "versie van te gebruiken luchtige indeling (impliceert '--sparse')" +msgstr "versie van te gebruiken luchtige indeling (impliceert --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "oude GNU-indeling van incrementeel archief verwerken" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "nieuwe GNU-indeling van incrementeel archief verwerken" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" -msgstr "" +msgstr "dump-niveau voor aan te maken incrementeel archief" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "niet afsluiten met een foutcode bij onleesbare bestanden" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1490,129 +1493,128 @@ msgstr "" "diff, --extract of --list, en wanneer een lijst van bestanden gegeven is op " "de opdrachtregel of via de optie -T; AANTAL is standaard 1" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" -msgstr "archief is doorzoekbaar" +msgstr "in archief kan worden gesprongen" -#: src/tar.c:436 -#, fuzzy +#: src/tar.c:437 msgid "archive is not seekable" -msgstr "archief is doorzoekbaar" +msgstr "in archief kan niet worden gesprongen" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" "geen apparaatnummers controleren tijdens aanmaken van incrementele archieven" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "apparaatnummers controleren tijdens aanmaken van incrementele archieven " "(standaard)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Overschrijvingsopties:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "het archief na het schrijven proberen te verifiëren" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "bestanden na hun toevoeging aan het archief verwijderen" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "bij het uitpakken bestaande bestanden niet vervangen" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "bestaande bestanden die nieuwer zijn dan die in het archief niet vervangen" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "bestaande bestanden bij het uitpakken overschrijven" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "elk bestand verwijderen alvorens eroverheen uit te pakken" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "bestaande mappen leegmaken alvorens eroverheen uit te pakken" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "metagegevens van bestaande mappen behouden" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "de metagegevens van bestaande mappen bij het uitpakken overschrijven " "(standaard)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Selecteren van uitvoerkanaal:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "bestanden uitpakken naar standaarduitvoer" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "OPDRACHT" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "uitgepakte bestanden via pijp naar gegeven programma sluizen" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "afsluitwaardes van dochterprocessen negeren" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" "afsluitwaardes van dochterprocessen die niet nul zijn als fout behandelen" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Behandeling van bestandskenmerken:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "toegevoegde bestanden krijgen NAAM als eigenaar" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "toegevoegde bestanden krijgen NAAM als groep" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATUM-OF-BESTAND" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -"wijzigingstijd zetten van bestanden die wegens DATUM-OF-BESTAND toegevoegd " -"zijn" +"wijzigingstijd zetten van bestanden die wegens DATUM-OF-BESTAND zijn " +"toegevoegd" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "WIJZIGINGEN" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "toegevoegde bestanden krijgen (symbolische) WIJZIGINGEN in hun modus" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "MANIER" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1622,31 +1624,31 @@ msgstr "" "herstellen van de tijdsstempels na het lezen (MANIER='replace'; standaard), " "of door de tijdsstempels met rust te laten (MANIER='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "bestandswijzigingstijden niet uitpakken" -#: src/tar.c:504 -#, fuzzy +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" -msgstr "bestanden proberen uit te pakken met gelijkblijvende eigenaar" +msgstr "" +"bestanden proberen uit te pakken met dezelfde eigenaar als in het archief " +"(standaard voor root)" -#: src/tar.c:506 -#, fuzzy +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" -msgstr "bestanden uitpakken als uzelf" +msgstr "bestanden uitpakken als uzelf (standaard voor gewone gebruikers)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "altijd getallen gebruiken voor gebruikers- en groepsnamen" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "bestandspermissies ook uitpakken (standaard voor root)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1654,157 +1656,157 @@ msgstr "" "de umask van de gebruiker toepassen bij het uitpakken van bestandspermissies " "(standaard voor gewone gebruikers)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" "uit te pakken namen sorteren zodanig dat ze overeenkomen met de volgorde in " "het archief" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "hetzelfde als -p en -s samen" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -"het zetten van permissies en tijdsstempels van mappen uitstellen tot het " -"einde van het uitpakken" +"het zetten van permissies en tijdsstempels van mappen uitstellen tot na het " +"uitpakken" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "het effect van de optie --delay-directory-restore ongedaan maken" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Apparaatselectie en -wisseling:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIEF" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "archiefbestand of apparaat ARCHIEF gebruiken" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "archiefbestand is lokaal, zelfs als het een dubbele punt bevat" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" -msgstr "deze OPDRACHT gebruiken in plaats van rmt" +msgstr "deze OPDRACHT gebruiken in plaats van 'rmt'" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" -msgstr "deze OPDRACHT gebruiken in plaats van rsh" +msgstr "deze OPDRACHT gebruiken in plaats van 'rsh'" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "schijf en dichtheid opgeven" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "meerdelig archief aanmaken/opsommen/uitpakken" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "band wisselen na schrijven van AANTAL x 1024 bytes" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "script uitvoeren aan einde van elke band (impliceert -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "het deelnummer in BESTAND gebruiken/bijwerken" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Blokverwerking:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOKKEN" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOKKEN x 512 bytes per record" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "AANTAL bytes per record (een veelvoud van 512)" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "blokken met nullen in archief negeren (betekenen einde-van-bestand)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "doorgaan met lezen tot blok compleet is (voor 4.2BSD-pijpen)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Archiefindelingskeuze:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "INDELING" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "een archief maken in de gekozen indeling" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "INDELING is een van de volgende:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "oude V7 tar-indeling" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "GNU-indeling van tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU-indeling van tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar-indeling)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax-indeling)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "hetzelfde als pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "hetzelfde als --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "hetzelfde als --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "sleutelwoord[[:]=waarde][,sleutelwoord[[:]=waarde]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "het aangeven van pax-sleutelwoorden" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEKST" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1812,78 +1814,78 @@ msgstr "" "een archief met deelnaam TEKST maken; bij opsommen/uitpakken TEKST als " "zoekpatroon voor de deelnaam gebruiken" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Compressie-opties:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "compressieprogramma afleiden uit bestandsachtervoegsel" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "compressieprogramma niet afleiden uit bestandsachtervoegsel" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROGRAMMA" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" -msgstr "het archief door dit programma filteren (moet -d accepteren)" +msgstr "het archief door dit programma filteren (moet '-d' accepteren)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Lokale bestandskeuze:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "het gegeven BESTAND aan het archief toevoegen (handig als de naam begint met " "een '-')" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "MAP" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "naar MAP gaan" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "namen van in of uit te pakken bestanden uit BESTAND halen" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" -msgstr "-T leest met NUL afgesloten namen, -C uitzetten" +msgstr "'-T' leest met NUL afgesloten namen, schakelt '-C' uit" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" -msgstr "het resultaat van de vorige --null-optie ongedaan maken" +msgstr "het resultaat van de vorige '--null'-optie ongedaan maken" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -"aanhalingstekens verwijderen rond bestandsnamen gelezen met -T (standaard)" +"aanhalingstekens verwijderen rond bestandsnamen gelezen met '-T' (standaard)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" -msgstr "aanhalingstekens niet verwijderen rond bestandsnamen gelezen met -T" +msgstr "aanhalingstekens niet verwijderen rond bestandsnamen gelezen met '-T'" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "PATROON" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "bestanden uitsluiten, gegeven als een PATROON" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "uitsluitingspatronen staan opgesomd in BESTAND" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1891,95 +1893,95 @@ msgstr "" "inhoud van mappen die CACHEDIR.TAG bevatten uitsluiten, behalve CACHEDIR.TAG " "zelf" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "alles onder mappen die CACHEDIR.TAG bevatten uitsluiten" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "mappen die CACHEDIR.TAG bevatten uitsluiten" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" "inhoud van mappen die BESTAND bevatten uitsluiten, behalve BESTAND zelf" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "alles onder mappen die BESTAND bevatten uitsluiten" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "mappen die BESTAND bevatten uitsluiten" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "systeemmappen van versiebeheer uitsluiten" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" -msgstr "" +msgstr "reservekopieën en vergrendelingsbestanden uitsluiten" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "niet automatisch afdalen in mappen" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "in het lokale bestandssysteem blijven bij maken van archief" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "recursief in mappen afdalen (standaard)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "leidende '/' niet uit bestandsnamen verwijderen" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "symbolische koppelingen volgen; de bestanden waar ze naar verwijzen " "archiveren" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" "harde koppelingen volgen; de bestanden waar ze naar verwijzen archiveren" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "LIDNAAM" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "beginnen bij lid LIDNAAM in het archief" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "alleen bestanden opslaan die nieuwer zijn dan DATUM-OF-BESTAND" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATUM" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "datum en tijd alleen vergelijken wanneer gegevens veranderd zijn" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "MANIER" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "voor verwijdering een reservekopie maken, op de aangegeven MANIER" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "TEKENREEKS" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1988,99 +1990,98 @@ msgstr "" "(in plaats van '~', die standaard is tenzij door omgevingsvariable " "SIMPLE_BACKUP_SUFFIX veranderd)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Bestandsnaam-transformaties:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "dit AANTAL leidende componenten uit bestandsnamen verwijderen" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "EXPRESSIE" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" "deze vervangings-EXPRESSIE gebruiken om bestandsnamen met 'sed' te " "transformeren" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" -msgstr "Bestandsnaamselectie-opties (voor zowel in- als uitsluitingspatronen)" +msgstr "Bestandsnaamselectie-opties (voor zowel in- als uitsluitingspatronen):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "verschil tussen hoofd- en kleine letters negeren" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "patronen komen overeen met begin van bestandsnaam" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" "patronen komen overeen met alles na een '/' (is standaard bij uitsluiting)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "hoofdlettergevoelige vergelijking (standaard)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "jokertekens gebruiken (is standaard bij uitsluiting)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "exacte tekenreeksvergelijking" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "jokertekens komen niet overeen met '/'" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "jokertekens komen overeen met '/' (is standaard bij uitsluiting)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Informatieve uitvoer:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "de verwerkte bestanden opsommen" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" -msgstr "" +msgstr "SLEUTELWOORD" -#: src/tar.c:740 -#, fuzzy +#: src/tar.c:741 msgid "warning control" -msgstr "Overschrijvingsopties:" +msgstr "waarschuwingsbeleid" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "voortgangsberichten tonen voor elk AANTALste record (standaard 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "ACTIE" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "bij elk controlepunt deze ACTIE uitvoeren" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "een bericht tonen als niet alle links gearchiveerd werden" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SIGNAAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2092,27 +2093,31 @@ msgstr "" "ontvangen wordt; mogelijke signalen zijn: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 " "en SIGUSR2; de namen zonder het voorvoegsel SIG worden ook geaccepteerd" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "bestandswijzigingstijden in UTC tonen" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "bestandstijden in volledige resolutie tonen" + +#: src/tar.c:760 msgid "send verbose output to FILE" -msgstr "breedsprakige uitvoer naar BESTAND sturen" +msgstr "gedetailleerde uitvoer naar BESTAND sturen" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "blokgetal binnen archief tonen bij elk bericht" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "bij elke actie om toestemming vragen" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "standaardinstellingen van tar tonen" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2120,33 +2125,33 @@ msgstr "" "bij opsommen of uitpakken: elke map opsommen die niet aan zoekcriteria " "voldoet" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "bestands- of archiefnamen na transformatie tonen" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STIJL" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" "aanhalingsstijl voor namen instellen (zie verderop voor geldige waarden van " "STIJL)" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "ook de tekens in TEKENREEKS aanhalen" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "de tekens in TEKENREEKS niet aanhalen" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Compatibiliteitsopties:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2154,64 +2159,63 @@ msgstr "" "bij aanmaken hetzelfde als --old-archive; bij uitpakken hetzelfde als --no-" "same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Andere opties:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" -msgstr "gebruik van mogelijk gevaarlijke opties of opdrachten uitschakelen" +msgstr "" +"het gebruik van potentieel gevaarlijke opties of opdrachten uitschakelen" -#: src/tar.c:927 -#, fuzzy +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" -msgstr "Slechts één van de opties 'Acdtrux' is mogelijk" +msgstr "Slechts één van de opties '-Acdtrux' of '--test-label' is mogelijk" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Conflicterende compressie-opties" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Onbekende signaalnaam: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Voorbeeldbestand voor tijdsstempel niet gevonden" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Onbekende datumopmaak %2$s wordt vervangen door %1$s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Optie %s: datum '%s' wordt begrepen als %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: bestandenlijst is al gelezen" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: gelezen bestandsnaam bevat een NUL-teken" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 -#, fuzzy, c-format +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 +#, c-format msgid "filter the archive through %s" -msgstr "het archief door 'xz' filteren" +msgstr "het archief door '%s' filteren" -#: src/tar.c:1290 -#, fuzzy +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" -msgstr "Geldige argumenten van --quoting-style zijn:" +msgstr "Geldige argumenten van de optie '--quoting-style' zijn:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2219,174 +2223,170 @@ msgstr "" "\n" "*Deze* tar gebruikt de volgende standaardwaarden:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" -msgstr "Ongeldige blokindeling" +msgstr "Ongeldige blokkenfactor" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Ongeldige bandlengte" -#: src/tar.c:1511 -#, fuzzy +#: src/tar.c:1529 msgid "Invalid incremental level value" -msgstr "Onjuiste incrementele bestandsindeling" +msgstr "Onjuiste waarde van incrementeel niveau" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Meerdere drempeldata" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Ongeldig versienummer voor luchtige indeling" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' is op dit platform niet mogelijk" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" -msgstr "waarde van --checkpoint is geen geheel getal" +msgstr "Waarde van '--checkpoint' is geen geheel getal" -#: src/tar.c:1830 -#, fuzzy +#: src/tar.c:1848 msgid "Invalid group" -msgstr "%s: Ongeldige groep" +msgstr "Ongeldige groep" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Ongeldige modus gegeven bij optie" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Ongeldig nummer" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Ongeldige eigenaar" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -"De optie --preserve is vervallen, gebruik nu --preserve-permissions --" -"preserve-order" +"De optie '--preserve' is vervallen; gebruik nu '--preserve-permissions --" +"preserve-order'." -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Ongeldige recordgrootte" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Recordgrootte moet een veelvoud zijn van %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Ongeldig aantal elementen" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" -msgstr "Slechts één optie --to-command is toegestaan" +msgstr "Slechts één optie '--to-command' is toegestaan" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Ongeldig dichtheidsargument: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Onbekende dichtheid: '%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Opties '-[0-7][lmh]' worden niet ondersteund door *deze* tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[BESTAND]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Oude optie '%c' vereist een argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "'--occurrence' betekent niets zonder een bestandenlijst" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "'--occurrence' kan niet worden gebruikt in de gevraagde werkingsmodus" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Voor meerdere archiefbestanden is de optie '-M' vereist" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" -msgstr "Kan '--listed-incremental' niet met '--newer' combineren" +msgstr "Opties '--listed-incremental' en '--newer' gaan niet samen" -#: src/tar.c:2387 -#, fuzzy +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" -msgstr "--preserve-order en --listed-incremental gaan niet samen" +msgstr "Optie '--level' is betekenisloos zonder '--listed-incremental'" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Deellabel is te lang (grens is %lu byte)" msgstr[1] "%s: Deellabel is te lang (grens is %lu bytes)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Kan meerdelige archieven niet verifiëren" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Kan ingepakte archieven niet verifiëren" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" -msgstr "Kan geen meerdelige ingepakte archieven gebruiken" +msgstr "Kan geen meerdelige ingepakte archieven verwerken" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Kan ingepakte archieven niet samenvoegen" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "optie '--pax' kan alleen worden gebruikt bij POSIX-archieven" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Deellengte kan niet kleiner zijn dan de recordgrootte" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" -msgstr "--preserve-order en --listed-incremental gaan niet samen" +msgstr "Opties '--preserve-order' en '--listed-incremental' gaan niet samen" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Een geheel leeg archief wordt niet aangemaakt" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Opties '-Aru' gaan niet samen met '-f -'" -#: src/tar.c:2592 -#, fuzzy +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" -msgstr "U dient een van de opties '-Acdtrux' op te geven" +msgstr "U dient een van de opties '-Acdtrux' of '--test-label' op te geven" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" -msgstr "Stopt met foutstatus vanwege eerdere fouten" +msgstr "Gestopt in fouttoestand vanwege eerdere fouten" #: src/update.c:86 #, c-format @@ -2395,57 +2395,56 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Bestand is gekrompen met %s byte" msgstr[1] "%s: Bestand is gekrompen met %s bytes" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Sleutelwoord %s is onbekend of nog niet geïmplementeerd" -#: src/xheader.c:173 -#, fuzzy +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" -msgstr "Getal valt buiten toegestaan bereik: %s" +msgstr "Tijdsstempel valt buiten toegestaan bereik" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Patroon %s kan niet worden gebruikt" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Sleutelwoord %s kan niet worden overstegen" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Onjuiste uitgebreide kop: ontbrekende lengte" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Lengte van uitgebreide kop valt buiten bereik" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Lengte %*s van uitgebreide kop valt buiten bereik" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Onjuiste uitgebreide kop: ontbrekende witruimte na de lengte" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Onjuiste uitgebreide kop: ontbrekend isgelijkteken" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Onjuiste uitgebreide kop: ontbrekend regeleinde" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Genegeerd: onbekend sleutelwoord '%s' in uitgebreide kop" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" @@ -2454,28 +2453,28 @@ msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "" "Waarde %2$s in uitgebreide kop valt buiten bereik voor %1$s (%3$s..%4$s)" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Onjuiste uitgebreide kop: ongeldige %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Onjuiste uitgebreide kop: overtollige %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "Onjuiste uitgebreide kop: ongeldige %s: onverwacht scheidingsteken %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Onjuiste uitgebreide kop: ongeldige %s: oneven aantal waarden" @@ -2516,7 +2515,7 @@ msgstr "Schrijfcontrolepunt %u" msgid "Read checkpoint %u" msgstr "Leescontrolepunt %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2524,97 +2523,95 @@ msgstr "" "genfile manipuleert gegevensbestanden voor de testreeksen van GNU paxutils.\n" "OPTIES zijn:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Bestandsaanmaak-opties:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "GROOTTE" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "een bestand van de gegeven GROOTTE aanmaken" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "naar het bestand NAAM schrijven i.p.v. naar standaarduitvoer" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "bestandsnamen uit BESTAND lezen" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T leest met NUL afgesloten namen" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "het bestand met het gegeven PATROON vullen; PATROON is 'default' (standaard) " "of 'zeros' (nullen)" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "blokgrootte voor luchtig bestand" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "luchtig bestand genereren; de rest van de opdrachtregel specificeert de " "indeling" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "POSITIE" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "naar deze positie springen alvorens met schrijven te beginnen" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Bestandsstatistieken-opties:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -"voor elk gegeven bestand de inhoud van de 'struct stat' printen; de " +"voor elk gegeven bestand de inhoud van de struct 'stat' printen; de " "standaard INDELING is: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Synchrone-uitvoer-opties:" -#: tests/genfile.c:164 -#, fuzzy +#: tests/genfile.c:163 msgid "OPTION" -msgstr " [OPTIE...]" +msgstr "OPTIE" -#: tests/genfile.c:165 -#, fuzzy +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -"gegeven OPDRACHT uitvoeren; dit is nuttig bij '--checkpoint' samen met één " -"van '--cut', '--append' of '--touch'" +"gegeven ARGUMENTEN uitvoeren; dit is nuttig bij '--checkpoint' samen met één " +"van '--cut', '--append', '--touch', of '--unlink'" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "de gegeven actie uitvoeren (zie verderop) bij bereiken van het AANTALste " "controlepunt" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "de datum voor de volgende '--touch'" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "de uitgevoerde controlepunten en de afsluitwaarde van OPDRACHT tonen" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2622,7 +2619,7 @@ msgstr "" "Synchroon uit te voeren acties. Deze worden uitgevoerd bij het bereiken van " "het controlepunt opgegeven met de optie '--checkpoint'." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2630,218 +2627,144 @@ msgstr "" "BESTAND afkappen tot de grootte opgegeven met een voorafgaande optie '--" "length' (of 0 als niet gegeven)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "BESTAND met GROOTTE aantal bytes vergroten; deze GROOTTE is met een " "voorafgaande optie '--length' opgegeven" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "de toegangs- en wijzigingstijdsstempels van BESTAND bijwerken" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "OPDRACHT uitvoeren" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" -msgstr "" +msgstr "BESTAND verwijderen" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Ongeldige grootte: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Getal valt buiten toegestaan bereik: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Negatieve grootte: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "Kan status van %s niet bepalen" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" -msgstr "gevraagde bestandslengte %lu, werkelijk %lu" +msgstr "gevraagde bestandslengte is %lu, werkelijke is %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "aangemaakt bestand is niet luchtig" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Fout tijdens getalsontleding, nabij '%s'" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Onbekende datumopmaak" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGUMENTEN]..." -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "Kan '%s' niet openen" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" -msgstr "kan niet springen" +msgstr "Kan niet springen" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "Bestandsnaam bevat een NUL-teken" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "Kan geen luchtige bestanden genereren op standaarduitvoer; gebruik de optie " "'--file'" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "Onjuist masker (nabij '%s')" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Onbekend veld '%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "Kan tijdsstempel van '%s' niet zetten" -#: tests/genfile.c:700 -#, fuzzy, c-format +#: tests/genfile.c:699 +#, c-format msgid "cannot unlink `%s'" -msgstr "Kan '%s' niet openen" +msgstr "Kan '%s' niet verwijderen" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Opdracht is succesvol afgesloten\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Opdracht is mislukt met afsluitwaarde %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Opdracht is afgebroken door signaal %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Opdracht is gestopt door signaal %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Opdracht resulteerde in een core-dump\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Opdracht is afgebroken\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" -msgstr "'--stat' vereist bestandsnamen" - -#~ msgid "%s: illegal option -- %c\n" -#~ msgstr "%s: ongeldige optie -- %c\n" - -#~ msgid "" -#~ "\n" -#~ "Report bugs to <%s>.\n" -#~ msgstr "" -#~ "\n" -#~ "Rapporteer gebreken in het programma aan <%s>;\n" -#~ "meld fouten in de vertaling aan .\n" - -#~ msgid "Reading %s\n" -#~ msgstr "Lezen van %s...\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Fout is niet herstelbaar -- tar sluit nu af." - -#~ msgid "suppress this warning." -#~ msgstr "of '-no-wildcards' om deze melding te onderdrukken." - -#~ msgid "filter the archive through bzip2" -#~ msgstr "het archief door 'bzip2' filteren" - -#~ msgid "filter the archive through gzip" -#~ msgstr "het archief door 'gzip' filteren" - -#~ msgid "filter the archive through compress" -#~ msgstr "het archief door 'compress' filteren" - -#~ msgid "filter the archive through lzma" -#~ msgstr "het archief door 'lzma' filteren" - -#~ msgid "filter the archive through lzop" -#~ msgstr "het archief door 'lzop' filteren" - -#~ msgid "Input string too long" -#~ msgstr "Invoertekenreeks is te lang" - -#~ msgid "Number syntax error" -#~ msgstr "Syntaxfout in getal" - -#~ msgid "rmtd: Cannot allocate buffer space\n" -#~ msgstr "rmtd: Kan geen bufferruimte reserveren\n" - -#~ msgid "Cannot allocate buffer space" -#~ msgstr "Kan geen bufferruimte reserveren" - -#~ msgid "Try `%s --help' for more information.\n" -#~ msgstr "Typ '%s --help' voor meer informatie.\n" - -#~ msgid "" -#~ "Usage: %s [OPTION]\n" -#~ "Manipulate a tape drive, accepting commands from a remote process.\n" -#~ "\n" -#~ " --version Output version info.\n" -#~ " --help Output this help.\n" -#~ msgstr "" -#~ "Gebruik: %s [OPTIE]\n" -#~ "Een magneetband manipuleren, en opdrachten accepteren van een ander " -#~ "proces.\n" -#~ "\n" -#~ " --version programmaversie tonen\n" -#~ " --help deze hulptekst tonen\n" - -#~ msgid "Seek offset error" -#~ msgstr "Sprongpositiefout" - -#~ msgid "Premature end of file" -#~ msgstr "Voortijdig einde van bestand" - -#~ msgid "Warning: the -I option is not supported; perhaps you meant -j or -T?" -#~ msgstr "" -#~ "Waarschuwing: optie -I is niet mogelijk; bedoelt u misschien -j of -T?" +msgstr "Optie '--stat' vereist bestandsnamen" -#~ msgid "Error exit delayed from previous errors" -#~ msgstr "Uitgestelde afbreking na eerdere fouten" +#~ msgid "Cannot save working directory" +#~ msgstr "Kan werkmap niet opslaan" diff --git a/po/pl.gmo b/po/pl.gmo index 32778062a4ecde71b12a5e9fadbf6b2621b397ac..c6a479bf058941ec07008019e90bbe16b4fac346 100644 GIT binary patch delta 12595 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 Y`q*UW@WiBJOJiI|r)H17+M>w+0Z9UPbN~PV delta 12025 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 S?xEt*j?pE(JM(3F#s31o$g9x+ diff --git a/po/pl.po b/po/pl.po index 6dd9fbd..2010fc8 100644 --- a/po/pl.po +++ b/po/pl.po @@ -1,16 +1,18 @@ # Polish translation of GNU tar # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2004, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. # This file is distributed under the same license as the tar package. -# Rafał Maszkowski , 1996, 1997, 2000, 2001, 2003, 2004, 2006-2010. „ +# Rafał Maszkowski , 1996, 1997, 2000, 2001, 2003, 2004, 2006-2010. „” # Thanks to Jakub Bogusz for remarks and corrections, 2003, 2004, 2007, 2008 +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22.91\n" +"Project-Id-Version: tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2010-02-15 16:05+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-13 14:50+0200\n" "Last-Translator: Rafał Maszkowski \n" "Language-Team: Polish \n" +"Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" @@ -87,7 +89,7 @@ msgstr "Użyj `%s --help' albo `%s --usage' żeby otrzymać więcej informacji\n msgid "Report bugs to %s.\n" msgstr "Raporty o błędach należy wysyłać do %s .\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Nieznany błąd systemu" @@ -99,8 +101,8 @@ msgstr "wyświetlenie tego opisu" msgid "give a short usage message" msgstr "krótka informacja o opcjach" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NAZWA" @@ -138,56 +140,61 @@ msgstr "(BŁĄD PROGRAMU) Opcja powinna była być rozpoznana!?" msgid "write error" msgstr "błąd zapisu" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: opcja '%s' jest niejednoznaczna\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: opcja '--%s' nie może mieć argumentu\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: opcja '%c%s' nie może mieć argumentu\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: opcja '%s' wymaga argumentu\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: opcja '--%s' wymaga argumentu\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: nierozpoznana opcja '--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: nierozpoznana opcja '%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: błędna opcja -- '%c'\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: opcja wymaga argumentu -- '%c'\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: opcja '-W %s' jest niejednoznaczna\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: opcja '-W %s' nie może mieć argumentu\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: opcja '-W %s' wymaga argumentu\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "brak pamięci" @@ -534,144 +541,145 @@ msgstr "stdout" #, c-format msgid "Cannot connect to %s: resolve failed" msgstr "" +"Nie można połączyć się z %s: nie udało się przetłumaczyć nazwy na adres" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Nie można uruchomić zdalnego shella" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Sposób ustawiania pozycji w pliku spoza zakresu" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "Błędne kierunek przesuwania wskaźnika pozycji" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "Błędne przesunięcie wskaźnika pozycji" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Pozycja w pliku poza zakresem" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "Błędna liczba bajtów" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "Liczba bajtów poza zakresem" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "Przedwczesny EOF" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "Błędny kod operacji" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "Operacja nie przewidziana" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "Nieoczekiwany argumenty" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" "Posługiwanie się napędem taśmowym, przyjmowanie poleceń od zdalnego procesu" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "LICZBA" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "ustawienie poziomu wypisywania informacji diagnostycznych" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "PLIK" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "plik do zapisywania informacji diagnostycznych" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "nie można otworzyć %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "za dużo argumentów" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Bezsensowna komenda" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "To nie wygląda jak archiwum tar" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Licza zapisanych bajtów" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Liczba przeczytanych bajtów" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Liczba skasowanych bajtów: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(pipe)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Błędna wartość record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Nie podana nazwa archiwum" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Nie można zweryfikować archiwum z/do stdin/stdout" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Archiwum jest skompresowane. Należy użyć opcji %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Nie można uaktualnić archiwum skompresowanego" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Na początku taśmy, teraz kończę" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Za dużo błędów, kończę" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" @@ -679,7 +687,7 @@ msgstr[0] "Rozmiar rekordu = %lu blok" msgstr[1] "Rozmiar rekordu = %lu bloki" msgstr[2] "Rozmiar rekordu = %lu bloków" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" @@ -687,38 +695,38 @@ msgstr[0] "Nierówny blok (%lu bajt) w archiwum" msgstr[1] "Nierówny blok (%lu bajty) w archiwum" msgstr[2] "Nierówny blok (%lu bajtów) w archiwum" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Nie można się cofnąć w pliku archiwum; może nie być czytelny bez -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek nie zatrzymał się na granicy rekordów" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: zawiera błędny numer części" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Przepełnienie numeru części" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Przygotuj część numer %d dla %s i naciśnij return: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "EOF kiedy była oczekiwana odpowiedź użytkownika" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "UWAGA: Archiwum jest niekompletne" # rare case when `for parts' translates into `części' for both sing. and plural in Polish - rzm -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -729,68 +737,68 @@ msgstr "" " q Zakończenie programu tar\n" " y albo Enter Kontynuacja\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Uruchomienie powłoki\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Wypisanie tej listy\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Brak nowej części; zakończenie pracy.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Brak nazwy pliku. Spróbuj jeszcze raz.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" "Błędne dane wejściowe. Wciśnij ? żeby przeczytać informacje pomocnicze\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "%s polecenie zwróciło błąd" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s prawdopodobnie jest kontynuowany w tej części: nagłówek zawiera skróconą " "nazwę" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s nie jest kontynuowany w tej części" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s to zły rozmiar (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Ta część nie jest w kolejności (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Etykieta archiwum nie pasuje do %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Część %s nie pasuje do %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -798,7 +806,7 @@ msgstr "" "%s: nazwa pliku jest za długa do zapisania w nagłówku wieloczęściowego " "archiwum GNU, zostanie skrócona" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "zapis nie zakończył się na granicy bloków" @@ -810,20 +818,20 @@ msgstr[0] "Można było przeczytać tylko %lu z %lu bajtu" msgstr[1] "Można było przeczytać tylko %lu z %lu bajtów" msgstr[2] "Można było przeczytać tylko %lu z %lu bajtów" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Zawartości się różnią" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Nieoczekiwany EOF w archiwum" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Różne typy plików" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Uprawnienia się różnią" @@ -839,42 +847,42 @@ msgstr "Gid się różni" msgid "Mod time differs" msgstr "Czas modyfikacji się różni" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Rozmiar się różni" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Nie dołączony do %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Łącze symboliczne się różni" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Różnią się numery urządzeń" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Sprawdzanie " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Nieznany typ pliku `%c' porównywany jako zwykły plik" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Archiwum zawiera nazwy plików bez początkowych elementów ścieżek." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Podczas weryfikacji mogą nie być znalezione pliki lokalne" -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" @@ -882,48 +890,48 @@ msgstr[0] "BŁĄD WERYFIKACJI: wykryto %d błędny nagłówek" msgstr[1] "BŁĄD WERYFIKACJI: wykryto %d błędne nagłówki" msgstr[2] "BŁĄD WERYFIKACJI: wykryto %d błędnych nagłówków" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Samotny blok zerowy przy %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: zawiera znacznik katalogu pamięci podręcznej %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "wartość %s z %s poza zakresem %s..%s; podstawione %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "wartość %s z %s poza zakresem %s..%s" # hm? - rzm -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Tworzenie ujemnych nagłówków ósemkowych" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: nazwa pliku jest za długa (powyżej %d); nie została zapisana" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" "%s: nazwa pliku jest za długa (nie może być podzielona); nie została zapisana" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: nazwa łącza jest za długa; nie została zapisana" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" @@ -931,55 +939,55 @@ msgstr[0] "%s: Plik skurczył się o %s bajt; jest dopełniany zerami" msgstr[1] "%s: Plik skurczył się o %s bajty; jest dopełniany zerami" msgstr[2] "%s: Plik skurczył się o %s bajtów; jest dopełniany zerami" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: plik w innym systemie plików; nie został zapisany" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "zawartość nie została zapisana" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Nieznany typ pliku; plik zignorowany" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." msgstr "Brakujące łącza do %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: plik jest niezmieniony; nie został zapisany" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: plik jest w tym archiwum; nie został zapisany" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "katalog nie został zapisany" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: plik zmienił się w trakcie czytania" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: zignorowane gniazdo z nazwą" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: zignorowany plik door" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Przeskoczenie do następnego nagłówka" @@ -987,74 +995,74 @@ msgstr "Przeskoczenie do następnego nagłówka" msgid "Deleting non-header from archive" msgstr "Kasowanie z archiwum nie-nagłówka" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: niemożliwie stara data %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: znacznik czasowy %s jest przesunięty o %s s w przyszłość" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Nieoczekiwana niespójność przy zakładaniu katalogu" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Katalog zmienił nazwę zanim można było odtworzyć jego status" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Odtwarzanie plików ciągłych (nie sparse) jako zwykłych" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Próba odtworzenia łącza symbolicznego jako zwykłego" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Nie można odtworzyć -- plik jest kontynuowany z innej części" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Niespodziewany nagłówek z długą nazwą" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Nieznany typ pliku `%c', odtworzony jako plik zwykły" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Aktualny %s jest nowszy albo w tym samym wieku" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Nie można było zrobić kopii zapasowej tego pliku" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Nie można przemianować %s na %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Nazwa katalogu została zmieniona z %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Nazwa katalogu została zmieniona" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Katalog jest nowy" @@ -1164,35 +1172,35 @@ msgstr "%s: Usunięcie %s\n" msgid "%s: Cannot remove" msgstr "%s: Nie można usunąć" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Pominięty" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blok %s: ** Blok zer **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blok: %s: ** Koniec pliku **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Odstępy w nagłówku zamiast spodziewanej wartości numerycznej %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1200,143 +1208,144 @@ msgstr "" "jak uzupełnienie dwójkowe" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Wartość ósemkowa %.*s w archiwum jest spoza zakresu %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Archiwum zawiera przestarzałe nagłówki base64" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "W archiwum jest łańcuch base64 %s spoza zakresu %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Wartość base256 w archiwum jest spoza zakresu %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Archiwum zawiera %.*s tam gdzie oczekiwana była liczba %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Wartość %s w archiwum jest spoza zakresu %s %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " łącze do %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " nieznany typ pliku %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Długie łącze--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Długa nazwa--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Nagłówek części--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Kontynuacja od bajtu %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Tworzony jest katalog:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Nie można zmienić katalogu" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Nazwa %s zmieniona na %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Nie można przemianować na %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Nazwa zmieniona z %s z powrotem na %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Nie można zapisać bieżącego katalogu" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Nie można zmienić katalogu" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Plik usunięty zanim został przeczytany" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Katalog usunięty zanim został przeczytany" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "proces potomny" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "kanał między procesami" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "W nazwach plików użyto znaków dopasowania wzorców. Proszę" +msgstr "W nazwach plików użyto znaków dopasowania wzorców" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -"użyć --wildcards aby włączyć porównywanie wzorców albo --no-wildcards żeby" +"Użyj --wildcards aby włączyć porównywanie wzorców albo --no-wildcards żeby " +"wyłączyć to ostrzeżenie" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Nie znalazłem w archiwum" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Brak podanego wystąpienia pliku w archiwum" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Nie pasująca etykieta archiwum" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" "Nie jest dozwolone używanie opcji -C wewnątrz listy plików razem z --listed-" "incremental" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "Z --listed-incremental można użyć tylko jednej opcji -C" @@ -1362,7 +1371,7 @@ msgstr "" "Nieznany styl cytowania `%s'. Użyj `%s --quoting-style=help' żeby zobaczyć " "listę." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1381,7 +1390,7 @@ msgstr "" "tar.\n" " tar -xf archive.tar # rozpakowanie plików z archive.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1404,79 +1413,79 @@ msgstr "" "proste\n" " never, simple proste kopie zapasowe\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Podstawowe tryby działania:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "wypisanie zawartości archiwum" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "rozpakowanie plików z archiwum" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "utworzenie nowego archiwum" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "sprawdzenie różnic między archiwum i plikami na dysku" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "dołączenie plików na końcu archiwum" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "dołączenie tylko plików nowszych niż kopie w archiwum" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "dołączenie plików tar do archiwum" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "skasowanie plików z archiwum (nie na taśmie!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "przetestowanie etykiety archiwum i wyjście" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Modyfikatory działania:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "efektywne przetwarzanie plików rzadkich" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAJOR[.MINOR]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "ustawienie wersji używanego formatu plików rzadkich (włącza --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "backup przyrostowy w starym formacie GNU" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "backup przyrostowy w nowym formacie GNU" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "numer poziomu tworzonej albo oglądanej przyrostowej kopii zapasowej" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "bez zakończenia błędem jeżeli niedostępne pliki" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1488,124 +1497,124 @@ msgstr "" "plików jest podana w linii poleceń albo przez opcję -T. LICZBA domyślnie " "wynosi 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "archiwum o swobodnym dostępie" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "archiwum bez swobodnego dostępu" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "bez sprawdzania numerów urządzeń przy tworzeniu archiwów przyrostowych" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "ze sprawdzaniem numerów urządzeń przy tworzeniu archiwów przyrostowych" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Sterowanie zamazywaniem" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "próba weryfikacji archiwum po zapisaniu" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "usunięcie plików po dodaniu do archiwum" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "bez zamazania istniejących plików rozpakowanymi" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "bez zastępowania istniejących plików, które są nowsze niż ich kopie w " "archiwum" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "nadpisywanie istniejących plików" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "usunięcie każdego pliku przed zamazaniem go rozpakowanym plikiem" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "opróżnianie starych katalogów przed rozpakowaniem kopii z archiwum" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "zachowanie metadanych istniejących katalogów" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "nadpisywanie metadanych istniejących katalogów przy rozpakowywaniu " "(domyslnie)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Wybór strumienia wyjściowego" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "rozpakowanie plików na standardowe wyjście" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "POLECENIE" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "przekazanie rozpakowywanych plików do innego programu" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "zignorowanie kodów wyjścia procesów potomnych" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" "traktowanie niezerowych kodów wyjściowych procesów potomnych jako błędu" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Przetwarzanie atrybutów plików:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "nadanie właściciela NAZWA dodanym plikom" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "nadanie grupy NAZWA dodanym plikom" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATA_ALBO_PLIK" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "ustawianie czasu modyfikacji dodanych plików z DATA_ALBO_PLIK" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "ZMIANY" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "ZMIANA uprawnień dodanych plików (podanych symbolicznie)" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METODA" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1615,11 +1624,11 @@ msgstr "" "czytaniu (METODA='replace'; domyślnie) albo przez nieustawianie czasu " "(METODA='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "bez odtworzenia czasu modyfikacji rozpakowanego pliku" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" @@ -1627,22 +1636,22 @@ msgstr "" "staranie się o odtworzenie właścicieli plików według zapisu w archiwum " "(domyślnie dla superusera)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" "rozpakowanie plików jako własności rozpakowującego (domyślnie dla zwykłych " "użytkowników)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "używanie numerów, nie nazw użytkowników/grup" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "odtworzenie informacji o uprawnieniach plików (domyślnie dla superusera)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1650,15 +1659,15 @@ msgstr "" "użycie umask użytkownika przy odtwarzaniu uprawnień z archiwum (domyślnie " "dla zwykłych użytkowników)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "pliki do rozpakowania posortowane jak w archiwum" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "to samo co równocześnie -p i -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1666,139 +1675,139 @@ msgstr "" "ustawianie czasów zmian i uprawnień odtworzonych katalogów opóźnione do " "końca rozpakowywania" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "wyłączenie efektu opcji --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Wybór i przełączanie urządzeń:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIWUM" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "użycie pliku lub urządzenia ARCHIWUM" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "plik archiwum lokalny, nawet jeżeli ma dwukropek" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "użyj POLECENIA zamiast /etc/rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "użyj POLECENIA zamiast rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "podanie napędu i gęstości" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "tworzenie/wypisanie/rozpakowanie archiwum wieloczęściowego" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "zmiana taśmy po zapisaniu LICZBA x 1024 bajtów" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "uruchomienie skryptu na końcu taśmy (włącza -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "użycie/uaktualnienie numeru części w PLIKU" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Parametry bloków:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOKI" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOKI x 512 bajtów na rekord" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "LICZBA bajtów w rekordzie, wielokrotność 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "ignorowanie wyzerowanych bloków w archiwum (oznacza EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "podzielenie na bloki przy odczycie (dla pipe 4.2BSD)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Wybór formatu archiwum:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMAT" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "utworzenie archiwum w danym formacie." -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMAT może być jednym z następujących:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "stary format tara z V7" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "format GNU dla tara <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "format tara GNU 1.13" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "format POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "format POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "to samo co pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "to samo co --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "to samo co --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "słowo_kluczowe[[:]=wartość][,słowo_kluczowe[[:]=wartość]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "ustawianie słów kluczowych formatu pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEKST" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1806,80 +1815,80 @@ msgstr "" "utworzenie archiwum z nazwą wolumenu TEKST. Przy wypisywaniu/rozpakowaniu " "TEKST będzie użyty jako wzorzec dopasowania dla nazwy" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Opcje kompresji" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "użycie przyrostka nazwy archiwum do ustalenia programu kompresującego" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" "bez używania przyrostka nazwy archiwum do wyznaczenia programu kompresującego" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROGRAM" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "filtrowanie przez PROGRAM (akceptujący -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Wybór plików lokalnych:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "dodanie podanego PLIKU do archiwum (przydatne jeżeli jego nazwa startuje od " "myślnika)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "KATALOG" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "przejście do KATALOGU" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "nazwy plików do rozpakowania lub spakowania z PLIKU" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T czyta nazwy zakończone zerem, wyłącz -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "wyłączenie efektu użycia opcji --null" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" "usunięcie znaków cytowania z nazw plików czytanych poprzez opcję -T " "(domyślnie)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "bez usuwania znaków cytowania z nazw plików czytanych poprzez opcję -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "WZORZEC" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "wykluczenie nazw pasujących do WZORCA" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "wykluczenie nazw pasujących do wzorców w PLIKU" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1887,91 +1896,91 @@ msgstr "" "wykluczenie katalogów zawierających znacznik pamięci podręcznej CACHEDIR." "TAG, oprócz samych plików znacznika" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "wykluczenie katalogów zawierających CACHEDIR.TAG i ich podkatalogów" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "wykluczenie katalogów zawierających CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "wykluczenie katalogów zawierających PLIK, ale nie samego PLIKU" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "wykluczenie katalogów zawierających PLIK i ich podkatalogów" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "wykluczenie katalogów zawierających PLIK" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "wykluczenie katalogów systemu administrowania wersjami" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "wykluczenie plików kopii zapasowych i rezerwacji zasobów" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "bez automatycznego zagłębiania się w katalogi" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "pozostanie w jednym systemie plików" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "zagłębianie się w podkatalogi (domyślnie)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "bez usuwania początkowego `/' z nazw plików" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "archiwizacja plików, na które wskazują łącza symboliczne" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "archiwizacja plików, na które wskazują łącza zwykłe" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "NAZWA-PLIKU" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "zaczęcie od pliku NAZWA-PLIKU w archiwum" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "zapisanie tylko plików nowszych niż DATA albo data PLIKU" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATA" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "porównywanie daty i czasu tylko dla zmienionych danych" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "TRYB" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "kopia zapasowa przed usunięciem, wybranie TRYBU zarządzania wersjami" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "NAPIS" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1979,100 +1988,100 @@ msgstr "" "kopia zapasowa przed usunięciem, zmiana domyślnego przyrostka ('~', jeżeli " "nie zmieniony przez zmienną środowiska SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Zmiany nazwy plików:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" "ucięcie przed rozpakowaniem LICZBY początkowych elementów ścieżki z nazw " "plików" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "WYRAÅ»ENIE" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "użycie WYRAÅ»ENIA zamiany sed-a do przekształcenia nazw plików" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Opcje filtracji nazw plików (dotyczą zarówno wzorców wykluczania jak " "włączania):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "traktowanie tak samo małych i wielkich liter" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "nazwy porównywane od początków nazw plików" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "wzorce odnoszą się do nazw po każdym / (domyślnie)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "odróżnianie małych i wielkich liter (domyślnie)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "używanie wildcards (domyślnie dla wykluczania)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "dosłowne porównywanie napisów" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "wildcards nie są porównywane z `/'" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "wildcards są porównywane z '/' (domyślnie dla wykluczania)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Informacje:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "wypisywanie szczegółów o przetwarzanych plikach" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "SŁOWO KLUCZOWE" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "sterowanie ostrzeżeniami" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" "wypisywanie co ILE rekordów informacji o przetwarzaniu (domyslnie co 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "AKCJA" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "wykonanie AKCJI przy każdym punkcie kontrolnym" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "wypisanie komunikatu jeżeli nie wszytkie łącza zostały zapisane" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SYGNAŁ" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2084,27 +2093,31 @@ msgstr "" "sygnały: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 i SIGUSR2; nazwy bez prefiksu SIG " "są też akceptowane" -#: src/tar.c:755 -msgid "print file modification dates in UTC" -msgstr "wypisanie dat modyfikacji plików w UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" +msgstr "wypisanie czasów modyfikacji plików w UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "wypisanie czasu pliku z pełną dokładnością" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "zapisanie dokładnych informacji w PLIKU" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "pokazanie przy każdym komunikacie numeru bloku w archiwum" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "proszenie o potwierdzenie każdego działania" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "wypisanie domyślnych ustawień tar-a" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2112,33 +2125,33 @@ msgstr "" "wypisywanie każdego katalogu nie pasującego do kryteriów szukania przy " "wypisywaniu albo rozpakowywaniu archiwum" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "pokazanie nazw plików albo archiwów po przeszktałceniu" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STYL" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" "ustawienie stylu ujmowania nazw w cudzysłowy; poniżej dozwolone wartości " "STYLU" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "dodatkowe ujmowanie w znaki cytowania znaków z ŁAŃCUCHA" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "wyłączenie ujmowania w znaki cytowania znaków z ŁAŃCUCHA" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Opcje kompatybilności:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2146,63 +2159,63 @@ msgstr "" "przy tworzeniu: to samo co --old-archive przy odtwarzaniu: to co --no-same-" "owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Inne opcje:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "wyłączenie używania potencjalnie szkodliwych opcji" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "" "Nie można podać więcej niż jednej opcji z `-Acdtrux' albo `--test-label'" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Niezgodne opcje kompresji" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Nieznana nazwa sygnału: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Nie znaleziono pliku z datą" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Postawienie %s w miejscu nieznanego formatu daty %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Opcja %s: Potraktowanie daty `%s' jako %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: lista plików już przeczytana" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: przeczytana nazwa pliku zawiera znak NUL" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "filtrowanie archiwum przez %s" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "Prawidłowe argumenty dla opcji --quoting-style:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2210,51 +2223,51 @@ msgstr "" "\n" "*Ten* tar ma domyślne parametry:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Błędny współczynnik łączenia w bloki" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Błędna długość taśmy" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "Błędny numer poziomu przyrostowej kopii zapasowej" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Więcej niż jedna data graniczna" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Błędna wartość wersji plików rzadkich" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "ten system nie pozwala na użycie --atime-preserve='system'" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "wartość --checkpoint nie jest liczbą całkowitą" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "Błędna grupa" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Błędne uprawnienia podane w opcji" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Błędny numer" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Błędny właściciel" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2262,68 +2275,68 @@ msgstr "" "Opcja --preserve jest przestarzała, zamiast niej użyj --preserve-permissions " "--preserve-order" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Błędna wielkość rekordu" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Rozmiar rekordu musi być wielokrotnością %d" -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Błędna ilość elementów" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Wolno użyć tylko jednej opcji polecenia --to-command" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Błędna specyfikacja gęstości: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Nieznana gęstość: `%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Opcje `-[0-7][lmh]' nie są używane w *tym* tarze" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[PLIK]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Stara opcja `%c' wymaga argumentu." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence nie ma znaczenia bez listy plików" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence nie może być użyte w tym trybie" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Archiwum składające się z wielu plików wymaga opcji `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Nie można połączyć --listed-incremental z --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "opcja --level nic nie znaczy bez użycia --listed-incremental" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2331,47 +2344,47 @@ msgstr[0] "%s: Za długa etykieta części (może mieć do %lu bajtu)" msgstr[1] "%s: Za długa etykieta części (może mieć do %lu bajtów)" msgstr[2] "%s: Za długa etykieta części (może mieć do %lu bajtów)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Nie można zweryfikować archiwum wieloczęściowego" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Nie można zweryfikować archiwum skompresowanego" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Nie można używać wieloczęściowego archiwum skompresowanego" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Nie można połączyć skompresowanych archiwów" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option może być użyta tylko przy archiwach POSIX-owych" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Długość części nie może być mniejsza od wielkości rekordu" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "opcja --preserve-order nie może być używana z --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Tchórzliwie odmawiam utworzenia pustego archiwum" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Opcje `-Aru' są niekompatybilne z `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Musisz podać jedną z opcji `-Acdtrux' albo `--test-label'" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Zakończenie w stanie błędu z powodu uprzednich błędów" @@ -2384,56 +2397,56 @@ msgstr[0] "%s: Plik skurczył się o %s bajt" msgstr[1] "%s: Plik skurczył się o %s bajty" msgstr[2] "%s: Plik skurczył się o %s bajtów" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Słowo kluczowe %s jest nieznane albo jeszcze nie zaimplementowane" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "Czas spoza dozwolonego zakresu" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Nie może być użyty wzorzec %s" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Słowo kluczowe %s nie może być zastąpione" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Błędny nagłówek rozszerzony: brakuje długości" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Długość nagłówka rozszerzonego jest poza dozwolonym zakresem" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Długośc nagłówka rozszerzonego %*s jest poza zakresem" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Błędny nagłówek rozszerzony: brakuje odstępu po długości" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Błędny nagłówek rozszerzony: brakuje znaku równości" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Błędny nagłówek rozszerzony: brakuje znaku mowej linii" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Zignorowane nieznane słowo kluczowe nagłówka rozszerzonego `%s'" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" @@ -2442,27 +2455,27 @@ msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Nagłówek rozszerzony - %s=%s jest poza zakresem %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Błędny nagłówek rozszerzony: błędny %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Błędny nagłówek rozszerzony: nadmiarowe %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "Błędny nagłówek rozszerzony: błędny %s: niespodziewany ogranicznik %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Błędny nagłówek rozszerzony: błędny %s: nieparzysta liczba wartości" @@ -2503,7 +2516,7 @@ msgstr "Punkt kontrolny zapisu %u" msgid "Read checkpoint %u" msgstr "Punkt kontrolny czytania %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2511,69 +2524,69 @@ msgstr "" "genfile służy do operacji na plikach w ramach zestawu testów GNU paxutils.\n" "OPCJE:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Opcje tworzenia plików:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "ROZMIAR" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Utworzenie pliku o podanym ROZMIARZE" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Pisanie na pliku NAZWA zamiast na standardowe wyjście" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Czytanie nazw plików z PLIKU" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T czyta nazwy zakończone zerem" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "Wypełnienie pliku podanym WZORCEM. WZORZEC to 'default' albo 'zeros'" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Rozmiar bloku pliku rzadkiego" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "Utworzenie pliku rzadkiego. Reszta argumentów określa mapę pliku." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "POZYCJA" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Ustawienie pozycji zapisu przez zapisem danych" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Opcje statystyki plików" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Wypisanie zawartości struct stat dla każdego podanego pliku. Domyślny " "FORMAT: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Opcje równoczesnego wykonywania:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "OPCJA" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" @@ -2581,20 +2594,20 @@ msgstr "" "Wykonanie ARGUMENTÓW. Przydatne z --checkpoint i jednym z --cut, --append, --" "touch albo --unlink" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "Wykonanie podanej akcji (zobacz niżej) po napotkaniu punktu kontrolnego NUMER" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Ustaw datę następnej opcji --touch" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Wypisanie wykonanych punktów kontrolnych i kodu wyjścia POLECENIA" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2602,7 +2615,7 @@ msgstr "" "Akcje równoczesnego wykonania. Są podejmowane po osiągnięciu punktu " "kontrolnego o numerze podanym przez opcję --checkpoint" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2610,146 +2623,143 @@ msgstr "" "Obcięcie PLIKU do rozmiaru podanego przez poprzednia opcję --length (albo 0, " "jeżeli nie został podany)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "Dodanie ROZMIAR bajtów do PLIKU. ROZMIAR jak podany przez poprzednią opcję --" "length." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Uaktualnienie czasów dostepu i modyfikacji PLIKU" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Wykonanie POLECENIA" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "Usunięcie PLIKU" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Błędny rozmiar: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Liczba spoza dozwolonego zakresu: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Ujemny rozmiar: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "błąd stat(%s)" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "żądana długość pliku %lu, faktyczna %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "utworzony plik nie jest rzadki" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Błąd przetwarzania liczby blisko `%s'" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Nieznany format daty" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGUMENTY...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "nie można otworzyć `%s'" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "nie można ustawić pozycji" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "nazwa pliku zawiera znak NUL" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "nie można utworzyć pliku rzadkiego na standardowym wyjściu, użyj opcji --file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "nieprawidłowa maska (koło `%s')" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr " Nieznane pole `%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "nie można ustawić czasu na `%s'" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "nie można usunąć `%s'" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Polecenie zakończyło się poprawnie\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Polecenie zakończyło się niepoprawnie z kodem %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Polecenie zostało zakończone sygnałem %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Polecenie zostało zatrzymane sygnałem %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Został zapisany obraz pamięci (core dump) polecenia\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Polecenie zakończone\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat wymaga podania nazwy pliku" -#~ msgid "Cannot resolve hostname %s" -#~ msgstr "Nieznany adres nazwy %s" - -#~ msgid "suppress this warning." -#~ msgstr "wyłączyć to ostrzeżenie" +#~ msgid "Cannot save working directory" +#~ msgstr "Nie można zapisać bieżącego katalogu" diff --git a/po/pt.gmo b/po/pt.gmo index 0a5f0f6d76a84419796bf1a77b28efb9c978ebb7..8d91ad3191f134efce2dee7cc1a914ecf4a8edf6 100644 GIT binary patch delta 337 zcmXZWze@rE7{>8OskGEX!Kk3CQ~E)QaGn>`)h5(XlUtaQL%4-QjUpnrv`9y^wzr6G zZv6qxf&W8`G)v#ZrqBDlyzsof`ECx+L!Ej^@*`48(kv?N;nM0NA7O@khA!4{6JIco zA9#!3|JhxWa^yQa#%B!fKGDG+%%K&Nig*=MM;i=n7D4eVmT`iYIL9AEg!1h4L=-CU%)&fSF78eZlxT@)i=-*=k8o(#L5x!U-V+C)QH>rmWH*5t_SdHRd Qr_~JOWSzcS&g}f=FN3Zl!2kdN diff --git a/po/pt.po b/po/pt.po index 57516ea..f5f45b3 100644 --- a/po/pt.po +++ b/po/pt.po @@ -2,14 +2,16 @@ # Copyright (1995) Free Software Foundation, Inc. # António José Coutinho # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.11.9\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 1996-04-20 21:50\n" "Last-Translator: António José Coutinho \n" "Language-Team: Portuguese \n" +"Language: pt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" @@ -88,7 +90,7 @@ msgstr "Para mais informa msgid "Report bugs to %s.\n" msgstr "" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Erro desconhecido, do sistema" @@ -100,8 +102,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -140,56 +142,61 @@ msgstr "" msgid "write error" msgstr "Escreve-se registo\n" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "A antiga opção `%c' exige um argumento." -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "A antiga opção `%c' exige um argumento." -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "A antiga opção `%c' exige um argumento." -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "A antiga opção `%c' exige um argumento." -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "Valor inválido para tamanho de registo (record_size)" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "A antiga opção `%c' exige um argumento." -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "A antiga opção `%c' exige um argumento." -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "A antiga opção `%c' exige um argumento." +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "A antiga opção `%c' exige um argumento." + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "" @@ -519,190 +526,190 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Não se consegue executar uma \"shell\" remota" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Formato de data inválido \"%s\"" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Fim de ficheiro prematuro\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Valor inválido para tamanho de registo (record_size)" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Fim de ficheiro inesperado nos nomes truncados" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "Não se consegue abrir %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Comando desconhecido" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Isto não se parece a um arquivo \"tar\"" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Número total de de \"bytes\" escritos: %d\n" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 #, fuzzy msgid "Total bytes read" msgstr "Número total de de \"bytes\" escritos: %d\n" -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Número total de de \"bytes\" escritos: %d\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Valor inválido para tamanho de registo (record_size)" -#: src/buffer.c:511 +#: src/buffer.c:576 #, fuzzy msgid "No archive name given" msgstr "Não deram nome de arquivo, que fazer?" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Não se pode de verificar arquivos stdin ou stdout" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 #, fuzzy msgid "Cannot update compressed archives" msgstr "Não se pode actualizar o verificar um arquivo comprimido" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "No princípio da fita, pára-se imediatamente" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Erros de mais: termina-se" -#: src/buffer.c:744 +#: src/buffer.c:821 #, fuzzy, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Tamanho de bloco (blocksize) = blocos de %d" msgstr[1] "Tamanho de bloco (blocksize) = blocos de %d" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "" msgstr[1] "" -#: src/buffer.c:842 +#: src/buffer.c:919 #, fuzzy msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Não se conseguiu recuar o arquivo; pode ser ilegível sem -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, fuzzy, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "\aPreparar o volume no. %d para %s e premir \"Return\": " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "ATENÇÃO: O arquivo está incompleto" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -714,71 +721,71 @@ msgstr "" " ! Criar uma \"sub-shell\" (interpretador de comandos)\n" " ? Escrever esta lista\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Não há novo volume; termina-se. \n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s não tem continuidade neste volume" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s não tem continuidade neste volume" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, fuzzy, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s não é a dimensão correcta (%ld != %ld + %ld)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Este volume está fora da sequência" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, fuzzy, c-format msgid "Archive not labeled to match %s" msgstr "O arquivo não tem etiqueta e não condiz com %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, fuzzy, c-format msgid "Volume %s does not match %s" msgstr "O volume não condiz! %s!=%s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "" @@ -791,22 +798,22 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "%s: Só se pôde ler %d de um total de %ld \"bytes\"\n" msgstr[1] "%s: Só se pôde ler %d de um total de %ld \"bytes\"\n" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 #, fuzzy msgid "Contents differ" msgstr "Tempo de modificação" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Fim de ficheiro inesperado no arquivo" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 #, fuzzy msgid "File type differs" msgstr "%s: Ligação (\"link\") simbólica é diferente\n" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "" @@ -825,149 +832,149 @@ msgstr "%s: %s diferente\n" msgid "Mod time differs" msgstr "Tempo de modificação" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 #, fuzzy msgid "Size differs" msgstr "%s: Ligação (\"link\") simbólica é diferente\n" -#: src/compare.c:269 +#: src/compare.c:263 #, fuzzy, c-format msgid "Not linked to %s" msgstr "%s: Não está ligado a %s\n" -#: src/compare.c:292 +#: src/compare.c:287 #, fuzzy msgid "Symlink differs" msgstr "%s: Ligação (\"link\") simbólica é diferente\n" -#: src/compare.c:321 +#: src/compare.c:316 #, fuzzy msgid "Device number differs" msgstr "%s: Os números do periférico mudaram\n" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verificação" -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "" "Tipo de ficheiro \"%c\" desconhecido para %s; comparado como um ficheiro " "normal" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" -#: src/compare.c:599 +#: src/compare.c:593 #, fuzzy, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "ERRO DE VERIFICAÇÃO: Encontraram-se %d cabeçalhos inválidos" msgstr[1] "ERRO DE VERIFICAÇÃO: Encontraram-se %d cabeçalhos inválidos" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, fuzzy, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: não foi modificado; não será arquivado" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" -#: src/create.c:661 +#: src/create.c:648 #, fuzzy, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: não foi modificado; não será arquivado" -#: src/create.c:1078 +#: src/create.c:1062 #, fuzzy, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "O ficheiro %s diminuiu em %d \"bytes\", será completado com zeros" msgstr[1] "O ficheiro %s diminuiu em %d \"bytes\", será completado com zeros" -#: src/create.c:1175 +#: src/create.c:1158 #, fuzzy, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: Está num outro sistema de ficheiros; não será arquivado" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 #, fuzzy msgid "contents not dumped" msgstr " (imagem da memória despejada \"core dumped\")" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Tipo de ficheiro desconhecido; ficheiro ignorado" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr " ligação para %s\n" -#: src/create.c:1543 +#: src/create.c:1688 #, fuzzy, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: não foi modificado; não será arquivado" -#: src/create.c:1552 +#: src/create.c:1697 #, fuzzy, c-format msgid "%s: file is the archive; not dumped" msgstr "%s é o arquivo; não será arquivado" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Salta para próximo cabeçalho" @@ -975,80 +982,80 @@ msgstr "Salta para pr msgid "Deleting non-header from archive" msgstr "Apaga-se do arquivo um não-cabeçalho" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Estão-se a extrair ficheiros contíguos como sendo ficheiros normais" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "" "Está-se a tentar extrair ligações simbólicas (sym. links) como ligações " "físicas (hard links)" -#: src/extract.c:1183 +#: src/extract.c:1339 #, fuzzy, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "" "Não se pode extraír `%s' -- é a continuação de um ficheiro de outro volume" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Fim de ficheiro inesperado no ficheiro de arquivo" -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "" "Tipo \"%c\" do ficheiro \"%s\" desconhecido; extrai-se como um ficheiro " "normal" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Não se consegue mudar o nome de %s para %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "Mudou-se o nome do directoria %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, fuzzy, c-format msgid "%s: Directory has been renamed" msgstr "Mudou-se o nome do directoria %s" -#: src/incremen.c:539 +#: src/incremen.c:531 #, fuzzy, c-format msgid "%s: Directory is new" msgstr "O directoria %s é novo" @@ -1161,174 +1168,174 @@ msgstr "%s: Apaga-se %s\n" msgid "%s: Cannot remove" msgstr "Não se consegue apagar %s" -#: src/list.c:115 +#: src/list.c:130 #, fuzzy, c-format msgid "%s: Omitting" msgstr "Omite-se %s" -#: src/list.c:133 +#: src/list.c:146 #, fuzzy, c-format msgid "block %s: ** Block of NULs **\n" msgstr "bloco %10ld: ** Bloco de NULs **\n" -#: src/list.c:159 +#: src/list.c:172 #, fuzzy, c-format msgid "block %s: ** End of File **\n" msgstr "bloco %10ld: ** Fim-de-ficheiro **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, fuzzy, c-format msgid "block %s: " msgstr "bloco %10ld: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" -#: src/list.c:821 +#: src/list.c:836 #, fuzzy, c-format msgid "Archive base-256 value is out of %s range" msgstr "Este volume está fora da sequência" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " ligação para %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, fuzzy, c-format msgid " unknown file type %s\n" msgstr " tipo de ficheiro desconhecido \"%c\"\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Cabeçalho de volume--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, fuzzy, c-format msgid "--Continued at byte %s--\n" msgstr "--Continua no \"byte\" %ld--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Criação de directoria::" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Não se pode mudar para a directoria %s" + +#: src/misc.c:571 #, fuzzy, c-format msgid "Renaming %s to %s\n" msgstr "Mudou-se o nome %s para %s" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, fuzzy, c-format msgid "%s: Cannot rename to %s" msgstr "Não se consegue mudar o nome de %s para %s" -#: src/misc.c:534 +#: src/misc.c:604 #, fuzzy, c-format msgid "Renaming %s back to %s\n" msgstr "Mudou-se o nome %s para %s" -#: src/misc.c:669 -#, fuzzy -msgid "Cannot save working directory" -msgstr "Não se pode mudar para a directoria %s" - -#: src/misc.c:675 -#, fuzzy -msgid "Cannot change working directory" -msgstr "Não se pode mudar para a directoria %s" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "Mudou-se o nome do directoria %s" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Não foi encontrado no arquivo" -#: src/names.c:622 +#: src/names.c:615 #, fuzzy, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Não foi encontrado no arquivo" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "O arquivo não tem etiqueta e não condiz com %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1353,7 +1360,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1364,7 +1371,7 @@ msgid "" " tar -xf archive.tar # Extract all files from archive.tar.\n" msgstr "" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1376,80 +1383,80 @@ msgid "" " never, simple always make simple backups\n" msgstr "" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" -#: src/tar.c:394 +#: src/tar.c:395 #, fuzzy msgid "create a new archive" msgstr "Fim de ficheiro inesperado no arquivo" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1457,566 +1464,566 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" -#: src/tar.c:452 +#: src/tar.c:453 #, fuzzy msgid "remove files after adding them to the archive" msgstr "Retira-se a especificação do \"drive\" aos nomes no arquivo" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" -#: src/tar.c:556 +#: src/tar.c:557 #, fuzzy msgid "create/list/extract multi-volume archive" msgstr "Não se pode verificar arquivos multi-volume" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" -#: src/tar.c:582 +#: src/tar.c:583 #, fuzzy msgid "Archive format selection:" msgstr "Arquivo para stdin" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Há conflitos entre as opções de compressão" -#: src/tar.c:615 +#: src/tar.c:616 #, fuzzy msgid "use archive suffix to determine the compression program" msgstr "Não se consegue escrever para o programa de compressão" -#: src/tar.c:617 +#: src/tar.c:618 #, fuzzy msgid "do not use archive suffix to determine the compression program" msgstr "Não se consegue escrever para o programa de compressão" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" -#: src/tar.c:641 +#: src/tar.c:642 #, fuzzy msgid "change to directory DIR" msgstr "Não se pode mudar para a directoria %s" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" -#: src/tar.c:682 +#: src/tar.c:683 #, fuzzy msgid "don't strip leading `/'s from file names" msgstr "Retira-se \"/\" das ligações (\"links\") absolutas " -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2024,291 +2031,295 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" -#: src/tar.c:761 +#: src/tar.c:764 #, fuzzy msgid "ask for confirmation for every action" msgstr "Não se consegue obter confirmação, do utilizador" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Não se pode especificar mais do que uma das opções \"-Acdtrux\"" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Há conflitos entre as opções de compressão" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr "Opção \"%c\" desconhecida" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "Valor inválido para tamanho de registo (record_size)" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 #, fuzzy msgid "Invalid record size" msgstr "Valor inválido para tamanho de registo (record_size)" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "O tamanho dos registos tem que ser múltiplo de %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "" -#: src/tar.c:2020 +#: src/tar.c:2039 #, fuzzy msgid "Only one --to-command option allowed" msgstr "Só se permite uma opção de compressão" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, fuzzy, c-format msgid "Unknown density: `%c'" msgstr "Opção \"%c\" desconhecida" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "As opções \"-[0-7][lmh]\" não são suportadas por *este* tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "A antiga opção `%c' exige um argumento." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 #, fuzzy msgid "Multiple archive files require `-M' option" msgstr "Para usar vários arquivos é necessária a opção \"-M\"" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "" msgstr[1] "" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Não se pode verificar arquivos multi-volume" -#: src/tar.c:2419 +#: src/tar.c:2438 #, fuzzy msgid "Cannot verify compressed archives" msgstr "Não se pode actualizar o verificar um arquivo comprimido" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Não se pode de usar arquivos multi-volume comprimidos" -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "Não se pode actualizar o verificar um arquivo comprimido" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Recusa-se, covardemente, a criar um arquivo vazio" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "As opções \"-Aru\" são imcompatíveis com \"-f -\"" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Tem que se especificar uma das opções \"-Acdtrux\"" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2320,83 +2331,83 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: O ficheiro diminui em %d bytes, (desgraça!)" msgstr[1] "%s: O ficheiro diminui em %d bytes, (desgraça!)" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2437,243 +2448,251 @@ msgstr "Escreve-se o ponto de verifica msgid "Read checkpoint %u" msgstr "Leu-se o ponto de verificação %d" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Há conflitos entre as opções de compressão" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr "" "\n" "Forma de usar: %s [OPÇÃO]...\n" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 #, fuzzy msgid "Update the access and modification times of FILE" msgstr "Não se conseguiu modificar os tempos de acesso e modificação de %s" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Formato de data inválido \"%s\"" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Erro desconhecido, do sistema" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, fuzzy, c-format msgid "cannot open `%s'" msgstr "Não se consegue abrir %s" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Não se consegue executar %s" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr "Opção \"%c\" desconhecida" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "Não se consegue executar \"stat\" para o ficheiro %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "Não se consegue abrir %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Nomes de ficheiros truncados--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Não se pode mudar para a directoria %s" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "Não se consegue mudar o nome de %s para %s" + #~ msgid "Reading %s\n" #~ msgstr "Leitura de %s\n" diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo index 0e52ec58c984082e7e6fd340fc21c37dcbe0f0cf..65149dcd15ba4f13e1b05eaa1e16564f69ab2bbd 100644 GIT binary patch delta 2713 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 GPW}rY%^sit diff --git a/po/pt_BR.po b/po/pt_BR.po index 03bea5c..555fbe7 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -7,14 +7,16 @@ # António José Coutinho , 1996. # Marcus Moreira de Souza # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.13.25\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2002-11-27 20:30-0300\n" "Last-Translator: Alexandre Folle de Menezes \n" "Language-Team: Brazilian Portuguese \n" +"Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" @@ -93,7 +95,7 @@ msgstr "" "Informar erros no programa para .\n" "Informar erros na tradução para .\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Erro de sistema desconhecido" @@ -105,8 +107,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -144,56 +146,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: a opção `%s' é ambígua\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: a opção `--%s' não admite um argumento\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: a opção `%c%s' não admite um argumento\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: a opção `%s' exige um argumento\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: opção `--%s' não reconhecida\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: opção `%c%s' não reconhecida\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: opção inválida -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: a opção exige um argumento -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: a opção `-W %s' é ambígua\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: a opção `-W %s' não aceita um argumento\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: a opção `%s' exige um argumento\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "memória esgotada" @@ -522,190 +529,190 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Impossível executar um shell remoto" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Direção de procura fora de faixa" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Modo inválido informado na opção" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Carimbo de horário inválido" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Deslocamento de procura fora de faixa" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Tamanho da fita inválido" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Deslocamento de procura fora de faixa" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Fim de arquivo prematuro\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "%s: opção inválida -- %c\n" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Final-de-arquivo inesperado no arquivo-tar" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "%s: Impossível saltar para %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Comando sem sentido" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Este não parece ser um arquivo-tar" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Total de bytes escritos: %s (%sB, %sB/s)\n" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Total de bytes escritos: %s (%sB, %sB/s)\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(pipe)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Valor inválido para \"record_size\"" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Nome de arquivo-tar não informado" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "" "Impossível verificar arquivos-tar de entrada/saída padrão (stdin/stdout)" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Impossível atualizar arquivos-tar compactados" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "No princípio da fita, encerrando agora" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Muitos erros, encerrando" -#: src/buffer.c:744 +#: src/buffer.c:821 #, fuzzy, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Tamanho de registro = %lu blocos" msgstr[1] "Tamanho de registro = %lu blocos" -#: src/buffer.c:765 +#: src/buffer.c:842 #, fuzzy, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Bloco desalinhado (%lu bytes) no arquivo-tar" msgstr[1] "Bloco desalinhado (%lu bytes) no arquivo-tar" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Impossível recuar no arquivo-tar; pode estar ilegível sem -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: contém um número de volume inválido" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Sobrecarga de número de volumes" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Prepare o volume #%d para %s e tecle Enter: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Fim-de-arquivo onde era esperado resposta do usuário" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "AVISO: O arquivo-tar está incompleto" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -717,71 +724,71 @@ msgstr "" " ! Criar um \"sub-shell\"\n" " ? Mostra esta lista\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Nenhum volume novo; encerrando.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, fuzzy, c-format msgid "%s command failed" msgstr "comando `%s' falhou" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s não continua neste volume" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s não continua neste volume" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s é o tamanho errado (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Este volume está fora de sequência" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "O arquivo-tar não rotulado para casar com %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "O volume %s não casa com %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "" @@ -792,20 +799,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Só foi possível ler %lu de %lu bytes" msgstr[1] "Só foi possível ler %lu de %lu bytes" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "O conteúdo é diferente" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Final-de-arquivo inesperado no arquivo-tar" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "O tipo de arquivo é diferente" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Os modos são diferentes" @@ -821,144 +828,144 @@ msgstr "os gid s msgid "Mod time differs" msgstr "Os horários de modificação são diferentes" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Os tamanhos são diferentes" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Não está \"linkado\" a %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "O (\"Link\") simbólico é diferente" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "O número de dispositivo é diferente" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verificar " -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "" "%s: Tipo de arquivo \"%c\" desconhecido, comparado como um arquivo normal" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" -#: src/compare.c:599 +#: src/compare.c:593 #, fuzzy, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "ERRO DE VERIFICAÇÃO: detectados %d cabeçalhos inválidos" msgstr[1] "ERRO DE VERIFICAÇÃO: detectados %d cabeçalhos inválidos" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "valor %s fora da faixa %s: %s..%s; substituindo %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "valor %s fora da faixa %s: %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Gerando cabeçalhos octais negativos" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, fuzzy, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: arquivo sem alterações; não será arquivado" -#: src/create.c:634 +#: src/create.c:621 #, fuzzy, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: arquivo sem alterações; não será arquivado" -#: src/create.c:661 +#: src/create.c:648 #, fuzzy, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: arquivo sem alterações; não será arquivado" -#: src/create.c:1078 +#: src/create.c:1062 #, fuzzy, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: o arquivo diminuiu %s bytes; completando com zeros" msgstr[1] "%s: o arquivo diminuiu %s bytes; completando com zeros" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: arquivo está em outro sistema de arquivos; não será arquivado" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Tipo de arquivo desconhecido; arquivo ignorado" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr " link para %s\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: arquivo sem alterações; não será arquivado" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: arquivo é o arquivo-tar; não será arquivado" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: arquivo alterado enquanto estava sendo lido" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: \"socket\" ignorado" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: porta ignorada" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Pulando para o próximo cabeçalho" @@ -966,75 +973,75 @@ msgstr "Pulando para o pr msgid "Deleting non-header from archive" msgstr "Removendo um não-cabeçalho do arquivo-tar" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, fuzzy, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: o carimbo de horário %s está %lu s no futuro" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Inconsistência inesperada ao criar diretório" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Diretório renomeado antes de se poder extrair seu estado" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Extraindo arquivos contíguos como sendo arquivos normais" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Tentativa de extrair \"links\" simbólicos como \"links\" físicos" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Impossível extrair -- arquivo é a continuação de outro volume" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Fim de arquivo inesperado nos nomes cifrados" -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Tipo de arquivo '%c' desconhecido; extraindo como arquivo normal" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Impossível fazer backup deste arquivo" -#: src/extract.c:1402 +#: src/extract.c:1568 #, fuzzy, c-format msgid "Cannot rename %s to %s" msgstr "%s: Impossível renomear para %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Diretório foi renomeado" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Diretório foi renomeado" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: O diretório é novo" @@ -1146,35 +1153,35 @@ msgstr "%s: Removendo %s\n" msgid "%s: Cannot remove" msgstr "%s: Impossível remover" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Omitindo" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "bloco %s: ** Bloco de NULs **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "bloco %s: ** Fim-de-arquivo **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "bloco %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Espaço em branco no cabeçalho onde valor numérico `%s' era esperado" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1182,138 +1189,140 @@ msgstr "" "complemento de dois" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "O valor octal do arquivo-tar %.*s está fora de faixa %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "o arquivo-tar contém cabeçalhos base-64 obsoletos" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "A string base-64 assinada do arquivo-tar %s está fora de faixa %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "O valor base-256 de arquivo-tar está fora da faixa %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "O arquivo-tar contém %.*s onde valor numérico %s era esperado" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "o valor do arquivo-tar %s está fora da faixa %s: %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " link para %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " tipo de arquivo \"%s\" desconhecido\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Cabeçalho de volume--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Continua no byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Criando de diretório:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Impossível mudar o diretório de trabalho" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Renomeando %s para %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Impossível renomear para %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Renomeando %s de volta para %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Impossível salvar diretório de trabalho" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Impossível mudar o diretório de trabalho" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: arquivo removido antes de ser lido" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: arquivo removido antes de ser lido" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "processo filho" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "canal interprocesso" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Não foi encontrado no arquivo-tar" -#: src/names.c:622 +#: src/names.c:615 #, fuzzy, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Não foi encontrado no arquivo-tar" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "O arquivo-tar não rotulado para casar com %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1337,7 +1346,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 #, fuzzy msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " @@ -1357,7 +1366,7 @@ msgstr "" " %s -tvf arquivo.tar # Lista todos os arquivos em arquivo.tar.\n" " %s -xf arquivo.tar # Extrai todos os arquivos de arquivo.tar\n" -#: src/tar.c:356 +#: src/tar.c:357 #, fuzzy msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" @@ -1379,80 +1388,80 @@ msgstr "" " nil, existing numera se existe backup numerado, se não faz simples\n" " never, simple sempre faz backups simples\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" -#: src/tar.c:394 +#: src/tar.c:395 #, fuzzy msgid "create a new archive" msgstr "Final-de-arquivo inesperado no arquivo-tar" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1460,565 +1469,565 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 #, fuzzy msgid "extract files to standard output" msgstr "Erro ao escrever para saída padrão" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" -#: src/tar.c:556 +#: src/tar.c:557 #, fuzzy msgid "create/list/extract multi-volume archive" msgstr "Impossível verificar arquivos-tar multi-volume" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" -#: src/tar.c:582 +#: src/tar.c:583 #, fuzzy msgid "Archive format selection:" msgstr "Opções de formato do arquivo-tar conflitantes" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Opções de compressão conflitantes" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" -#: src/tar.c:641 +#: src/tar.c:642 #, fuzzy msgid "change to directory DIR" msgstr "Impossível mudar o diretório de trabalho" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" -#: src/tar.c:682 +#: src/tar.c:683 #, fuzzy msgid "don't strip leading `/'s from file names" msgstr "Removendo `%.*s' inicial dos nomes dos membros" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "O volume %s não casa com %s" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2026,290 +2035,295 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" +msgstr "Modo inválido informado na opção" + +#: src/tar.c:758 +msgid "print file time to its full resolution" msgstr "" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Não é possível especificar mais do que uma das opções \"-Acdtrux\"" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Opções de compressão conflitantes" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr " tipo de arquivo \"%s\" desconhecido\n" -#: src/tar.c:1017 +#: src/tar.c:1020 #, fuzzy msgid "Date sample file not found" msgstr "Arquivo de datas não encontrado" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Substituindo %s pelo formato de data desconhecido %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, fuzzy, c-format msgid "%s: file list already read" msgstr "%s: arquivo é o arquivo-tar; não será arquivado" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "%s: arquivo é o arquivo-tar; não será arquivado" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Fator de blocagem inválido" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Tamanho da fita inválido" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Mais do que uma data limite" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Grupo inválido" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Modo inválido informado na opção" -#: src/tar.c:1894 +#: src/tar.c:1912 #, fuzzy msgid "Invalid number" msgstr "Número de inode inválido" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Dono inválido" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Tamanho de registro inválido" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "O tamanho dos registros tem que ser múltiplo de %d." -#: src/tar.c:2000 +#: src/tar.c:2019 #, fuzzy msgid "Invalid number of elements" msgstr "Tamanho da fita inválido" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "As opções \"-[0-7][lmh]\" não são suportadas por *este* tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "A opção antiga `%c' exige um argumento." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 #, fuzzy msgid "Multiple archive files require `-M' option" msgstr "Múltiplos arquivos-tar é exigem a opção \"-M\"" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Impossivel combinar --listed-incremental com --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, fuzzy, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: O rótulo do volume é longo demais (o limite é %lu bytes)" msgstr[1] "%s: O rótulo do volume é longo demais (o limite é %lu bytes)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Impossível verificar arquivos-tar multi-volume" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Impossível verificar arquivos-tar compactados" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Impossível usar arquivos-tar compactados multi-volume" -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "Impossível atualizar arquivos-tar compactados" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Recusando a criar um arquivo-tar vazio" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "As opções `-Aru' são incompatíveis com `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Deve ser especificada uma das opções \"-Acdtrux\"" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2321,84 +2335,84 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: O arquivo encolheu %s bytes" msgstr[1] "%s: O arquivo encolheu %s bytes" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Carimbo de horário fora da faixa" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "A string base-64 assinada do arquivo-tar %s está fora de faixa %s" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, fuzzy, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "o valor do arquivo-tar %s está fora da faixa %s: %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2439,247 +2453,258 @@ msgstr "Ponto de verifica msgid "Read checkpoint %u" msgstr "Ponto de verificação de leitura %d" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Gera arquivos de dados para pacote de testes GNU tar.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Opções de compressão conflitantes" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "Erro ao escrever para saída padrão" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr "" "\n" "Uso: %s [OPÇÃO]...\n" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Carimbo de horário inválido" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Número do inode fora de faixa" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Erro de sistema desconhecido" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Impossível fechar" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr " tipo de arquivo \"%s\" desconhecido\n" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "%s: Impossível saltar para %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "%s: Impossível saltar para %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, fuzzy, c-format msgid "Command failed with status %d\n" msgstr "O processo filho morreu com o sinal %d" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Nomes de arquivos truncados--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Impossível salvar diretório de trabalho" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s: Impossível renomear para %s" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: opção ilegal -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Lendo %s\n" + #, fuzzy #~ msgid "" #~ "\n" @@ -2689,12 +2714,6 @@ msgstr "--Nomes de arquivos truncados--\n" #~ "Informar erros no programa para .\n" #~ "Informar erros na tradução para .\n" -#~ msgid "Reading %s\n" -#~ msgstr "Lendo %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Erro não é recuperável: saindo agora" - #, fuzzy #~ msgid "filter the archive through compress" #~ msgstr "%s: arquivo é o arquivo-tar; não será arquivado" @@ -2737,6 +2756,9 @@ msgstr "--Nomes de arquivos truncados--\n" #~ msgid "Premature end of file" #~ msgstr "Fim de arquivo prematuro" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Erro não é recuperável: saindo agora" + #~ msgid "block size" #~ msgstr "tamanho de bloco" diff --git a/po/ro.gmo b/po/ro.gmo index 6ca8d607e390be8e38805bbe0a4a7f305d51b1e7..43bd100e7575112d85279a96ebe7386f257d908e 100644 GIT binary patch delta 5717 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 pt0yBeV2-b`Tf_H{0+q3bcFx_ delta 5971 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 diff --git a/po/ro.po b/po/ro.po index b72ef88..1397ea5 100644 --- a/po/ro.po +++ b/po/ro.po @@ -3,14 +3,16 @@ # Laurentiu Buzdugan >, 2005. # # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.15.1\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2005-07-15 12:00-0500\n" "Last-Translator: Laurentiu Buzdugan \n" "Language-Team: Romanian \n" +"Language: ro\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-2\n" "Content-Transfer-Encoding: 8bit\n" @@ -87,7 +89,7 @@ msgstr "" msgid "Report bugs to %s.\n" msgstr "Raportaþi bug-uri la %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Eroare sistem necunoscutã" @@ -101,8 +103,8 @@ msgstr "Afi msgid "give a short usage message" msgstr "Afiºeazã un scurt mesaj despre folosire" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NUME" @@ -141,56 +143,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: opþiunea `%s' este ambiguã\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: opþiunea `--%s' nu permite un argument\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: opþiunea `%c%s' nu permite un argument\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: opþiunea `%s' necesitã un argument\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: opþiunea `--%s' nu este recunoscutã\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: opþiunea `%c%s' bu este recunoscutã\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: opþiune invalidã -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: opþiunea necesitã un argument -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: opþiunea `-W %s' este ambiguã\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: opþiunea `-W %s' nu permite un argument\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: opþiunea `%s' necesitã un argument\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "memorie epuizatã" @@ -514,190 +521,190 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Nu pot executa shell remote" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Direcþie cãutare (seek direction) în afara domeniului" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Mod invalid furnizat ca opþiune" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Înregistrare timp invalidã" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Decalaj cãutare (seek offset) în afara domeniului" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Lungime de bandã invalidã" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Decalaj cãutare (seek offset) în afara domeniului" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: eof prematur\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Mod de operare principal:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "EOF neaºteptat în arhivã" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "NUMÃR" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FIªIER" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "%s: Nu pot cãuta (seek) cãtre %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Comandã gunoi" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Aceasta nu pare a fi o arhivã tar" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Numãr total octeþi scriºi: %s (%s, %s/s)\n" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Numãr total octeþi scriºi: %s (%s, %s/s)\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(pipe)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Valoare invalidã pentru record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Nume arhivã nu a fost furnizat" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Nu pot verifica arhive atdin/stdout" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Arhiva este compresatã. Folosiþi opþiunea %s." -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Nu pot actualiza arhive comprimate" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "La începutul benzii, ieºim acum" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Prea multe erori, ieºim" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Dimensiune înregistrare = %lu bloc" msgstr[1] "Dimensiune înregistrare = %lu blocuri" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Bloc ne-aliniat (%lu octet) în arhivã" msgstr[1] "Bloc ne-aliniat (%lu octeþi) în arhivã" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Nu pot backspace fiºierul arhivã; acesta ar putea fi de necitit fãrã -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek nu s-a oprit la limita unei înregistrãri" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: conþine numãr volum invalid" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Depãºire domeniu numãr volum" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Preparã volum #%d pentru %s ºi apasã tasta return: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "EOF unde era aºteptat rãspunsul utilizatorului" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "AVERTISMENT: Arhiva este incompletã" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -709,72 +716,72 @@ msgstr "" " ! Lanseazã un subshell\n" " ? Afiºeazã aceastã listã de opþiuni\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Nici un volum nou; terminãm.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, fuzzy, c-format msgid "%s command failed" msgstr "`%s' comanda a eºuat" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s nu este continuat pe acest volum" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s nu este continuat pe acest volum" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s este de dimensiune greºitã (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Acest volum este în afara secvenþei" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Arhiva nu este etichetatã sã se potriveascã cu %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Volumul %s nu se potriveºte cu %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, fuzzy, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" "%s: nume fiºier prea lung pentru a fi storat într-un antet GNU multivolum" -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "rmtlseek nu s-a oprit la limita unei înregistrãri" @@ -786,20 +793,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Am putut citi doar %lu din %lu octet" msgstr[1] "Am putut citi doar %lu din %lu octeþi" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Conþinuturile diferã" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "EOF neaºteptat în arhivã" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Tipul fiºierelor diferã" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Modurile diferã" @@ -815,145 +822,145 @@ msgstr "Gid difer msgid "Mod time differs" msgstr "Timp modificare diferã" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Dimensiunea diferã" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Nu este link-at cãtre %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symlink diferã" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Numãr dispozitiv diferã" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verificã " -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "" "%s: Tip de fiºier necunoscut '%c', folosesc diff ca pentru un fiºier normal" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Arhiva conþine nume de fiºiere cu prefixele îndepãrtate." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Verificare ar putea eºua sã gãseascã fiºierele originale." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "VERIFICà EªEC: detectat %d antet invalid" msgstr[1] "VERIFICà EªEC: detectat %d antete invalide" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Un bloc zero singuratic la %s" -#: src/create.c:68 +#: src/create.c:72 #, fuzzy, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: conþine o etichetã de director cache; nimic generat" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "valoarea %s în afara %s intervalului %s..%s; înlocuiesc %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "valoarea %s în afara %s intervalului %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Generez antete octale negative" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: numele fiºierul este prea lung (maxim %d); nimic generat" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: numele fiºierul este prea lung (nu poate fi spart); nimic generat" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: numele link-ului este prea lung; nimic generat" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Fiºier scurtat cu %s octet; completat cu zerouri" msgstr[1] "%s: Fiºier scurtat cu %s octeþi; completat cu zerouri" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: fiºierul este pe un sistem de fiºiere diferit; nimic generat" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Tip de fiºier necunoscut; fiºier ignorat" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "Link lipsã cãtre '%s'.\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: fiºierul este neschimbat; nimic generat" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: fiºierul este în arhivã; nimic generat" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 #, fuzzy msgid "directory not dumped" msgstr "%s: conþine o etichetã de director cache; nimic generat" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: fiºier schimbat în timp ce îl citeam" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: socket ignorat" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: uºã ignoratã" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Sãrim la urmãtorul antet" @@ -961,75 +968,75 @@ msgstr "S msgid "Deleting non-header from archive" msgstr "ªtergem non-antet din arhivã" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: înregistrare de timp neverosimilã %s" -#: src/extract.c:229 +#: src/extract.c:295 #, fuzzy, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: înregistrare timp %s este %lu sec în viitor" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Inconsistenþã neaºteptatã când cream directorul" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Director redenumit înainte de a fi putut extrage starea sa" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Extragem fiºiere contigue ca fiºiere normale" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Încerc extragerea link-urilor simbolice ca link-uri hard" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Nu pot extrage -- fiºierul este continuat din altã arhivã" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "EOF neaºteptat în numele amestecate" -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Tip de fiºier necunoscut '%c', extras ca fiºier normal" -#: src/extract.c:1223 +#: src/extract.c:1379 #, fuzzy, c-format msgid "Current %s is newer or same age" msgstr "`%s' curent este mai nou" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Nu am putut arhiva (backup) acest fiºier" -#: src/extract.c:1402 +#: src/extract.c:1568 #, fuzzy, c-format msgid "Cannot rename %s to %s" msgstr "%s: Nu pot redenumi ca %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Directorul a fost redenumit" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Directorul a fost redenumit" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Directorul este nou" @@ -1143,35 +1150,35 @@ msgstr "%s: msgid "%s: Cannot remove" msgstr "%s: Nu pot ºterge" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Omis" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "bloc %s: ** Bloc de NUL-uri **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "bloc %s: ** Sfârºit de fiºier **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "bloc %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Spaþii libere în antet unde valoare %s numericã aºteptatã" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1179,139 +1186,141 @@ msgstr "" "lui doi" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Valoare octalã arhivã %.*s este în afara %s intervalului" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Arhiva conþine antete în baza-64 depãºite" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "ªir în baza-64 (semnãtura arhivei) %s este în afara %s intervalului" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Valoare baza-256 a arhivei este în afara %s intervalului" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Arhiva conþine %.*s unde valoare %s numericã aºteptatã" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, fuzzy, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Valoare arhivã %s este în afara %s intervalului %s.%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " link cãtre %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " tip fiºier necunoscut %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Link Lung--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Nume Lung--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Antet Volum--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Continuat la octet %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Creez director:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Nu pot schimba directorul în care lucrez" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Redenumesc %s ca %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Nu pot redenumi ca %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Redenumesc %s înapoi ca %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Nu pot salva directorul în care lucrez" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Nu pot schimba directorul în care lucrez" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Fiºier ºters înainte de a-l putea citi" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Fiºier ºters înainte de a-l putea citi" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "proces copil" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "canal între-procese" -#: src/names.c:601 +#: src/names.c:594 #, fuzzy msgid "Pattern matching characters used in file names" msgstr "pattern-urile de excludere potrivesc începutul numelor de fiºiere" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Nu a fost gãsit în arhivã" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Lucrul cerut nu a fost gãsit în arhivã" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Arhiva nu este etichetatã sã se potriveascã cu %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1335,7 +1344,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 #, fuzzy msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " @@ -1363,7 +1372,7 @@ msgstr "" " nil, existing numeroteazã dacã existã backup numerotat, altfel simplu\n" " never, simple întotdeauna creazã backup simplu\n" -#: src/tar.c:356 +#: src/tar.c:357 #, fuzzy msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" @@ -1392,79 +1401,79 @@ msgstr "" " nil, existing numeroteazã dacã existã backup numerotat, altfel simplu\n" " never, simple întotdeauna creazã backup simplu\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Mod de operare principal:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "listeazã conþinutul unei arhive" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "extrage fiºiere dintr-o arhivã" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "creazã o nouã arhivã" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "gãseºte diferenþele dintre arhive ºi sistemul de fiºiere" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "adaugã fiºiere la sfârºitul unei arhive" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "adaugã numai fiºierele mai noi decât copia din arhivã" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "adaugã fiºiere tar la o arhivã" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "ºterge din arhivã (nu pe benzi magnetice!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Modificatori operaþie:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "manipuleazã eficient fiºierele rerefiate (sparse)" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "foloseºte vechiul format GNU pentru backup incremental" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "foloseºte noul format GNU pentru backup incremental" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "nu termina cu non-zero pentru fiºiere ce nu pot fi citite" -#: src/tar.c:428 +#: src/tar.c:429 #, fuzzy msgid "" "process only the NUMBERth occurrence of each file in the archive; this " @@ -1477,314 +1486,314 @@ msgstr "" "--diff, --extract sau --list ºi când o listã de fiºiere este datã fie în " "linia de comandã sau folosind opþiunea -T. Implicit, NUMBER=1." -#: src/tar.c:434 +#: src/tar.c:435 #, fuzzy msgid "archive is seekable" msgstr "Arhiva este cãutabilã" -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "Arhiva este cãutabilã" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "încearcã sã verifici arhiva dupã scrierea sa" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "ºterge fiºierele dupã ce acestea sunt adãugate la arhivã" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "nu înlocui fiºierele existente la extragere" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "nu înlocui fiºierele existente care sunt mai noi decât copiile acestora din " "arhivã" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "supra-scrie fiºierele existente la extragere" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "ºterge fiecare fiºier înainte de a extrage peste acesta" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "goleºte ierarhiile înainte de a extrage un director" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "pãstrazã metadata directoarelor existente" -#: src/tar.c:466 +#: src/tar.c:467 #, fuzzy msgid "overwrite metadata of existing directories when extracting (default)" msgstr "supra-scrie fiºierele existente la extragere" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "extrage fiºierele la ieºirea standard" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "COMANDÃ" -#: src/tar.c:477 +#: src/tar.c:478 #, fuzzy msgid "pipe extracted files to another program" msgstr "extrage fiºierele la ieºirea standard" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Manipulare atribute fiºiere:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "forþeazã NUME ca proprietar pentru fiºierele adãugate" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "forþeazã NUME ca grup pentru fiºierele adãugate" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATA-FIªIERULUI" -#: src/tar.c:493 +#: src/tar.c:494 #, fuzzy msgid "set mtime for added files from DATE-OR-FILE" msgstr "stocheazã numai fiºiere mai noi decât DATA-FIªIERULUI" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "SCHIMBÃRI" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "forþeazã mod (simbolic) SCHIMBÃRI pentru fiºierele adãugate" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "nu extrage timpul de modificare al fiºierului" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "încearcã extragerea fiºierelor cu aceleaºi drepturi (ownership)" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "extrage fiºierele ca dvs. însuºi" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "foloseºte întotdeauna numere pentru numele utilizator/grup" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "sorteazã numele de extras sã se potriveascã cu arhiva" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "la fel ca -p ºi -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Selectare ºi schimbare unitate:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARHIVÃ" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "foloseºte fiºier arhivã sau unitate ARHIVÃ" -#: src/tar.c:534 +#: src/tar.c:535 #, fuzzy msgid "archive file is local even if it has a colon" msgstr "fiºier arhivã este local chiar când are un :" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "foloseºte rmt COMANDà în loc de rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "foloseºte remote COMANDà în loc de rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "specificã unitate ºi densitate" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "creazã/listeazã/extrage arhiva pe volume multiple" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "schimbã banda dupã scriere a NUMÃR x 1024 octeþi" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "ruleazã script la terminarea fiecãrei benzi (implicã -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "foloseºte/actualizeazã numãrul de volum în FIªIER" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Blocuri unitate:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOCURI" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOCURI x 512 octeþi pe întregistrare" -#: src/tar.c:573 +#: src/tar.c:574 #, fuzzy msgid "NUMBER of bytes per record, multiple of 512" msgstr "DIMENSIUNE octeþi pe înregistrare, multiplu de 12" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "ignorã blocuri zero-uate în arhivã (înseamnã EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "redimensioneazã bloc în timpul citirii (pentru pipe-uri BSD4.2" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Selecþie format arhivã:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMAT" -#: src/tar.c:585 +#: src/tar.c:586 #, fuzzy msgid "create archive of the given format" msgstr "creazã arhiva de formatul dat." -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMAT este unul din urmãtoarele" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "vechiul format tar V7" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "oldgnu formatul GNU format ca pentru tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "formatul GNU tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "formatul POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "formatul POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 #, fuzzy msgid "same as pax" msgstr "ca ºi pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "ca ºi --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "ca ºi --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 #, fuzzy msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "cuvânt_cheie[[:]=valoare][,cuvânt_cheie[[:]=valoare], ...]" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "controleazã cuvintele cheie pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEXT" -#: src/tar.c:608 +#: src/tar.c:609 #, fuzzy msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " @@ -1793,173 +1802,173 @@ msgstr "" "creazã arhivã nu nume volum NUME. La listare/extragere, foloseºte TEXT ca " "pattern de globbing" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Opþiunile de compresie sunt în conflict" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "filtreazã prin PROG (trebuie sã accepte -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Selecþie fiºier local:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "DIR" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "schimbã în directorul DIR" -#: src/tar.c:643 +#: src/tar.c:644 #, fuzzy msgid "get names to extract or create from FILE" msgstr "obþine numele de extras sau creat din fiºierul NUME" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T citeºte nume terminate cu null, deactiveazã cu -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "PATTERN" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "exclude fiºiere, date ca un PATTERN" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "pattern-urile de excludere sunt listate în FIªIER" -#: src/tar.c:657 +#: src/tar.c:658 #, fuzzy msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "exclude directoarele ce conþin o etichetã cache" -#: src/tar.c:660 +#: src/tar.c:661 #, fuzzy msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "exclude directoarele ce conþin o etichetã cache" -#: src/tar.c:663 +#: src/tar.c:664 #, fuzzy msgid "exclude directories containing CACHEDIR.TAG" msgstr "exclude directoarele ce conþin o etichetã cache" -#: src/tar.c:665 +#: src/tar.c:666 #, fuzzy msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "exclude directoarele ce conþin o etichetã cache" -#: src/tar.c:668 +#: src/tar.c:669 #, fuzzy msgid "exclude everything under directories containing FILE" msgstr "exclude directoarele ce conþin o etichetã cache" -#: src/tar.c:670 +#: src/tar.c:671 #, fuzzy msgid "exclude directories containing FILE" msgstr "exclude directoarele ce conþin o etichetã cache" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "evitã coborârea automatã în directoare" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "stai în sistemul de fiºire local la creare arhivei" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "coboarã recursiv în directoare (implicit)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "nu elimina primul `/' din numele fiºierelor" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "NUME-MEMBRU" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "începe la membrul NUME-MEMBRU în arhivã" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "stocheazã numai fiºiere mai noi decât DATA-FIªIERULUI" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATA" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "comparã data ºi timpul numai când a fost schimbatã data" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "CONTROL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "fã backup înainte de ºtergere, alege CONTROL pentru versiuni" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "ªIR" -#: src/tar.c:697 +#: src/tar.c:698 #, fuzzy msgid "" "backup before removal, override usual suffix ('~' unless overridden by " @@ -1968,103 +1977,103 @@ msgstr "" "fã backup înainte de ºtergere, înlocuieºte prefixul normal ('~' în afarã de " "cazul când este determinat de variabila de mediu SIMPLE_BACKUP_SUFFIX" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 #, fuzzy msgid "strip NUMBER leading components from file names on extraction" msgstr "eliminã NUMÃR componente de la începutul numelor fiºierelor" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 #, fuzzy msgid "ignore case" msgstr "în excluderi ignorã cazul caracterelor (minuscule/majuscule)" -#: src/tar.c:718 +#: src/tar.c:719 #, fuzzy msgid "patterns match file name start" msgstr "pattern-urile de excludere potrivesc începutul numelor de fiºiere" -#: src/tar.c:720 +#: src/tar.c:721 #, fuzzy msgid "patterns match after any `/' (default for exclusion)" msgstr "pattern-urile de excludere potrivesc dupã orice / (implicit)" -#: src/tar.c:722 +#: src/tar.c:723 #, fuzzy msgid "case sensitive matching (default)" msgstr "excluderea depinde de caz (minuscule/majuscule) (implicit)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "wildcard-urile în pattern-urile de excludere nu potrivesc '/'" -#: src/tar.c:730 +#: src/tar.c:731 #, fuzzy msgid "wildcards match `/' (default for exclusion)" msgstr "wildcard-urile din pattern-urile de excludere potrivesc '/' (implicit)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Ieºire informativã:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "listeazã cu amãnunte fiºierele procesate" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 #, fuzzy msgid "display progress messages every NUMBERth record (default 10)" msgstr "afiºeazã mesaje despre progres la fiecare al 10-a înregistrare" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "afiºeazã un mesaj dacã nu toate link-urile sunt prelucrate" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2072,28 +2081,33 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "afiºeazã datele de modificare a fiºierelor în UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "trimite ieºire detaliatã în FIªIER" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "aratã numãrul blocului din arhivã pentru fiecare mesaj" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "cere confirmare pentru fiecare acþiune" -#: src/tar.c:764 +#: src/tar.c:767 #, fuzzy msgid "show tar defaults" msgstr "Aratã valorire implicite folosite de tar" -#: src/tar.c:766 +#: src/tar.c:769 #, fuzzy msgid "" "when listing or extracting, list each directory that does not match search " @@ -2102,95 +2116,95 @@ msgstr "" "La listare sau extragere, listeazã fiecare director care nu se potriveºte cu " "criteriile de cãutare" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Opþiuni compatibilitate:" -#: src/tar.c:784 +#: src/tar.c:787 #, fuzzy msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "la creare, ca ºi --old-archive. La extragere, ca ºi --no-same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Alte opþiuni:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Nu puteþi specifica mai mult de una dintre opþiunile `-Acdtrux'" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Opþiunile de compresie sunt în conflict" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr " tip fiºier necunoscut %s\n" -#: src/tar.c:1017 +#: src/tar.c:1020 #, fuzzy msgid "Date sample file not found" msgstr "Fiºier date nu a fost gãsit" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Înlocuim %s pentru format de datã necunoscut %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, fuzzy, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Tratez data `%s' ca %s + %ld nanosecundã" -#: src/tar.c:1132 +#: src/tar.c:1135 #, fuzzy, c-format msgid "%s: file list already read" msgstr "%s: fiºierul este în arhivã; nimic generat" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "filtreazã arhiva prin gzip" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2198,169 +2212,169 @@ msgstr "" "\n" "*Acest* tar foloseºte implicit:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Factor blocuri invalid" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Lungime de bandã invalidã" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Mai mult de o singurã datã limitã" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Grup invalid" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Mod invalid furnizat ca opþiune" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Numãr invalid" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Proprietar invalid" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Dimensiune înregistrare invalidã" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Dimensiune înregistrare trebuie sã fie un multiplu de %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Numãr invalid de elemente" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, fuzzy, c-format msgid "Malformed density argument: %s" msgstr "Argument densitate malformat: '%s'" -#: src/tar.c:2126 +#: src/tar.c:2145 #, fuzzy, c-format msgid "Unknown density: `%c'" msgstr "Densitate necunoscutã: '%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Opþiunile `-[0-7][lmh]' nu sunt suportate de *acest* tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FIªIER]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Vechea opþiune `%c' necesitã un argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence n-are sens fãrã o listã de fiºiere" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence nu poate fi folosit în modul de operare cerut" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Fiºiere de arhivã multiple necesitã opþiunea `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Nu puteþi combina --listed-incremental cu --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 #, fuzzy msgid "--level is meaningless without --listed-incremental" msgstr "--occurrence n-are sens fãrã o listã de fiºiere" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Eticheta volumului este prea lungã (limita este %lu octet)" msgstr[1] "%s: Eticheta volumului este prea lungã (limita este %lu octeþi)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Nu pot verifica arhive pe volume multiple" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Nu pot verifica arhive comprimate" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Nu pot folosi arhive comprimate pe volume multiple" -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "Nu pot actualiza arhive comprimate" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option poate fi folosit numai pentru arhive POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Refuz categoric sã creez o arhivã goalã" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Opþiunile `-Aru' sunt incompatibile cu `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Trebuie sã specificaþi una din opþiunile `-Acdtrux'" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2372,87 +2386,87 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Fiºier scurtat cu %s octet" msgstr[1] "%s: Fiºier scurtat cu %s octeþi" -#: src/xheader.c:163 +#: src/xheader.c:164 #, fuzzy, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Cuvânt_cheie %s necunoscut sau încã neimplementat" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Înregistrare timp în afara domeniului" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Pattern-ul %s nu poate fi folosit" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Cuvânt_cheie %s nu poate fi înlocuit (overridden)" -#: src/xheader.c:541 +#: src/xheader.c:542 #, fuzzy msgid "Malformed extended header: missing length" msgstr "Antet extins malformat: lipseºte semnul egal" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "ªir în baza-64 (semnãtura arhivei) %s este în afara %s intervalului" -#: src/xheader.c:568 +#: src/xheader.c:569 #, fuzzy msgid "Malformed extended header: missing blank after length" msgstr "Antet extins malformat: lipseºte spaþiu liber dupã lungime" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Antet extins malformat: lipseºte semnul egal" -#: src/xheader.c:582 +#: src/xheader.c:583 #, fuzzy msgid "Malformed extended header: missing newline" msgstr "Antet extins malformat: lipseºte semnul egal" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, fuzzy, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Valoare arhivã %s este în afara %s intervalului %s.%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, fuzzy, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Antet extins malformat: lipseºte semnul egal" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, fuzzy, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Antet extins malformat: lipseºte semnul egal" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, fuzzy, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "Antet extins malformat: lipseºte semnul egal" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, fuzzy, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Antet extins malformat: lipseºte semnul egal" @@ -2493,249 +2507,260 @@ msgstr "Scrie punct de verificare %d" msgid "Read checkpoint %u" msgstr "Citeºte punct de verificare %d" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Alte opþiuni:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 #, fuzzy msgid "Create file of the given SIZE" msgstr "creazã arhiva de formatul dat." -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "extrage fiºierele la ieºirea standard" -#: tests/genfile.c:134 +#: tests/genfile.c:133 #, fuzzy msgid "Read file names from FILE" msgstr "Am citit %s octeþi de la %s" -#: tests/genfile.c:136 +#: tests/genfile.c:135 #, fuzzy msgid "-T reads null-terminated names" msgstr "-T citeºte nume terminate cu null, deactiveazã cu -C" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 #, fuzzy msgid "Seek to the given offset before writing data" msgstr "încearcã sã verifici arhiva dupã scrierea sa" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [OPÞIUNE...]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "" -#: tests/genfile.c:192 +#: tests/genfile.c:191 #, fuzzy msgid "Execute COMMAND" msgstr "COMANDÃ" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Înregistrare timp invalidã" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Numãr inode în afara intervalului" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Eroare sistem necunoscutã" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "%s: Nu pot cãuta (seek) cãtre %s" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr " tip fiºier necunoscut %s\n" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "%s: Nu pot cãuta (seek) cãtre %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "%s: Nu pot cãuta (seek) cãtre %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Amestecat numele fiºierelor--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Nu pot salva directorul în care lucrez" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s: Nu pot redenumi ca %s" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: opþiune ilegalã -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Citesc %s\n" + #~ msgid "" #~ "\n" #~ "Report bugs to <%s>.\n" @@ -2743,12 +2768,6 @@ msgstr "--Amestecat numele fi #~ "\n" #~ "Raportaþi bug-uri la <%s>.\n" -#~ msgid "Reading %s\n" -#~ msgstr "Citesc %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Nu-mi pot reveni din eroare: termin acum" - #~ msgid "filter the archive through bzip2" #~ msgstr "filtrazã arhiva prin bzip2" @@ -2797,6 +2816,9 @@ msgstr "--Amestecat numele fi #~ msgid "Premature end of file" #~ msgstr "Sfârºit de fiºier prematur" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Nu-mi pot reveni din eroare: termin acum" + #~ msgid "block size" #~ msgstr "dimensiune bloc" diff --git a/po/ru.gmo b/po/ru.gmo index 7a8b40fa54267ce6ebcd4dda55c76af4a5aedf0c..d33ad82cd3a0514ca96970e2be800a009bbf2631 100644 GIT binary patch delta 17847 zcmb7~34Bf0_V~|DB8Zq1L6BpJAQH0@^IY>(vyv;hkyMf!xi>Ksm#CpNm4mj%DxFjb z*E|=UD7}{!rA0lhwo0q*YpZ>&|972zqNMu%?{_|3`L4CjK6_Yu?RC!e-o-UR%gzLO zE|m*fX45pSYJjFSgcZwb+BtNshNg*sWSn9$Ohx2c3M;{7@HpH8!{Fq2O$&yLpbnSA zD7XuT!gCg{!8zEs<28>~0cBDHO~a=>Yw-|_#=Zraj~2$v%EQ`FCYit==BJH=-QYr4 z3!a4~;qR~tEZ#`d=t8RvWg>%NE0_x_!)=W`YJihCB5+)W;qVt&29|8BY1LpgSR1y1 zveIN211G@*xDLvMK84NUT{sFhZ=wcT1}kFc!@BT&C=vP5gOZG*HPy8GzyW0xG(PYjBz zbOe+R(xD7E56VCXV0HL8l#m6s&@@!78k8*?45i~)um{`%rTuR(5>{!cwz36`z#au< zp}DXs<7?|J$6Js*(r!T=Rw1r+U>jHtra&{~kO#GOQ1t%gt8_Z#x`obA&b#wLJ8SHC^NqSWnx9z zsR-1AvDiIeSC|WB!Uv#C;5L*`45@F&Bp<+eTOeo`PZU zHmm}JJE@S?gfiiduslqJI&{Mda2b^6Ho++P7Ay@vhwb5QD3NU3S@kozvqyC_6^A^q z7zV+uFcj{Df$%7ly?qzz@G6v36Ue@W!!Rh%*MpD19#9sR2SeZnSPgE0kHJ$=CRWqK zhRHc^0%c|?Q1;A#a=Z>&{+loeyK*%I1C|l-*l3VXWPMb%&j3OcY0ZQ#I)=RCd0+hXM4t3ZQN{8t%20jgI!mY3r z{20nguR)2#T`2uk=&c5>1;yXOvirg^a{iN0q+_>rV=y zLYa7MA2m=1SOU8*42C11EMN?jy`KPM;c_UEIwE9z?HY>gRd8R$Sl9r&A8Zb%Ls{`I zNG;MXLpgqt{Zxe<4y9hqgmG{Wlsa-9)`MmHYnltTh8P&yb1CHdw+S=oFjD=}bMcnC@){7{nYIxGXVfhuBUp*+{fVhb3J-EJW9mz6tk z$gz0_%FK>HNs@C=_V_#45SD*T4cr+v!p?%F;7hO^+zMr@jzJxM044M{p)4SDkV@vV zFbuo;AmT3(XpSQu_Ji%A2bP3~p+w*mlw)-V%0TT0tI9SI%JWVr6MP!V%JxFZkt?+q)!L=Q@NlnGE~I1fswp0(`fEPE9!f`2`flKMK7P`?djpi3|umKds5 zULDF-c7&3&ePIN2LRrupC|l^+hEf~l5-bgi45Ns^a44ah17%{bK$>W8z!5fl!_`U? zN2tinhBdgq16G3PVMX`@lw2q=QZ2L!Ow{%>IvEHg$8*bvHA^@38vN5T&9C0HC@vv>a}S zLyr`SUMMnPF02CAK*{2LP*(CeOoZ~KD#>Pt6554OR`?2(_IshM^a_-Sly)e#fs#|> zpd{aCFa#D$A^tKz`4ly9W7rJ4FYE|sK{?;=K}n)>Q1Vz%ASXgRV6hF%D^3< zne9*_GY86XejmyL&Ow=YP^w4mam7@{I9P)l9pMwu0qZ~?l$XmL$mF%KG__Tep(N)k zP*%1NN^*S(C08Qoq&4gY+rp=yOyDSthTnUv8x_W>b2|uj;YKc$hWnvR;A>K8L7A|Ytp?O#3Cu1~Cej~DB%DzCSqWvUc3SocSWnLXmnhOv zS(i$(MzAb)M_3;|24zAsEN+CIvClvWX+^g>CB0z`b~@Ywm%_TRbB>xwCJe`30l$Fx zFwA2k6uGLzzA-^1MLv`yJPTz4cc6r<_C$66F(@5RhO)v9Pzs9=mWS6Z`*$c2DL2U~ zRIoI50+fjKfF9|0Wo!s}4#jW$h9IBFXE-v_$^j)CHbmEmb9k+}(FC6#Cw4Wpoh zvKw?I?tzJ zf9!g*)bW`DWn#Ob?EM+|DEtFTWV+7g2*PQw3oJfI6`a1XC-y=(0A7GYVBB0y8w)+N zP^7_47z0~At7$;ipix zdjEVC$s3Rfd9<<%RP9fOf6!nC>4N@ogv(3VlI+;BU4}{RNZ(12(9n>+^0IC{G()#ss1EM|ww;)YOG)&>rQNiYWPg5;@o84iHc zcB*>fhcdw;yR7$rdzA4w#=#bxo6q1l>)jTjD$@Ot5Vw!HpKQoc|IT3gQsC@_y_bfM@e`~)%x*Jl5QoGB)SaaVek?4 zKr<)UN{!^dr!Rucf+T!JH4;Y`Fn6KcB|ujAJ`~# z(7^us1o4;9PyIk0zm2dl_P0=09(7XfT^~3cI}ZlK&mjG1*I-NdC6oy0r&RLwf*r8k zFbeL3{oq+x2F84-*usO-7e{v}A$b8xGX4T9!8D(m&`j73dne3>e?l2xykDIPFO*{% za9S-W5{6eYhmThS&??ba)81hwaa*U)M8WckJ`<5m@7#S#LbraFhW!rb3B?4@!vj^J)b# z7Moh^07JOn2lj!(;G^(0I11i|vK9S4Q6ZlKYhs^-9pyfh)6?{V9AEZ-GD<%j??MT2 z#fvK26X7N7)leccAWUoNZCUF(X9U>1}We*j}(h0oPiw1u)2 z4!Df*wP#SKLH(-Q!?lnE)poub@Q2V%IfoJFEp~!B1e2jney-dWj@|t+r|bOy>R-SQd8q zMonM{9D@B6jEA2>8Mwp^l`CE0Q0$4YBJ|%N{+&_2!O;{p_*NxRGL#i9gLU8$C@Z=F zby()6D#?vt8SFkV6OM*S@Dz-Ijc=)f)B_g59%^wEWaqTxTf~0`%2*td17E{oFyTA( zo?Z%N3r@mTFywnC1G~a3Sp2qH*<=`py$Q++FTkF#$qyn43Lz!UY&uW50p@e)X>;*rBI;`>w|7;7} zKzZ&sOoX0qQ0k%d{8c4KE)@Gs*cP6L@56{Ysserv<+!!}jWP;n!M?D^@9O(u1(bmg zz3o4N8op@cFq)MkF`ZG{rCk62R4Eu%c+Skgad74JRF3-bC}wy6;N{QR+!DBJwt;^;Wq7cxS@j0d~5Zos5%@0 zWseU+31PWPDiRs6tN5YhM3KsBi+aME*cYJ=@4~83kF=Qur!AEBLtuTlI+A~X>4`S)Lx1!C}^Bu~NhEDF`q{LmDigiWry zw7sNMZ8|y&HFJbIrLDL8UVH^tc}ux#@mmWhWs?!+C)fDN2E+tT|Y|H->EUjGk{<=lO zPxh-F{}O}DH7}}@HWxXHMZqvHNp-o}BYz-6@k{NzfV_>!wF2LVuql)mK(08s4r5Ds zquiQjwi%S`3*@qlUl}DH@gbeLIRv2qnOAv>v9JP1VzFh*%@|8Rf?l3`-C!-b!R11J z;Qo8a*ND_{DFAYf5g)t&k4Sb&#VEMs5X)5^3FMw!OJE2Cw1-ia?SG5Z!;o3r$cJyi6UavN_u&p?0dhmKBM^luZ(d)( zIhOu7o~MvBA-*4x(`G9si2k$H?sK>l|5l_J6a2(#^A`T6k#7+LDYzC{%4mG~^3phm z5|8}EjZVl)WCpSu*@C|!ou;G9bpm?=(h+?&G9O*8JO!;1Z3kHTBp86*oi?waAAtv#kjk`|>vhCyYU)pIa1p6*`Ns0> zOoWeRt*zBh5c&@E_xT1f-+X=?tE`)R0BL)W68PFc`FeR1*@%3D3`4T;SAYdqZ;rNlldZ;$afVr|LN%`^x!1(He-ckIWF|7%@|lhJ z(-FHSEQz?Rdkx@*LhUMHH=xavh+LliikggDlt019G8*xzu00MH!;y#$eH^TU$d8i< z+U3CUNFw(_kZ+Lw*k_QJ5xK$?w2ItYgUEFS&V>#+bMsIZ;TT}ulm_Jx9)F2k7UdcxE=AFv2K*W zxeUiMmc0V~cjNj$t7*?awXI?I@bNQe8>PtmNVO}kI5P9 z(%sGkJ=*1MQE!#4L#i{wp=a60Iui8O(XO^3TC_{Q-ZieS$;JcG#2kG`IIs-1Ojxw9H(4 zdRnsX%yOqWGxfMQJtjISCd3%lw3Em3;fQv{=*dopD>KHe+tbsX6Lfo~ZqFW@li|p8 z%e)c_I*5^`X)fKKF(z$njx)#g;N7^m|Gld|F>ynP#s56A)%u?XHx~5_FaFm8pKCh2 zoyl+)?sW&NHl7- z8d}AfndwM!lMjR-fjx6M({mkqiajmek!-kHIk&Z57TBx9fNlfh^+7I2N=~{tCIcp= zI+Dg^In(Iap2?Cj9nv}e9Cv+S&&qOSCX42F<|L(xl9QR9mO0KlzuoYlmg#z`BRxyc zaj_D;Tc1ICK}L~-56QQ&4!5+IT)W( z<1ngqIa4yrk!?3KFv*$hFs^s0U)|vtrzfYeIpV(8hfCbfloXf4Z4~dC6WnFkkiG*t zd#7~$C~zR*&&o-+6IZ+Lwr4r?u3H$2ijQ zm{n3Ud&yyD1zlK&Oh*5&&lj_LaC!F*-DwLovw?(`7^JFtT4;B}yGWn6~FgDv;hL0hcax%aNX9R32W<_&(`k80SVkOf)#SV^hgU?_0^|ig*t^u_mx~vV-(dlh8PR zy0R%=S=6t4x#u06nHbR0ojpl+Oms_zO0vpbRTRw~a*?CDb3!J`o0`V_T(o7QT_mwl zYIx-k^2Cu%R%h4s?#Q}pE2R>J)0^qecBXr`Ww*82ni#iT?MgLj7}vO|-ndCZ!xpg( zn;31~5#nmtEUsY-y-~}ACJl`wcWlY_PY{UsacPd+_#C^j(j6Vzi&~pwzFD(#yocOf z1B!?E*7)=MbNq{qVMiN<9r7L2efhra{^`CQ{u%z6@=`VeC%jgAt?yaii^wY9GT%$S z7romjv=8w3mii9*_WSbvbA1Q=i~Ngp9?9d;eBS}zZvSjwzFEWNc>ixLA697#>acpV zYaC`e-=X^s`KKFQC&zkYC;t@KWG{2bW7vJn$E*8i`nHSVU+g=eqq3wOJ}+RId8jhE zMaJQ&;okUZLrWQF=9ky~^L%^glWt`8`&m5e;6&+1-iS^*vM%-x|p3%@)zF zBm2yGG3b2XE_(N03pW~GFXAzK^fDv*BuIJc<@&dg7^a{LonE&y$Ai9I{LS~zkq6ad z{u%!?1$i+Snu5+MXBcO%m63ULe)v58ONa6aQmDuO`=ZQGlY(CUaak;PAIVcVD5Q^> zO*?#BiJ$Dq3~80`uQ=UzUqtWUrQikoJo4EfDIz=RpFyWqAn_e|_%_QP%VMp)`9D6Z zLLZ_X*{9X%R97=fFRW>Nv*6L1Yt4}Vl}wU|BM365_oUG0*VfB)3lv8Y0k(uLC5`_a<9f#qJ6w2*@$&*%I0 z`16eFMyxUa`S*<%UYOV4Iz0Zx1>u(XZTIbEhZd5GyK&D~`>@wM+`fYx{@rxN5!B7Y zvx~nwa2A}is1?rAg?csCtazrd&pT~pRa;@FQTn3pJ+Ue>*kkr4p^!3U_|}_+Xf>s1 zjc-Z3?ptfdmT(X+&iOx_lLtN$eY*=z8qt*yODG@sSQO_zn(;0Sl5a-u`IlmY$`;yJ z|2!k~)#HI~d$#xDtI>hosY`@)n;8#DJ{6R$#EH^l&TOr3jeKGLe?Kh$vvGGoj3mt= z|4b>YW)>WjPGlbn?cwD&s~RWXtlX?{`+PYvUjKAX&>=}O&9|DJDb&hXyez^v{9{Ck znN0p5lc$<{FTc6j7F(#HIzM|QB_w!l|LIapH*`FU?aiwpw?^WJ4OW5FLx^JCtrR=nCjrU~!ieeG|S%0q<%-eA9 zS?(#6^$fTzUL$GpNmAJa(v_f-`+`7EccwNX_B2Usu-VAb^>TT_y z?D1~@Vj9W|!0bn!IUrFP#uyL0fy^%C?IW)&W-yze&0zc33VHMLk~RP4`L>}gG>^I{u?_=D)g^i=EYWfQ4QmX13g+SRWDKBMx%YQ-@46^GIG;GMYjGDS1q+a%ruhEI#XJFTA& z%?@?ySWr9VO*%{WKgDBv2rWs$9d<#=n|f!P!6)+a6=NPXncqH+cih#AM(&|a#)4C^ zUj6VRfmO}oI8P41R{s1|{}_O;rSV5AMaj8mqa)Zc;frcmI5}9o z`R(H(#UA+G(MEn4vtPqbRx!5to~;j&X|0q`RAL%`xo(LesR@TUv9*k?4UCu%hdOzxscb@%w+5JC*mpK_#?nN*Tmd!<@DkZ`=qtz=uI8!!69 z_%bV6?|(nHMw!#`-mm=uHsi?Y+C2Ar|brMnGANucqw(5i3EIeDubN^sWs=g%;@7=oj zkp5*^vY_>H3M5U;?fk3Q@i}Q8>G@JY?CgkM_)$;z>i&vE&A#^*S?`Lj$7 zfN7rS0=F!KnC_P2EvHJp>sY5cT2vpS#Mf!Y&+nIuD>!6Q960^fkrQjHS?YO@T9ZQa zj{e#kXw17=+~|8VG+Op(ukETReJ7jh^@GB`ICCa*00KY zBX3@`@oyI1!2K#}4 z@pK-OmI}vYwL*>My(GchCS{x%tKW%c3=0Yk<^RDhtdBrY+ad|_ z?mHy=uTBcfrfc$(R($X9W10H=S1>8nv^2kxb}soLED-Iv{35o>bHcdZV!9Srz?nkCLU delta 12209 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 diff --git a/po/ru.po b/po/ru.po index 80c4a46..fb3aae4 100644 --- a/po/ru.po +++ b/po/ru.po @@ -4,20 +4,23 @@ # Const Kaplinsky , 1998, 1999. # Pavel Maryanov , 2004, 2006, 2008. # Yuri Kozlov , 2009. +# Pavel Maryanov , 2010. # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22\n" +"Project-Id-Version: tar 1.23\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2009-10-11 16:43+0200\n" -"Last-Translator: Pavel Maryanov \n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-05-08 19:30+0200\n" +"Last-Translator: Pavel Maryanov \n" "Language-Team: Russian \n" +"Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" -"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: gnu/argmatch.c:135 #, c-format @@ -64,8 +67,9 @@ msgid "" "Mandatory or optional arguments to long options are also mandatory or " "optional for any corresponding short options." msgstr "" -"Обязательные или необязательные аргументы для длинный опций также являются " -"обязательными или необязательными для соответствующих коротких опций." +"Обязательные или необязательные аргументы для длинных параметров также " +"являются обязательными или необязательными для соответствующих коротких " +"параметров." #: gnu/argp-help.c:1639 msgid "Usage:" @@ -77,21 +81,21 @@ msgstr " или: " #: gnu/argp-help.c:1655 msgid " [OPTION...]" -msgstr " [ОПЦИЯ...]" +msgstr " [ПАРАМЕТР...]" #: gnu/argp-help.c:1682 #, c-format msgid "Try `%s --help' or `%s --usage' for more information.\n" msgstr "" -"Попробуйте `%s --help' или `%s --usage' для получения дополнительной " -"информации.\n" +"Попробуйте `%s --help' или `%s --usage' для получения дополнительных " +"сведений.\n" #: gnu/argp-help.c:1710 #, c-format msgid "Report bugs to %s.\n" -msgstr "Отчеты об ошибках отправляйте на %s.\n" +msgstr "Отчёты об ошибках отправляйте по адресу: %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Неизвестная системная ошибка" @@ -103,8 +107,8 @@ msgstr "вывод этой справки" msgid "give a short usage message" msgstr "вывод короткого сообщения об использовании" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "ИМЯ" @@ -136,65 +140,70 @@ msgstr "%s: Слишком много аргументов\n" #: gnu/argp-parse.c:756 msgid "(PROGRAM ERROR) Option should have been recognized!?" -msgstr "(ОШИБКА ПРОГРАММЫ) Опция должна была быть распознана?!" +msgstr "(ОШИБКА ПРОГРАММЫ) Параметр должен был быть распознан?!" #: gnu/closeout.c:114 msgid "write error" msgstr "ошибка записи" -#: gnu/getopt.c:531 gnu/getopt.c:547 -#, fuzzy, c-format +#: gnu/getopt.c:529 gnu/getopt.c:545 +#, c-format msgid "%s: option '%s' is ambiguous\n" -msgstr "%s: опция `%s' не однозначна\n" +msgstr "%s: параметр «%s» не однозначен\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 -#, fuzzy, c-format +#: gnu/getopt.c:578 gnu/getopt.c:582 +#, c-format msgid "%s: option '--%s' doesn't allow an argument\n" -msgstr "%s: опция `--%s' не разрешает использовать аргумент\n" +msgstr "%s: с параметром «--%s» нельзя использовать аргумент\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 -#, fuzzy, c-format +#: gnu/getopt.c:591 gnu/getopt.c:596 +#, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" -msgstr "%s: опция `%c%s' не разрешает использовать аргумент\n" +msgstr "%s: с параметром «%c%s» нельзя использовать аргумент\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: для опции `%s' требуется аргумент\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: для параметра «%s» требуется аргумент\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 -#, fuzzy, c-format +#: gnu/getopt.c:696 gnu/getopt.c:699 +#, c-format msgid "%s: unrecognized option '--%s'\n" -msgstr "%s: нераспознанная опция `--%s'\n" +msgstr "%s: нераспознанный параметр «--%s»\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 -#, fuzzy, c-format +#: gnu/getopt.c:707 gnu/getopt.c:710 +#, c-format msgid "%s: unrecognized option '%c%s'\n" -msgstr "%s: нераспознанная опция `%c%s'\n" +msgstr "%s: нераспознанный параметр «%c%s»\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 -#, fuzzy, c-format +#: gnu/getopt.c:759 gnu/getopt.c:762 +#, c-format msgid "%s: invalid option -- '%c'\n" -msgstr "%s: неверная опция -- %c\n" +msgstr "%s: недопустимый параметр -- «%c»\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 -#, fuzzy, c-format +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 +#, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: для опции требуется аргумент -- %c\n" +msgstr "%s: для параметра требуется аргумент -- «%c»\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 -#, fuzzy, c-format +#: gnu/getopt.c:885 gnu/getopt.c:901 +#, c-format msgid "%s: option '-W %s' is ambiguous\n" -msgstr "%s: опция `-W %s' не однозначна\n" +msgstr "%s: параметр «-W %s» неоднозначен\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 -#, fuzzy, c-format +#: gnu/getopt.c:925 gnu/getopt.c:943 +#, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" -msgstr "%s: опция `-W %s' не разрешает использовать аргумент\n" +msgstr "%s: с параметром «-W %s» нельзя использовать аргумент\n" + +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: для параметра «%s» требуется аргумент\n" #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" -msgstr "память исчерпана" +msgstr "недостаточно памяти" #: gnu/openat-die.c:36 #, c-format @@ -227,11 +236,11 @@ msgstr "не удалось вернуться в первоначальный #. and use glyphs suitable for your language. #: gnu/quotearg.c:274 msgid "`" -msgstr "`" +msgstr "«" #: gnu/quotearg.c:275 msgid "'" -msgstr "'" +msgstr "»" #. TRANSLATORS: A regular expression testing for an affirmative answer #. (english: "yes"). Testing the first character may be sufficient. @@ -256,12 +265,12 @@ msgstr "^[nN]" #: gnu/version-etc.c:76 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "" +msgstr "Упакован %s (%s)\n" #: gnu/version-etc.c:79 #, c-format msgid "Packaged by %s\n" -msgstr "" +msgstr "Упакован %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's @@ -290,19 +299,19 @@ msgstr "" #: gnu/version-etc.c:104 #, c-format msgid "Written by %s.\n" -msgstr "Программа создана %s.\n" +msgstr "Автор: %s.\n" #. TRANSLATORS: Each %s denotes an author name. #: gnu/version-etc.c:108 #, c-format msgid "Written by %s and %s.\n" -msgstr "Программа создана %s и %s.\n" +msgstr "Авторы: %s и %s.\n" #. TRANSLATORS: Each %s denotes an author name. #: gnu/version-etc.c:112 #, c-format msgid "Written by %s, %s, and %s.\n" -msgstr "Программа создана %s, %s и %s.\n" +msgstr "Авторы: %s, %s и %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -313,7 +322,7 @@ msgid "" "Written by %s, %s, %s,\n" "and %s.\n" msgstr "" -"Программа создана %s, %s, %s\n" +"Авторы: %s, %s, %s\n" "и %s.\n" #. TRANSLATORS: Each %s denotes an author name. @@ -325,7 +334,7 @@ msgid "" "Written by %s, %s, %s,\n" "%s, and %s.\n" msgstr "" -"Программа создана %s, %s, %s,\n" +"Авторы: %s, %s, %s,\n" "%s и %s.\n" #. TRANSLATORS: Each %s denotes an author name. @@ -337,7 +346,7 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, and %s.\n" msgstr "" -"Программа создана %s, %s, %s,\n" +"Авторы: %s, %s, %s,\n" "%s, %s и %s.\n" #. TRANSLATORS: Each %s denotes an author name. @@ -349,7 +358,7 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, %s, and %s.\n" msgstr "" -"Программа создана %s, %s, %s,\n" +"Авторы: %s, %s, %s,\n" "%s, %s, %s и %s.\n" #. TRANSLATORS: Each %s denotes an author name. @@ -362,7 +371,7 @@ msgid "" "%s, %s, %s, %s,\n" "and %s.\n" msgstr "" -"Программа создана %s, %s, %s,\n" +"Авторы: %s, %s, %s,\n" "%s, %s, %s, %s\n" "и %s.\n" @@ -376,7 +385,7 @@ msgid "" "%s, %s, %s, %s,\n" "%s, and %s.\n" msgstr "" -"Программа создана %s, %s, %s,\n" +"Авторы: %s, %s, %s,\n" "%s, %s, %s, %s,\n" "%s и %s.\n" @@ -390,7 +399,7 @@ msgid "" "%s, %s, %s, %s,\n" "%s, %s, and others.\n" msgstr "" -"Программа создана %s, %s, %s,\n" +"Авторы: %s, %s, %s,\n" "%s, %s, %s, %s,\n" "%s, %s и другими.\n" @@ -399,31 +408,32 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: gnu/version-etc.c:247 -#, fuzzy, c-format +#, c-format msgid "" "\n" "Report bugs to: %s\n" -msgstr "Отчеты об ошибках отправляйте на %s.\n" +msgstr "" +"\n" +"Отчёты об ошибках отправляйте по адресу: %s\n" #: gnu/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report %s bugs to: %s\n" -msgstr "Отчеты об ошибках отправляйте на %s.\n" +msgstr "Отчёты об ошибках %s отправляйте по адресу <%s>\n" #: gnu/version-etc.c:253 #, c-format msgid "%s home page: <%s>\n" -msgstr "" +msgstr "Домашняя страница %s: %s\n" #: gnu/version-etc.c:255 -#, fuzzy, c-format +#, c-format msgid "%s home page: \n" -msgstr "Домашняя страница %s: .\n" +msgstr "Домашняя страница %s: \n" #: gnu/version-etc.c:258 -#, fuzzy msgid "General help using GNU software: \n" -msgstr "Справка по работе с ПО GNU: .\n" +msgstr "Справка по работе с ПО GNU: \n" #. TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. #. Directly translating this to another language will not work, first because @@ -533,151 +543,146 @@ msgstr "stdout" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Не удаётся подключиться к %s: ошибка разрешения" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" -msgstr "Невозможно запустить удалённый командный процессор" +msgstr "Не удаётся запустить удалённый командный процессор" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Направление поиска за пределами диапазона" -#: rmt/rmt.c:419 -#, fuzzy +#: rmt/rmt.c:438 msgid "Invalid seek direction" -msgstr "В опции указан неверный режим доступа" +msgstr "Недопустимое направление поиска" -#: rmt/rmt.c:427 -#, fuzzy +#: rmt/rmt.c:446 msgid "Invalid seek offset" -msgstr "Недопустимый размер: %s" +msgstr "Недопустимое смещение поиска" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Смещение поиска за пределами диапазона" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 -#, fuzzy +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" -msgstr "Неверная длина ленты" +msgstr "Недопустимое число байт" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 -#, fuzzy +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" -msgstr "Смещение поиска за пределами диапазона" +msgstr "Число байт за пределами диапазона" -#: rmt/rmt.c:539 -#, fuzzy +#: rmt/rmt.c:558 msgid "Premature eof" -msgstr "rmtd: Преждевременный конец файла\n" +msgstr "Неожиданный конец файла" -#: rmt/rmt.c:582 -#, fuzzy +#: rmt/rmt.c:601 msgid "Invalid operation code" -msgstr "Основной режим работы:" +msgstr "Недопустимый код операции" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" -msgstr "" +msgstr "Операция не поддерживается" -#: rmt/rmt.c:645 -#, fuzzy +#: rmt/rmt.c:664 msgid "Unexpected arguments" -msgstr "Неожиданный конец файла в архиве" +msgstr "Неожиданные аргументы" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" +"Работа с накопителем на магнитной ленте с приёмом команд от удалённого " +"процесса" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "N" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" -msgstr "" +msgstr "задайте уровень отладки" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "ФАЙЛ" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" -msgstr "" +msgstr "задайте имя выходного файла отладки" -#: rmt/rmt.c:696 rmt/rmt.c:764 -#, fuzzy, c-format +#: rmt/rmt.c:715 rmt/rmt.c:783 +#, c-format msgid "cannot open %s" -msgstr "невозможно открыть `%s'" +msgstr "не удаётся открыть %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "слишком много аргументов" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Неверная команда" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Это не похоже на tar-архив" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Всего записано байт" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Всего прочитано байт" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Всего удалено байт: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(канал)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" -msgstr "Неверное значение для record_size" +msgstr "Недопустимое значение для record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Не указано имя архива" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" -msgstr "Невозможно проверить архив на stdin/stdout" +msgstr "Не удаётся проверить архив на stdin/stdout" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" -msgstr "Архив сжат. Используйте опцию %s" +msgstr "Архив сжат. Используйте параметр %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" -msgstr "Невозможно обновить сжатые архивы" +msgstr "Не удаётся обновить сжатые архивы" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Начало ленты, завершение работы" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Слишком много ошибок, завершение работы" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" @@ -685,7 +690,7 @@ msgstr[0] "Размер записи = %lu блок" msgstr[1] "Размер записи = %lu блока" msgstr[2] "Размер записи = %lu блоков" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" @@ -693,39 +698,39 @@ msgstr[0] "Невыровненный блок (%lu байт) в архиве" msgstr[1] "Невыровненный блок (%lu байта) в архиве" msgstr[2] "Невыровненный блок (%lu байт) в архиве" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Невозможно вернуться назад на один архивный файл; он может быть нечитаемым " "без -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek не остановился на границе записи" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: содержит неверный номер тома" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Переполнение номера тома" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Приготовьте том Номер %d для %s и нажмите Enter: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Конец файла вместо ожидаемого ответа пользователя" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "ПРЕДУПРЕЖДЕНИЕ: Архив не полный" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -737,66 +742,66 @@ msgstr "" " q Выход из tar\n" " y или [нов.строка] Продолжение операции\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Порождение подпроцесса командного процессора\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Вывод этого списка\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Нет нового тома, завершение работы.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Не указано имя имя файла. Попробуйте ещё раз.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Неверные входные данные. Наберите ? для получения справки.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "Сбой команды %s" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s, возможно, продолжается на этом томе - в заголовке находится усечённое имя" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s не продолжается на этом томе" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s является неверным размером (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Этот том вне последовательности (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Метка архива не соответствует %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Том %s не соответствует %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -804,7 +809,7 @@ msgstr "" "%s: слишком длинное имя файла для сохранения в многотомном заголовке GNU; " "обрезано" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "запись не остановилась на границе блока" @@ -816,20 +821,20 @@ msgstr[0] "Можно было прочитать только %lu байт из msgstr[1] "Можно было прочитать только %lu байта из %lu" msgstr[2] "Можно было прочитать только %lu байт из %lu" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Содержимое различно" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Неожиданный конец файла в архиве" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Типы файлов отличаются" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Права доступа отличаются" @@ -845,42 +850,42 @@ msgstr "Gid отличаются" msgid "Mod time differs" msgstr "Время изменения отличается" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Размеры отличаются" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Не ссылается на %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Символические ссылки отличаются" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Номера устройств отличаются" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Проверка " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Неизвестный тип файла `%c', сравнён как обычный файл " -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Архив содержит файлы с именами, из которых удалены префиксы." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "При проверке оригинальные файлы могут быть не найдены." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" @@ -888,46 +893,46 @@ msgstr[0] "СБОЙ ПРОВЕРКИ: обнаружен %d неверный з msgstr[1] "СБОЙ ПРОВЕРКИ: обнаружено %d неверных заголовка" msgstr[2] "СБОЙ ПРОВЕРКИ: обнаружено %d неверных заголовков" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Нулевой блок в %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: содержит каталог с кэшем тегов %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "значение %s за пределами %s диапазона %s..%s; заменяется на %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "значение %s за пределами %s диапазона %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Создаются отрицательные восьмеричные заголовки" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: имя файла слишком длинное (максимум %d); не сброшено" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: имя файла слишком длинное (не может быть разделено); не сброшено" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: имя ссылки слишком длинное; не сброшено" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" @@ -935,55 +940,55 @@ msgstr[0] "%s: Файл урезан на %s байт; дополнен нуля msgstr[1] "%s: Файл урезан на %s байта; дополнен нулями" msgstr[2] "%s: Файл урезан на %s байт; дополнен нулями" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: файл находится на другой файловой системе; не сброшен" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "содержимое не сброшено" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Неизвестный тип файла; файл проигнорирован" -#: src/create.c:1472 -#, fuzzy, c-format +#: src/create.c:1527 +#, c-format msgid "Missing links to %s." -msgstr "Отсутствуют ссылки на %s.\n" +msgstr "Отсутствуют ссылки на %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: файл не изменён; не сброшен" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: файл является архивом; не сброшен" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "каталог не сброшен" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: файл изменился во время чтения" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: сокет проигнорирован" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: door проигнорирован" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Пропускается до следующего заголовка" @@ -991,74 +996,74 @@ msgstr "Пропускается до следующего заголовка" msgid "Deleting non-header from archive" msgstr "Удаляется не-заголовок из архива" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: невероятно старая временная метка %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: временная метка %s - %s с в будущем " -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Неожиданная противоречивость при создании каталога" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Каталог переименован до того, как мог быть извлечен его статус" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Непрерывные файлы извлекаются как обычные" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Выполняется попытка извлечь символические ссылки как жесткие" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Невозможно извлечь -- файл продолжается с другого тома" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Непредвиденный длинный заголовок имени" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Неизвестный тип файла `%c', извлечён как обычный файл" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Текущий %s более новый или такого же возраста" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Невозможно было выполнить резервное копирование этот файла" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Невозможно переименовать %s в %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Каталог был переименован из %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Каталог был переименован" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Каталог новый" @@ -1168,35 +1173,35 @@ msgstr "%s: Удаляется %s\n" msgid "%s: Cannot remove" msgstr "%s: Невозможно удалить" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Пропускается" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "блок %s: ** Блок нулей **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "блок %s: ** Конец файла **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "блок %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "В заголовке пустое поле вместо ожидаемого числового значения %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1204,150 +1209,152 @@ msgstr "" "дополнение до двух" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Восьмеричное значение архива %.*s за пределами диапазона %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Архив содержит устаревающие заголовки base-64" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Архив подписан строкой base-64 %s за пределами диапазона %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Значение base-256 архива за пределами диапазона %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Заголовок содержит %.*s вместо ожидаемого числового значения %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Значение архива %s за пределами %s диапазона %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " ссылка на %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " неизвестный тип файла %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Длинная ссылка--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Длинное имя--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Заголовок тома--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Продолжение с позиции %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Создание каталога:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Невозможно изменить рабочий каталог" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "%s переименован в %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Невозможно переименовать в %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "%s переименовывается назад в %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Невозможно сохранить рабочий каталог" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Невозможно изменить рабочий каталог" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Файла удален до его считывания" -#: src/misc.c:774 -#, fuzzy, c-format +#: src/misc.c:866 +#, c-format msgid "%s: Directory removed before we read it" -msgstr "%s: Файла удален до его считывания" +msgstr "%s: каталог удалён до его чтения" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "дочерний процесс" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "межпроцессорный канал" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "В именах файлов используются символы подстановки." +msgstr "В именах файлов используются символы подстановки" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -"Используйте --wildcards, чтобы задействовать эти символы, или --no-wildcards," +"Используйте --wildcards, чтобы задействовать эти символы, или --no-" +"wildcards, чтобы убрать это предепреждение." -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Не найден в архиве" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Требуемое вхождение не найдено в архиве" -#: src/names.c:894 -#, fuzzy +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Метка архива не соответствует %s" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" -msgstr "--preserve-order несовместим с --listed-incremental" +msgstr "" +"Параметра -C в списке файлов нельзя Использовать с параметром --listed-" +"incremental" -#: src/names.c:900 -#, fuzzy +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" -msgstr "--preserve-order несовместим с --listed-incremental" +msgstr "" +"С параметром --listed-incremental можно использовать только параметр -C" #: src/tar.c:81 #, c-format msgid "Options `-%s' and `-%s' both want standard input" -msgstr "Обе опции `-%s' и `-%s' используют стандартный ввод" +msgstr "Для обоих параметров «-%s» и «-%s» используется стандартный ввод" #: src/tar.c:158 #, c-format @@ -1363,10 +1370,10 @@ msgstr "Запрошены расширения GNU для несовмести msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -"Неизвестный стиль цитирования `%s'. Воспользуйтесь `%s --quoting-style=help' " -"для получения полного списка. " +"Неизвестный стиль цитирования «%s». Воспользуйтесь параметром «%s --quoting-" +"style=help» для получения полного списка. " -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1376,8 +1383,8 @@ msgid "" " tar -tvf archive.tar # List all files in archive.tar verbosely.\n" " tar -xf archive.tar # Extract all files from archive.tar.\n" msgstr "" -"GNU `tar' предназначен для сохранения файлов на магнитную ленту или в архив " -"на диске и для восстановления отдельных файлов из архива.\n" +"GNU tar предназначен для сохранения файлов на магнитную ленту или в архив на " +"диске и для восстановления отдельных файлов из архива.\n" "\n" "Примеры:\n" " tar -cf archive.tar foo bar # Создание archive.tar из файлов foo и bar.\n" @@ -1385,7 +1392,7 @@ msgstr "" "архиве archive.tar.\n" " tar -xf archive.tar # Извлечение всех файлов из archive.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1396,7 +1403,7 @@ msgid "" " nil, existing numbered if numbered backups exist, simple otherwise\n" " never, simple always make simple backups\n" msgstr "" -"Суффикс для резервных копий - `~', если он не установлен через --suffix\n" +"Суффикс для резервных копий - '~', если он не установлен через --suffix\n" "или SIMPLE_BACKUP_SUFFIX. Управление версиями может быть установлено\n" "через --backup или VERSION_CONTROL. Значениями могут быть:\n" "\n" @@ -1406,80 +1413,80 @@ msgstr "" "простые\n" " never, simple всегда создавать простые резервные копии\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Основной режим работы:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "вывод списка содержимого архива" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "извлечение файлов из архива" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "создание нового архива" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "поиск различий между архивом и файловой системой" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "добавление файлов в конец архива" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "добавление в архив только более новых файлов" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "присоединение tar-файлов к архиву" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "удаление из архива (не на магнитных лентах!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "проверка метки тома архива и выход" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Модификаторы:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "эффективная обработка разрежённых файлов" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAJOR[.MINOR]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" "установить версию используемого формата разрежения (подразумевает --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "обработка добавочного резервирования старого формата GNU" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "обработка добавочного резервирования нового формата GNU" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" -msgstr "" +msgstr "уровень копирования для созданного разностного архива со списком" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "не завершать работу при ненулевом статусе для нечитаемых файлов" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1491,126 +1498,125 @@ msgstr "" "list, и когда список файлов задан либо в командной строке, либо через опцию -" "T. По умолчанию N равен 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "доступен поиск по архиву" -#: src/tar.c:436 -#, fuzzy +#: src/tar.c:437 msgid "archive is not seekable" -msgstr "доступен поиск по архиву" +msgstr "поиск по архиву недоступен" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "не проверять номера устройств при создании инкрементных архивов" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "проверять номера устройств при создании инкрементных архивов (по умолчанию)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Управление перезаписью:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "попытка проверить архив после его записи" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "удаление файлов после их добавления в архив" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "не перезаписывать существующие файлы при извлечении" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" "не перезаписывать существующие файлы, которые более новые, чем их копии в " "архиве" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "перезапись существующих файлов при извлечении" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "удаление каждого файла до извлечения поверх него" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "очистка всей иерархии до извлечения каталога" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "сохранение метаданных существующих каталогов" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "перезапись существующих файлов при извлечении (по умолчанию)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Выбор выходного потока:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "извлекать файлы на стандартный вывод" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "КОМАНДА" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "перенаправлять извлечённые файлы в другую программу" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "игнорировать коды завершения дочерних процессов" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "считать ненулевые коды завершения дочерних процессов как ошибку" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Обработка атрибутов файлов:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" "принудительно устанавливать ИМЯ в качестве владельца для добавленных файлов" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" "принудительно устанавливать ИМЯ в качестве группы для добавленных файлов" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "ДАТА-ИЛИ-ФАЙЛ" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "устанавливать для добавленных файлов mtime из ДАТЫ-ИЛИ-ФАЙЛА" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "РЕЖИМ" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" "принудительно устанавливать (символьный) РЕЖИМ доступа для добавляемых файлов" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "СПОСОБ" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1620,33 +1626,34 @@ msgstr "" "после чтения (СПОСОБ='replace'; используется по умолчанию) или не установки " "времени в первую очередь (СПОСОБ='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "не извлекать время изменения файла" -#: src/tar.c:504 -#, fuzzy +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" -msgstr "попытаться извлечь файлы с тем же владельцем" +msgstr "" +"попытаться извлечь файлы с тем же владельцем, что и в архиве (по умолчанию " +"для супепользователя)" -#: src/tar.c:506 -#, fuzzy +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" -msgstr "извлекать файлы как свои собственные" +msgstr "" +"извлекать файлы как свои собственные (по умолчанию для обычных пользователей)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "использовать числа вместо имён владельца/группы" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "извлекать информацию о правах доступа к файлу (по умолчанию для " "суперпользователя)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1654,15 +1661,15 @@ msgstr "" "применять umask пользователя при извлечении прав доступа из архива (по " "умолчанию для обычных пользователей)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "сортировать извлекаемые имена в том же порядке, что и в архиве" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "эквивалент -p и -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1670,140 +1677,140 @@ msgstr "" "не устанавливать время изменения и права доступа извлечённых каталогов до " "завершения процесса извлечения" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" -msgstr "отменить действие опции --delay-directory-restore" +msgstr "отменить действие параметра --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Выбор и переключение устройств:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "АРХИВ" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "использовать файл или устройство АРХИВ" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "файл архива является локальным, даже если содержит двоеточие" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "использовать указанную КОМАНДУ rmt вместо rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "использовать удалённую КОМАНДУ вместо rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "указать устройство и плотность" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "создание/листинг/извлечение многотомных архивов" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "сменить ленту после записи ЧИСЛО x 1024 байт" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" "запустить скрипт по окончании каждой ленты (подразумевается использование -М)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "использовать/обновлять номера тома в ФАЙЛЕ" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Разбиение на блоки:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "БЛОКИ" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "число БЛОКОВ x 512 байт на запись" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "ЧИСЛО байт на запись, кратное 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "игнорировать нулевые блоки в архиве (т.е. EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "заново разбивать на блоки при чтении (для каналов 4.2BSD)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Формата архива:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "ФОРМАТ" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "создать архив в указанном формате" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "ФОРМАТОМ может быть:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "старый формат tar V7" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "формат GNU как в tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "формат GNU tar 1.13.х" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "формат POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "формат POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "эквивалент pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "эквивалент --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "эквивалент --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "keyword[[:]=значение][,keyword[[:]=значение]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "управляющие ключевые слова pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "ТЕКСТ" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1811,76 +1818,76 @@ msgstr "" "создать архив с именем тома ТЕКСТ; при листинге/извлечении использовать " "ТЕКСТ в качестве шаблона подстановки" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Опции сжатия:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "использовать суффикс архива для определения программы сжатия" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "не использовать суффикс архива для определения программы сжатия" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "ПРОГ" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "пропустить архив через ПРОГ (должна поддерживать -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Выбор локальных файлов:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "добавить указанный ФАЙЛ в архив (полезно, если имя начинается с дефиса)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "КАТАЛОГ" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "перейти в КАТАЛОГ" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "загрузить из ФАЙЛА имена для извлечения или создания" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T читает строки, оканчивающиеся нулём, отключает опцию -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "выключить воздействие предыдущей опции --null" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "убрать кавычки с имён файлов, прочитанных с опцией -T (по умолчанию)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "не убирать кавычки с имён файлов, прочитанных с опцией -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "ШАБЛОН" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "исключать файлы, определённые ШАБЛОНОМ" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "исключать шаблоны, перечисленных в ФАЙЛЕ" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1888,93 +1895,93 @@ msgstr "" "исключать содержимое каталогов с файлом CACHEDIR.TAG за исключением самого " "файла с тегами" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "исключать всё содержимое каталогов, содержащих файл CACHEDIR.TAG" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "исключать каталоги, содержащие файл CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "исключать каталоги, содержащие ФАЙЛ, за исключением самого ФАЙЛА" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "исключать всё содержимое каталогов, содержащих ФАЙЛ" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "исключать каталоги с ФАЙЛОМ" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "исключать каталоги CVS" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" -msgstr "" +msgstr "исключать резервные файлы и файлы блокировки" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "отключить автоматический спуск в каталоги" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "оставаться в локальной файловой системе при создании архива" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "рекурсивный спуск по каталогам (по умолчанию)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "не удалять начальные `/' из имен файлов" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "следовать по символьным ссылкам и сохранять файлы, на которые они указывают" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" "следовать по жёстким ссылкам и сохранять файлы, на которые они указывают" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "ИМЯ-ЧЛЕНА" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "начинать с члена ИМЯ-ЧЛЕНА в архиве" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "сохранять только те файлы, которые новее ДАТЫ-ИЛИ-ФАЙЛА" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "ДАТА" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "сравнивать дату и время, только если изменены данные" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "УПРАВЛЕНИЕ" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "делать копию перед удалением, УПРАВЛЕНИЕ выбора версий" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "СТРОКА" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1982,102 +1989,101 @@ msgstr "" "делать копию перед удалением, переопределяет обычный суффикс ('~', если " "только он не переопределён переменной окружения SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Преобразование имён файлов:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" "удалять указанное ЧИСЛО начальных компонентов из имён файлов перед " "извлечением" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "РАСШИРЕНИЕ" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "использовать замену РАСШИРЕНИЯ sed'ом для преобразования имён файлов" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Опции шаблонов подстановки для имён файлов (влияют на шаблоны включения и " "исключения):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "игнорировать регистр" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "шаблоны начала имени файла" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "шаблоны после любого '/' (по умолчанию для исключаемых)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "с учётом регистра (по умолчанию)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "использовать маски (по умолчанию для исключаемых)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "точное соответствие строке" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "маски не соответствуют '/'" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "маски соответствуют '/' (по умолчанию для исключаемых)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Вывод информации:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "подробный листинг обрабатываемых файлов" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" -msgstr "" +msgstr "КЛЮЧЕВОЕ СЛОВО" -#: src/tar.c:740 -#, fuzzy +#: src/tar.c:741 msgid "warning control" -msgstr "Управление перезаписью:" +msgstr "управление предупреждением" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" "вывод сообщений о ходе выполнения через каждые ЧИСЛО записей (по умолчанию " "10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "ДЕЙСТВИЕ" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "выполнять ДЕЙСТВИЕ на каждой контрольной точке" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "вывод сообщений, если сохранены не все ссылки" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "СИГНАЛ" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2089,27 +2095,32 @@ msgstr "" "SIGQUIT, SIGINT, SIGUSR1 и SIGUSR2. Также разрешается использовать имена без " "префикса SIG" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "вывод даты изменения файла в формате UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "отправить подробный вывод данных в FILE" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "выводить номера блоков архива в каждом сообщении" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "запрашивать подтверждение для каждого действия" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "показать значения tar по умолчанию" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2117,31 +2128,31 @@ msgstr "" "при выводе листинга или извлечении показывать все каталоги, не " "соответствующем условию поиска" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "показывать имена файлов или архивов после преобразования" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "СТИЛЬ" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "установить стиль цитирования имён. Значения для СТИЛЯ см. ниже" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "дополнительно цитировать символы из СТРОКИ" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "отключить цитирование символов из СТРОКИ" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Опции совместимости:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2149,64 +2160,62 @@ msgstr "" "при создании, эквивалент --old-archive; при извлечении, эквивалент --no-same-" "owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Другие опции:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "отключить использование некоторых потенциально опасных опций" -#: src/tar.c:927 -#, fuzzy +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" -msgstr "Указать можно не более одной опции `-Acdtrux'" +msgstr "Указать можно только один из параметров «-Acdtrux» или «--test-label»" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Конфликт опций сжатия" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Неизвестное название сигнала: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Файл с образцом даты не найден" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "%s заменяется на неизвестный формат даты %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Опция `%s': дата '%s' рассматривается как %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: список файлов уже прочитан" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: в прочитанном имени файла присутствует пустой символ" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 -#, fuzzy, c-format +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 +#, c-format msgid "filter the archive through %s" -msgstr "пропустить архив через xz" +msgstr "пропустить архив через %s" -#: src/tar.c:1290 -#, fuzzy +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" -msgstr "Допустимые аргументы для опций --quoting-style:" +msgstr "Допустимые аргументы для параметра --quoting-style:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2214,53 +2223,51 @@ msgstr "" "\n" "Значения по умолчанию *этого* tar:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Неверный размер ёмкости блока" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Неверная длина ленты" -#: src/tar.c:1511 -#, fuzzy +#: src/tar.c:1529 msgid "Invalid incremental level value" -msgstr "Неверный формат инкрементного файла" +msgstr "Недопустимое значение добавочного уровня" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Больше одной пороговой даты" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Неверное значение версии разрежения" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' не поддерживается на этой платформе" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "значение --checkpoint не является целым числом" -#: src/tar.c:1830 -#, fuzzy +#: src/tar.c:1848 msgid "Invalid group" -msgstr "%s: Неверная группа" +msgstr "Недопустимая группа" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "В опции указан неверный режим доступа" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Неверное число" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Неверный владелец" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2268,69 +2275,68 @@ msgstr "" "Опция --preserve устарела, используйте --preserve-permissions --preserve-" "order" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Неверный размер записи" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Размер записи должен быть кратен %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Неверное число элементов" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Разрешается использовать только одну опцию --to-command" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Неверно сформирован аргумент плотности: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Неизвестная плотность: '%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Опции `-[0-7][lmh]' не поддерживаются *этим* tar'ом" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[ФАЙЛ]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Для старой опции `%c' нужно указать аргумент." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence бесполезна без списка файлов" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence не может быть использована запрошенном режиме работы" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Для нескольких файлов архивов требуется опция `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Нельзя комбинировать --listed-incremental с --newer" -#: src/tar.c:2387 -#, fuzzy +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" -msgstr "--preserve-order несовместим с --listed-incremental" +msgstr "параметр --level не имеет смыла без --listed-incremental" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2338,48 +2344,47 @@ msgstr[0] "%s: Метка тома слишком длинная (максиму msgstr[1] "%s: Метка тома слишком длинная (максимум %lu байта)" msgstr[2] "%s: Метка тома слишком длинная (максимум %lu байт)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Невозможно проверить многотомные архивы" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Невозможно проверить сжатые архивы" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Невозможно использовать многотомные сжатые архивы" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Невозможно объединить сжатые архивы" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option может быть использована только с архивами POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Размер тома не может быть меньше размера записи" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order несовместим с --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Робкий отказ от создания пустого архива" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" -msgstr "Опции `-Aru' не совместимы с `-f -'" +msgstr "Параметры «-Aru» не совместимы с «-f -»" -#: src/tar.c:2592 -#, fuzzy +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" -msgstr "Вы должны указать одну из опций `-Acdtrux'" +msgstr "Необходимо указать один из параметров -Acdtrux или --test-label" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Завершение работы с состоянием неисправности с из-за возникших ошибок" @@ -2392,59 +2397,58 @@ msgstr[0] "%s: Файл урезан на %s байт" msgstr[1] "%s: Файл урезан на %s байта" msgstr[2] "%s: Файл урезан на %s байт" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Неизвестное или ещё не реализованное ключевое слово %s" -#: src/xheader.c:173 -#, fuzzy +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" -msgstr "Число за пределами допустимого диапазона: %s" +msgstr "Метка времени за пределами допустимого диапазона" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Шаблон %s не может быть использован" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Ключевое слово %s не может быть перекрыто" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Неверно сформирован расширенный заголовок: отсутствует длина" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Длина расширенного заголовка за пределами допустимого диапазона" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Длина расширенного заголовка %*s за пределами допустимого диапазона" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" "Неверно сформирован расширенный заголовок: после длины отсутствует пробел" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Неверно сформирован расширенный заголовок: отсутствует знак равенства " -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" "Неверно сформирован расширенный заголовок: отсутствует знак новой строки" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Игнорируется неизвестное ключевое слово расширенного заголовка `%s'" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" @@ -2453,29 +2457,29 @@ msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Расширенный заголовок %s=%s за пределами диапазона %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Неверно сформирован расширенный заголовок: неверный %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Неверно сформирован расширенный заголовок: превышен %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Неверно сформирован расширенный заголовок: неверный %s: непредвиденный " "разделитель %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2518,7 +2522,7 @@ msgstr "Контрольная точка записи %u" msgid "Read checkpoint %u" msgstr "Контрольная точка чтения %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2527,94 +2531,92 @@ msgstr "" "от GNU.\n" "ОПЦИИ:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Опции создания файла:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "РАЗМЕР" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Создание файла указанного РАЗМЕРА" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Запись в файл с ИМЕНЕМ, а не на стандартный вывод" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Чтение имён файла из ФАЙЛА" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T читает строки, оканчивающиеся нулём" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "Заполнение файла заданным ШАБЛОНОМ. ШАБЛОН - это 'default' или 'zeros'" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Размер блока для разрежённого файла" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Создание разрежённого файла. Остальная часть команды определяет карту файла." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "СМЕЩЕНИЕ" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Искать до указанного смещения перед записью данных" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" -msgstr "Опции статистики по файлам:" +msgstr "Параметры статистики по файлам:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Вывод содержимого структуры stat для всех указанных файлов. ФОРМАТ по " "умолчанию:" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" -msgstr "Опции синхронного выполнения:" +msgstr "Параметры синхронного выполнения:" -#: tests/genfile.c:164 -#, fuzzy +#: tests/genfile.c:163 msgid "OPTION" -msgstr " [ОПЦИЯ...]" +msgstr "ПАРАМЕТР" -#: tests/genfile.c:165 -#, fuzzy +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -"Выполнение указанной КОМАНДЫ. Полезно вместе с опцией --checkpoint и одной " -"из --cut, --append, --touch" +"Выполнение АРГУМЕНТОВ. Полезно с параметром --checkpoint и одним из --cut, --" +"append или --touch" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "Выполнение указанного действия (см. ниже) до достижения контрольной точки с " "заданным НОМЕРОМ" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" -msgstr "Указание даты для следующей опции --touch" +msgstr "Указание даты для следующего параметра --touch" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Показать выполненные контрольные точки и статус выхода КОМАНДЫ" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2622,7 +2624,7 @@ msgstr "" "Синхронное выполнение действий. Они выполняются при достижении контрольной " "точки с номером, определённым опцией --checkpoint." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2630,144 +2632,147 @@ msgstr "" "Усечь ФАЙЛ до размера, определённого предыдущей опцией --length (или 0, если " "не указан)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "Добавить РАЗМЕР байт к ФАЙЛУ. РАЗМЕР определяется предыдущей опцией --length." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Обновить время последнего доступа и изменения ФАЙЛА." -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Выполнить КОМАНДУ" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" -msgstr "" +msgstr "Разорвать связь с ФАЙЛОМ" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Недопустимый размер: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Число за пределами допустимого диапазона: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Отрицательный размер: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "Сбой stat(%s)" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "запрошенная длина файла %lu, реальная %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "созданный файл не является разреженным" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Ошибка разбора числа возле `%s'" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Неизвестный формат даты" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[АРГУМЕНТЫ...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "невозможно открыть `%s'" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "невозможно найти" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "в имени файла присутствует пустой символ" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "невозможно вывести разрежённые файлы на стандартный вывод; используйте опцию " "--file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "неверная маска (возле `%s')" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Неизвестное поле `%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "невозможно установить время в `%s'" -#: tests/genfile.c:700 -#, fuzzy, c-format +#: tests/genfile.c:699 +#, c-format msgid "cannot unlink `%s'" -msgstr "невозможно открыть `%s'" +msgstr "не удаётся разорвать связь с «%s»" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Команда успешно выполнена\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Сбой команды; состояние: %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Команда завершена по сигналу %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Команда остановлена по сигналу %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Команда сбросила дамп памяти\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Команда завершена\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "для опции --stat нужны имена файлов" +#~ msgid "Cannot save working directory" +#~ msgstr "Невозможно сохранить рабочий каталог" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: недопустимая опция -- %c\n" diff --git a/po/sk.gmo b/po/sk.gmo index be06d16b0ab8b0c8bb98f03972a7d85a2ec89b7f..0d7cabb3490a7c7ac21054c006425f7123243dcd 100644 GIT binary patch delta 2714 zcmXxme@xVM9LMqZg@OWI9OMt=hX+|0$HCp9NT(ra;i+_*f<}P~WEdiaU?r{2;To)8 zV?)kDlT~Qq4Y(M)PzyWCO9)5sKAc1? zbOtrfzo_pOuu55rnx_K`ncw>91bJf=HNY2Ggf}r8Gu&n_EW}jwVlI}TKCiNw5!8)c$UXKBhHxA;(D$hOZXr*{ z+>FMvv?Z7r2leP8sG4X+l4%3TpA9>n%pw1bVIT2E0Zt;DvT5Y8*{`Sp{zDC%&!~F# zA=G`F@qTQ<01l!u62~C^h^6S^%erq3YN73@c?TAdf2H&--q66~sEIE*H(o&vFoW88 zHkGA;icvKXL1m!bx$Z&cv|-2hPzUK_)I8^qKfBJ0iu30f9T%NUmZhD#k&|OS)D2b6 z`%S169z;FUBdCeSP{(Qlm65AB7pGChI)l3Z7gUDa?6Qvu*P_OY#n}d**+tZZ-=d1> zHd45j&*-}L;VRsMAsoUmo#hLDUUVEWr+3hi{-3`ZX#Of1)3Q_nI!gJ=sD-?as_GAsP1t9soqUHJ1e--Y!whcLgiDb+wje5V5!C0c z$XwQo%Iq=JJZDkkURXx{sT-SeZuko|z+x)Oi+sFb@j(0bHP_n|T{h+5#=sNx()E$|}F$Lpw_ zOra*$bMV34&0|c#h~N))L9~h|^Ja)H(?L zVk!%2`fbp{$Z+C+ibru9p*qk8)zXP42sRW;6jT=%MTDBtbBNeOB->NT4n9xx5EX=q zsh02(FAz$pnrcLasa8j*+SQaf)x}PNp8-3p^S_l&l+bfhQz5B!6HP>eE}WL)xZP1j zIM3-f;{jqFp;~Aoe8dLgSt8k5>D)zZA$pbnMndORO~>?5ch#LvD z$BFrb3N+cMKYN1c`frgx-{{+87c-{tur%^eK*Lo2+Y%5b3C7pNS~$sNjUXzS@b f)YiE-?CskhKau-x+Gul8%V=$JQT*?s(7gWvu1W1{ delta 2867 zcmajgdrXye9LMpmDIjQwq97Xf;0&C=rfwR1SJn5IgR1u4NaT zChHHaHr;S;jkLzXZfh>wnpvCckJ4!^H*08iwP@?M-k)=x)<13i#`k&so^u|4m+$ZU zz~1F2SGZq{8TNwFqQo7(FXL1^gSX>XsNcVZ1(-I% z>`tt}GF*!j@Fg6Lr!mvawR3dF@xfJ0!(VX{4rkV}n2V)2A2o41j>jX&kM(jX#4|Vr zZ=n{N$*MF?KI-?DdTv3@(-r&PHS4D1=YxLK0KZ@kW~G{q!7?0z%P=P?32MQsP!n}{_s3Bi`T#ZlH>hz^*%eb-KDt_IIh}Oegbuo>BRPs1xDWN*MPv+1 z;Ne2dL=9Ahdaf2ZJ&Ph|Yfocr9Mn zSZyt8fELui&!TGKDC)Vla2kGyKKucdksKcO<5HZ3F6y~g#*u%m^a3Af;sI1@e@6|R zNhN7wAL_XUr~v|~o$o;nbP!b&eW(mv@b0f5Yp_Aj5e%Xi%R$XE!==M_wg^?NYj6ne zLhUq)yis=8`@Y-zydRaqFHvXu9crRfR;|};3MwPzn1I!&;timluR~?XjnY}qjIW{w z9LsMrmQ6-2s1#L1tC51X-QImC-o^cEs9G4nQk=-Pl#!LFj7CwlaRBv}ypEdZGVM`O;2TqwWu)Qu+pJg3I3b$!tTJs6Z_&jrxv0w5Ae*!esGaRY zUK~4yI?~gq3D2X7{Bu;MfA+plo<{yzlx4F$rMdz&Q9Wwl%}8BYr}zB{)BtDE!Aq$3 z`Zuh^ITV045XQOKjm%}2kTSEsPz#wry4aKXbIHF_7vQ4zc{g&bwjXtNJ*W(QiW=y9 z)K15ecV!?SwZKwTu?A2JY{6vQi`qyhYT_PrupfuuHJ1*Hx35vZFp^m{VFoHA1(<|O zPzzXrN^J+m7K&PU4<_Kdn27HqL)tkk!=F$SYRuaRoxd{8{>|>ug|;w`ZNn(BnOH)s zB(x~~!O(91X~lF@Cu%zg)e!T6r(_KNRMjj)Ssr!l5gpOr-eEak&dnx(*haW8ruHjtKNaMQ%R}5qCCIP@fViPE1K;q z>^eSvUvEj)k))|Lk%q?Bw(y@$LsKNU?P|mchl0+=pwrU&UiiARt0fo?z0>uHQ~y5? Q?r3aoZENVw%Lxqs8}Q5`pa1{> diff --git a/po/sk.po b/po/sk.po index 5fa77b1..b5e7b84 100644 --- a/po/sk.po +++ b/po/sk.po @@ -2,14 +2,16 @@ # Copyright (C) 1997 Free Software Foundation, Inc. # Martin Lacko , 2001. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar- \n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2002-02-10 12:00CEST\n" "Last-Translator: Martin Lacko \n" "Language-Team: Slovak \n" +"Language: sk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-2\n" "Content-Transfer-Encoding: 8bit\n" @@ -90,7 +92,7 @@ msgstr "" "pripomienky k pkekladu zasielajte na adresu " "(slovensky).\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Neznáma systémová chyba" @@ -102,8 +104,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -141,56 +143,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: prepínaè %s nie je jednoznaèný\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: prepínaè `--%s' musí by» zadaný bez argumentov\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: prepínaè `%c%s' musí by» zadaný bez argumentu\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: prepínaè `%s' vy¾aduje argument\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: neznámy prepínaè `--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: neznámy prepínaè `%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: neznámy prepínaè -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: prepínaè vy¾aduje argument -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: prepínaè `-W %s' nie je jednoznaèný\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: prepínaè `-W %s' musí by» zadaný bez argumentu\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: prepínaè `%s' vy¾aduje argument\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "Pamä» vyèerpaná" @@ -521,189 +528,189 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Vzdialený shell nie je mo¾né spusti»" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Smer posunu v súbore je mimo rozsah" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Zadáné chybné práva" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Neplatný èas súboru" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Veµkos» pozície v súbore je mimo rozsah" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Neplatná då¾ka pásky" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Veµkos» pozície v súbore je mimo rozsah" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Predèasný koniec súboru\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "%s: neznámy prepínaè -- %c\n" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Neoèekávaný koniec archívu" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "%s: Nedá sa zmeni» pozícia v súbore na %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Neznámy príkaz" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Toto pravdepodobne nie je tar archiv" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 #, fuzzy msgid "Total bytes written" msgstr "Celkom zapísané bajtov: %s (%sB, %sB/s)\n" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" -#: src/buffer.c:396 +#: src/buffer.c:461 #, fuzzy, c-format msgid "Total bytes deleted: %s\n" msgstr "Celkom zapísané bajtov: %s (%sB, %sB/s)\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(rúra)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Chybná hodnota pre veµkos» záznamu" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Meno archívu nebolo zadané" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Stdin/Stdout archív nie je mo¾né otvori»" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Komprimovaný archív nie je mo¾né aktualizova»" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Páska na zaèiatku, konèím" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Príli¹ mnoho chýb, konèím" -#: src/buffer.c:744 +#: src/buffer.c:821 #, fuzzy, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Veµkos» záznamu = %lu blokov" msgstr[1] "Veµkos» záznamu = %lu blokov" -#: src/buffer.c:765 +#: src/buffer.c:842 #, fuzzy, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Nezarovnaný blok (%lu bajtov) v archíve" msgstr[1] "Nezarovnaný blok (%lu bajtov) v archíve" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "V archíve sa nie je mo¾né vráti», bez -i mô¾e by» neèitateµný" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: vracia chybné èíslo zväzku" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Èíslo zväzku preteèené" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Pripravte zväzok #%d pre archív %s a stlaète return:" -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Namiesto u¾ívateµskej odpovede bol zadaný koniec súboru" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "VAROVANIE: Archiv je nekompletný" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, fuzzy, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -715,71 +722,71 @@ msgstr "" " ! Vytvorenie podshellu\n" " ? Vypísanie tejto nápovedy\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Nie je nový zväzok; konèím.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, fuzzy, c-format msgid "%s command failed" msgstr "'%s' príkaz zlyhal" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, fuzzy, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s nepokraèuje na tomto zväzku" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s nepokraèuje na tomto zväzku" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s je chybnej då¾ky (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Tento zväzok nie je následníkem predchádzajúceho" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Pre vyhodnotenie vzorky `%s' musí by» archív pomenovaný" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Zväzok %s nezodpovedá vzorke %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "" @@ -790,20 +797,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Dá sa èíta» iba %lu z %lu bajtov" msgstr[1] "Dá sa èíta» iba %lu z %lu bajtov" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Obsah sa lí¹i" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Neoèekávaný koniec archívu" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Typ súboru sa lí¹i" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Práva sa lí¹ia" @@ -819,143 +826,143 @@ msgstr "Gid sa l msgid "Mod time differs" msgstr "Èas poslednej úpravy sa lí¹i" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Veµkos» sa lí¹i" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Nie je odkazom na %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symbolický odkaz sa lí¹i" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Èíslo zariadenia sa lí¹i" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Overujem " -#: src/compare.c:469 +#: src/compare.c:463 #, fuzzy, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Neznámy typ súboru '%c', porovnávaný ako normálny súbor" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" -#: src/compare.c:599 +#: src/compare.c:593 #, fuzzy, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "CHYBNÉ OVERENIE: nájdených chybných hlavièiek: %d" msgstr[1] "CHYBNÉ OVERENIE: nájdených chybných hlavièiek: %d" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "hodnota %s typu %s je mimo rozsah %s..%s; nahradzujem za %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "hodnota %s typu %s je mimo rozsah %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Generujem záporné osmièkové hlavièky" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, fuzzy, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: súbor nie je zmenený; neaktualizovaný" -#: src/create.c:634 +#: src/create.c:621 #, fuzzy, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: súbor nie je zmenený; neaktualizovaný" -#: src/create.c:661 +#: src/create.c:648 #, fuzzy, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: súbor nie je zmenený; neaktualizovaný" -#: src/create.c:1078 +#: src/create.c:1062 #, fuzzy, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Súbor je krat¹í o : %s bajtov; Doplòujem nulami." msgstr[1] "%s: Súbor je krat¹í o : %s bajtov; Doplòujem nulami." -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: súbor je na inom súborovom systéme; nearchivovaný" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Neznámy typ súboru; súbor ignorovaný" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr " odkaz na %s\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: súbor nie je zmenený; neaktualizovaný" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: súbor je archiv; nearchivovaný" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: súbor bol poèas èítania zmenený" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: soket ignorovaný" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: dvere ignorované" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Preskakujem na ïal¹iu hlavièku" @@ -963,76 +970,76 @@ msgstr "Preskakujem na msgid "Deleting non-header from archive" msgstr "Z archívu je mazané to, èo nie je hlavièka" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, fuzzy, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: èasová nálepka %s je %lu z dátumu budúcnosti" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Neoèakávaná nekonzistencia, pri vytvárení adresára" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "" "%s: Prieèinok bol premenovaný predtým, ako mohol by» extrahovaný jeho stav" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Súvisle ulo¾ené súbory rozbaµujem ako obyèajné súbory" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Skú¹am rozbali» symbolické odkazy ako pevné odkazy" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Nedá sa rozbali» -- súbor je pokraèovaním iného zväzku" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 #, fuzzy msgid "Unexpected long name header" msgstr "Neoèakávaný koniec v rozsekanom mene" -#: src/extract.c:1197 +#: src/extract.c:1353 #, fuzzy, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Neznámy typ súboru `%c', rozbalený ako normálny súbor" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Tento súbor nebolo mo¾né zálohova»" -#: src/extract.c:1402 +#: src/extract.c:1568 #, fuzzy, c-format msgid "Cannot rename %s to %s" msgstr "%s: nie je mo¾né premenova» na %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, fuzzy, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Adresár bol premenovaný" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Adresár bol premenovaný" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Adresár je nový" @@ -1144,35 +1151,35 @@ msgstr "%s: Ma msgid "%s: Cannot remove" msgstr "%s: Nedá sa zmaza»" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Vynechávam" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blok %s: ** Blok NUL **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blok %s: ** Konec súboru **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Medzery v hlavièke na mieste, kde je oèakávaná èíselná hodnota typu %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1180,138 +1187,140 @@ msgstr "" "complement" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Osmièková hodnota %.*s typu %s je mimo rozsah" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Archív obsahuje zastaralé base-64 hlavièky" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Hodnota base-64 typu %s je mimo %s rozsah" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Hodnota base-256 typu %s je mimo rozsah" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Archív obsahuje %.*s tam, kde je oèakaváná èísalná hodnota typu %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Hodnota %s typu %s je mimo rozsah %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " odkaz na %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " neznámy typ súboru %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Hlavièka zväzku--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Pokraèované od %s bajtu--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Vytváram adresár:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Pracovný adresár nie je mo¾né zmeni»" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Premenovávam %s na %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: nie je mo¾né premenova» na %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Premenovávám %s spä» na %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Pracovný adresár nie je mo¾né uchova»" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Pracovný adresár nie je mo¾né zmeni»" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Súbor zmazaný skôr ako mohl by» èítaný" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Súbor zmazaný skôr ako mohl by» èítaný" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "potomok" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "meziprocesový kanál" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: V archíve nenájdený" -#: src/names.c:622 +#: src/names.c:615 #, fuzzy, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: V archíve nenájdený" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Pre vyhodnotenie vzorky `%s' musí by» archív pomenovaný" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1335,7 +1344,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 #, fuzzy msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " @@ -1354,7 +1363,7 @@ msgstr "" " %s -tvf archív.tar # Podrobne vypí¹e v¹etky súbory v archív.tar.\n" " %s -xf archív.tar # Rozbalí v¹etky súbory z archív.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 #, fuzzy msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" @@ -1380,80 +1389,80 @@ msgstr "" " existujú, inak tvorí jednoduché\n" " never, simple tvorí v¾dy jednoduché zálo¾né kópie súborov\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" -#: src/tar.c:394 +#: src/tar.c:395 #, fuzzy msgid "create a new archive" msgstr "Neoèekávaný koniec archívu" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1461,565 +1470,565 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 #, fuzzy msgid "extract files to standard output" msgstr "Chyba pri zápise na ¹tandardný výstup" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" -#: src/tar.c:556 +#: src/tar.c:557 #, fuzzy msgid "create/list/extract multi-volume archive" msgstr "Víczväzkový archív nie je mo¾né otvori»" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" -#: src/tar.c:582 +#: src/tar.c:583 #, fuzzy msgid "Archive format selection:" msgstr "Odporujúce si archívne formáty" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Odporujúce si kompresné prepínaèe" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" -#: src/tar.c:641 +#: src/tar.c:642 #, fuzzy msgid "change to directory DIR" msgstr "Pracovný adresár nie je mo¾né zmeni»" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" -#: src/tar.c:682 +#: src/tar.c:683 #, fuzzy msgid "don't strip leading `/'s from file names" msgstr "Odstraòujem úvodné `%.*s' z názvov súborov" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 #, fuzzy msgid "wildcards do not match `/'" msgstr "Zväzok %s nezodpovedá vzorke %s" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2027,290 +2036,295 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" +msgstr "Zadáné chybné práva" + +#: src/tar.c:758 +msgid "print file time to its full resolution" msgstr "" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Viac ako jeden prepínaè `-Acdtrux' nemô¾e by» zadaných" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Odporujúce si kompresné prepínaèe" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr " neznámy typ súboru %s\n" -#: src/tar.c:1017 +#: src/tar.c:1020 #, fuzzy msgid "Date sample file not found" msgstr "Dátumový súbor nebol nájdený" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Zamieòam %s za neznámy dátumový formát %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, fuzzy, c-format msgid "%s: file list already read" msgstr "%s: súbor je archiv; nearchivovaný" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "%s: súbor je archiv; nearchivovaný" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Neplatný poèet bajtov na záznam" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Neplatná då¾ka pásky" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Viac ako jeden poèiatoèný dátum" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Chybná skupina" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Zadáné chybné práva" -#: src/tar.c:1894 +#: src/tar.c:1912 #, fuzzy msgid "Invalid number" msgstr "Neplatné èíslo i-uzlu" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Neplatný vlastník" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Chybná veµkos» záznamu" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Veµkos» záznamu musí by» násobok %d." -#: src/tar.c:2000 +#: src/tar.c:2019 #, fuzzy msgid "Invalid number of elements" msgstr "Neplatná då¾ka pásky" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Prepínaè `-[0-7][lmh]' nie je podporovaný týmto tarom" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Prepínaè `%c' vy¾aduje argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 #, fuzzy msgid "Multiple archive files require `-M' option" msgstr "Viac archivaèných súborov vy¾aduje prepínaè `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "--listed-incremental a --newer nie je mo¾né kombinova»" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, fuzzy, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Meno zväzku je príli¹ dlhé (limit je %lu bajtov)" msgstr[1] "%s: Meno zväzku je príli¹ dlhé (limit je %lu bajtov)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Víczväzkový archív nie je mo¾né otvori»" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Komprimovaný archív nie je mo¾né otvori»" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Viaczväzkový komprimovaný archív nie je mo¾né vytvori»" -#: src/tar.c:2431 +#: src/tar.c:2450 #, fuzzy msgid "Cannot concatenate compressed archives" msgstr "Komprimovaný archív nie je mo¾né aktualizova»" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Vytvorenie prázdneho archívu odmietnuté." -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Prepínaèe `-Aru' a `--delete' sú nezlúèiteµné s prepínaèom `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Musíte zada» jeden z prepínaèov `-Acdtrux'" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2322,84 +2336,84 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Súbor skrátený o bajtov: %s" msgstr[1] "%s: Súbor skrátený o bajtov: %s" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Èas súboru mimo rozsah" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "Hodnota base-64 typu %s je mimo %s rozsah" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, fuzzy, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Hodnota %s typu %s je mimo rozsah %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2440,247 +2454,258 @@ msgstr "Zapisujem testovac msgid "Read checkpoint %u" msgstr "Èítanie testovacieho bodu %d" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Generujem datové súbory pre testovanie GNU taru.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Odporujúce si kompresné prepínaèe" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "Chyba pri zápise na ¹tandardný výstup" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr "" "\n" "Pou¾itie: %s [PREPÍNAÈ]...\n" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Neplatný èas súboru" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Èíslo i-uzlu mimo rozsah" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Neznáma systémová chyba" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Nedá sa zatvori»" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr " neznámy typ súboru %s\n" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "%s: Nedá sa zmeni» pozícia v súbore na %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "%s: Nedá sa zmeni» pozícia v súbore na %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, fuzzy, c-format msgid "Command failed with status %d\n" msgstr "Potomok bol ukonèený signálom %d" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Rozdelené meno súboru--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Pracovný adresár nie je mo¾né uchova»" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s: nie je mo¾né premenova» na %s" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: neznámy prepínaè -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Èítanie z %s\n" + #, fuzzy #~ msgid "" #~ "\n" @@ -2691,12 +2716,6 @@ msgstr "--Rozdelen #~ "pripomienky k pkekladu zasielajte na adresu " #~ "(slovensky).\n" -#~ msgid "Reading %s\n" -#~ msgstr "Èítanie z %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Z chyby sa nie je mo¾né zotavi»: ukonèuje sa" - #, fuzzy #~ msgid "filter the archive through compress" #~ msgstr "%s: súbor je archiv; nearchivovaný" @@ -2739,6 +2758,9 @@ msgstr "--Rozdelen #~ msgid "Premature end of file" #~ msgstr "Predèasný koniec súboru" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Z chyby sa nie je mo¾né zotavi»: ukonèuje sa" + #~ msgid "block size" #~ msgstr "veµkos» bloku" @@ -3164,8 +3186,8 @@ msgstr "--Rozdelen #~ "príli¹\n" #~ "nepoèítajte.\n" #~ " ARCHÍV mô¾e by» SÚBOR, HOSTITEL:SÚBOR alebo U®IVATEL@HOSTITEL:SÚBOR,\n" -#~ "SÚBOR mô¾e by» súbor alebo zariadenie. Implicitné prepínaèe sú `-f %s -b %" -#~ "d'.\n" +#~ "SÚBOR mô¾e by» súbor alebo zariadenie. Implicitné prepínaèe sú `-f %s -b " +#~ "%d'.\n" #~ msgid "Obsolete option, now implied by --blocking-factor" #~ msgstr "Zastaralý prepínaè, je teraz zahrnutý v prepínaèi --blocking-factor" diff --git a/po/sl.gmo b/po/sl.gmo index ca7f52f88cdb10593104c805e2041a96410c9031..60f3555a10bf3d6af1f8e496708f388cfcd88ef4 100644 GIT binary patch delta 8629 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 delta 8834 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, 1996, 1999, 2000, 2001, 2005, 2006, 2007, 2009. # # $Id: tar-1.22.sl.po 1.2 2009/05/09 09:09:31 Primoz Exp $ +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.22\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2009-05-09 11:09+0200\n" "Last-Translator: Primož Peterlin \n" "Language-Team: Slovenian \n" +"Language: sl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" @@ -88,7 +90,7 @@ msgstr "Poskusite »%s --help« ali »%s --usage« za izčrpnejÅ¡a navodila.\n" msgid "Report bugs to %s.\n" msgstr "Poročila o napakah javite na %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Neznana sistemska napaka" @@ -100,8 +102,8 @@ msgstr "poda ta seznam pomoči" msgid "give a short usage message" msgstr "poda kratka navodila za uporabo" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "IME" @@ -139,56 +141,61 @@ msgstr "(PROGRAMSKA NAPAKA) Izbira bi morala biti prepoznana?!" msgid "write error" msgstr "napaka pri pisanju" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: izbira »%s« ni enoznačna\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: izbira »--%s« ne dovoljuje argumenta\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: izbira »%c%s« ne dovoljuje argumenta\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: izbira »%s« zahteva argument\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: neprepoznana izbira »--%s«\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: neprepoznana izbira »%c%s«\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: neveljavna izbira -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: izbira zahteva argument -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: izbira »-W %s« je dvoumna\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: izbira »-W %s« ne dovoljuje argumenta\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: izbira »%s« zahteva argument\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "zmanjkalo pomnilnika" @@ -544,144 +551,144 @@ msgstr "Pozicija %s v datoteki %s ni dostopna" msgid "Cannot execute remote shell" msgstr "Ni mogoče pognati nelokalne ukazne lupine" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Smer pri seek izven obsega" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Podana zaščita ni veljavna" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Neveljavna oznaka časa" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Odmik pri seek izven obsega" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Neveljavna dolžina traku" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Odmik pri seek izven obsega" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Predčasen znak za konec datoteke\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Glavni načini delovanja:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Nepričakovan znak za konec datoteke med predelanimi imeni" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "N" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "DATOTEKA" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "Ni mogoče odpreti %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Neveljaven ukaz" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "To ne deluje kot arhiv ,tar'" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Skupno zapisanih bajtov" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Skupno prebranih bajtov" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Skupno izbrisanih bajtov: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(cev)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Neveljavna vrednost za dolžino zapisa (record_size)" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Ime arhiva ni podano" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Arhivov na stdin/stdout ni mogoče preveriti" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Arhiv je stisnjen. Uporabite izbiro %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Stisnjenega arhiva ni mogoče ažurirati" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Na začetku traku, končujem" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Preveč napak, končujem" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" @@ -690,7 +697,7 @@ msgstr[1] "Dolžina zapisa = %lu blok" msgstr[2] "Dolžina zapisa = %lu bloka" msgstr[3] "Dolžina zapisa = %lu bloki" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" @@ -699,37 +706,37 @@ msgstr[1] "Neporavnan blok (%lu bajt) v arhivu" msgstr[2] "Neporavnan blok (%lu bajta) v arhivu" msgstr[3] "Neporavnan blok (%lu bajti) v arhivu" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Nazaj po arhivu ne gre, morda ni berljiv brez izbire -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek se ni ustavil na meji zapisa" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: vsebuje neveljavno Å¡tevilko dela" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Prekoračitev Å¡tevilke dela" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Pripravite del #%d za %s in pritisnite Return: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Znak EOF na mestu, kjer se pričakuje odgovor uporabnika" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "POZOR: Arhiv nepopoln" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -740,65 +747,65 @@ msgstr "" " q Končamo tar\n" " y, newline Nadaljujemo z delovanjem\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Poženemo ukazno podlupino\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Ta seznam uzazov\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Novega dela ni, konec.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Ime datoteke ni določeno. Poskusite znova.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Neveljaven vnos. Vtipkajte ? za pomoč.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "ukaz %s neuspeÅ¡en" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s se morda nadaljuje v tem delu: zaglavje vsebuje porezano ime" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s se ne nadaljuje v tem delu" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s je napačne velikosti (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Ta del ne sodi v zaporedje (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Arhiv ni označen skladno z %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Del %s ne ustreza %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -806,7 +813,7 @@ msgstr "" "%s: ime datoteke je predolgo za zapis v zaglavje GNU večdelnega arhiva; " "porezano" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "pisanje se ni končalo s koncem bloka" @@ -819,20 +826,20 @@ msgstr[1] "Prebrati je bilo moč samo %lu od %lu bajta" msgstr[2] "Prebrati je bilo moč samo %lu od %lu bajtov" msgstr[3] "Prebrati je bilo moč samo %lu od %lu bajtov" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Vsebina se razlikuje" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Nepričakovan znak za konec datoteke v arhivu" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Zvrst datoteke se razlikuje" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Način se razlikuje" @@ -848,42 +855,42 @@ msgstr "Å tevilka skupine (GID) se razlikuje" msgid "Mod time differs" msgstr "Čas zadnje spremembe se razlikuje" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Velikost se razlikuje" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Ni povezana z %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Simbolna povezava se razlikuje" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Å tevilka enote se razlikuje" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Preverjanje " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Neznana vrsta datoteke »%c«, diff kot na navadni datoteki" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Arhiv vsebuje imena datotek z odstranjenimi vodilnimi predponami." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Verifikacija morda ne bo uspela locirati izvornih datotek." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" @@ -892,46 +899,46 @@ msgstr[1] "NAPAKA PRI PREVERJANJU: najdena %d neveljavna glava" msgstr[2] "NAPAKA PRI PREVERJANJU: najdeni %d neveljavni glavi" msgstr[3] "NAPAKA PRI PREVERJANJU: najdene %d neveljavne glave" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Osamljeni ničelni blok pri %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: vsebuje značko medpomnilniÅ¡kega imenika %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "vrednost %s od %s obseg %s..%s; zamenjano %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "vrednost %s od %s obseg %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Ustvarjanje negativnih osmiÅ¡kih glav" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: ime datoteke je predolgo (največ %d); brez iznosa" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: ime datoteke je predolgo (ni mogoče deliti); brez iznosa" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: ime povezave je predolgo; brez iznosa" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" @@ -940,56 +947,56 @@ msgstr[1] "%s: Datoteka skrčena za %s bajt; dopolnjeno z ničlami" msgstr[2] "%s: Datoteka skrčena za %s bajta; dopolnjeno z ničlami" msgstr[3] "%s: Datoteka skrčena za %s bajte; dopolnjeno z ničlami" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: datoteka je na drugem datotečnem sistemu; brez iznosa" # POZOR Imamo za to kak izraz? -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "vsebina ni izneÅ¡ena" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Neznan tip datoteke; datoteka ignorirana" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "Manjkajo povezave na %s.\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: datoteka je nespremenjena; brez iznosa" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: datoteka je arhiv; brez iznosa" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "imenik ni iznaÅ¡en" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: Datoteka je bila spremenjena med branjem" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: vtičnica ignorirana" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: vrata ignorirana" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Preskok na naslednjo glavo" @@ -997,77 +1004,77 @@ msgstr "Preskok na naslednjo glavo" msgid "Deleting non-header from archive" msgstr "Brisanje ne-glave iz arhiva" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: neverjetno stara časovna oznaka %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: oznaka časa %s je %s s v prihodnosti" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Nepričakovana neskladnost pri ustvarjanju imenika" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Imenik preimenovan, preden je bilo moč izvleči njegov status" # POZOR! "contiguous files" so datoteke, ki so zapisane na disku # na zaporednih sektorjih (na tistih OS, ki jih podpirajo). -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Neprekinjene datoteke izvlečemo kot navadne" # POZOR! Grdo! -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Simbolne povezave poskusimo dearhivirati kot trde" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Dearhivacija ni mogoča - datoteka se nadaljuje iz prejÅ¡njega dela" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Nepričakovano zaglavje z dolgim imenom" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Neznana vrsta datoteke »%c«, dearhiviramo kot navadno datoteko" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Obstoječa »%s« je novejÅ¡a ali enako stara" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Varnostne kopije te datoteke ni moč napraviti" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Preimenovanje %s v %s ni mogoče" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Imenik je bil preimenovan z %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Imenik je bil preimenovan" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Imenik je nov" @@ -1179,175 +1186,177 @@ msgstr "%s: BriÅ¡emo %s\n" msgid "%s: Cannot remove" msgstr "%s: Odstranitev ni mogoča" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Izpuščeno" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blok %s: ** Blok znakov NUL **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blok %s: ** Konec datoteke **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Na mestu v glavi, kjer pričakujemo Å¡tevilčno vrednost %s, so presledki" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" "OsmiÅ¡ka vrednost arhiva %.*s izven obsega %s; privzemamo dvojiÅ¡ki komplement" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "OsmiÅ¡ka vrednost arhiva %.*s izven obsega %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Arhiv vsebuje zastarele glave oblike base-64" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Podpis %s oblike base-64 v arhivu je izven obsega %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Vrednost base-256 v arhivu izven obsega %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Arhiv vsebuje %.*s na mestu, kjer pričakujemo Å¡tevilčno vrednost %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Vrednost arhiva %s je izven obsega %s: %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " povezava na %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " neznan tip datoteke %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Dolga povezava--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Dolgo ime--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Glava dela--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Nadaljevanje pri bajtu %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Ustvarjamo imenik:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Delovnega imenika ni mogoče spremeniti" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Preimenujemo %s v %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Preimenovanje v %s ni mogoče" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Preimenujemo %s nazaj v %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Delovnega imenika ni mogoče shraniti" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Delovnega imenika ni mogoče spremeniti" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Datoteka je bila odstranjena, preden smo jo prebrali" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Datoteka je bila odstranjena, preden smo jo prebrali" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "proces naslednik" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "medprocesni kanal" -#: src/names.c:601 +#: src/names.c:594 #, fuzzy msgid "Pattern matching characters used in file names" msgstr "vzorci se ujemajo z začetkom imena datoteke" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Ni najdeno v arhivu" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Zahtevane pojavitve ni moč najti v arhivu" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Arhiv ni označen skladno z %s" + +#: src/names.c:953 #, fuzzy msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "Izbiri --preserve-order in --listed-incremential sta nezdružljivi" -#: src/names.c:900 +#: src/names.c:959 #, fuzzy msgid "Only one -C option is allowed with --listed-incremental" msgstr "Izbiri --preserve-order in --listed-incremential sta nezdružljivi" @@ -1373,7 +1382,7 @@ msgid "" msgstr "" "Neznan slog narekovajev »%s«. Poskusite »%s --quoting-style=help« za seznam." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1383,8 +1392,8 @@ msgid "" " tar -tvf archive.tar # List all files in archive.tar verbosely.\n" " tar -xf archive.tar # Extract all files from archive.tar.\n" msgstr "" -"GNU »tar« shranjuje več datotek skupaj na trak ali v arhiv na disku ter lahko " -"povrne posamezne datoteke iz arhiva.\n" +"GNU »tar« shranjuje več datotek skupaj na trak ali v arhiv na disku ter " +"lahko povrne posamezne datoteke iz arhiva.\n" "\n" "Zgledi:\n" " tar -cf arhiv.tar prva druga # Ustvarimo arhiv.tar z datotekama prva in " @@ -1394,7 +1403,7 @@ msgstr "" " tar -xf arhiv.tar # Izvlečemo vse datoteke iz arhiva arhiv." "tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1417,79 +1426,79 @@ msgstr "" " sicer enostavne\n" " never, simple vedno enostavne varnostne kopije\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Glavni načini delovanja:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "izpis vsebine arhiva" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "izvlečenje datoteke iz arhiva" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "ustvarjanje novega arhiva" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "iskanje razlik med arhivom in datotečnim sistemom" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "dodajanje datotek na konec arhiva" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "dodajanje novih datotek, če so novejÅ¡e od že arhiviranih" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "zlivanje arhivov" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "brisanje datotek iz arhiva (ne deluje na traku!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Določila delovanja:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "ekonomično ravnanje z razprÅ¡enimi datotekami" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "stari zapis GNU za inkrementalne arhive" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "novi zapis GNU za inkrementalne arhive" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "nadaljuj z branjem, tudi če datoteke ni moč prebrati" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1501,123 +1510,123 @@ msgstr "" "list, pri čemer je seznam datotek podan bodisi v ukazni vrstici, bodisi z " "izbiro -T. Privzeta vrednost N je 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "po arhivu je mogoče iskati" -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "po arhivu je mogoče iskati" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "pri izdelavi inkrementalnega arhiva ne preverjaj Å¡tevilke naprav" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "pri izdelavi inkrementalnega arhiva preverjaj Å¡tevilke naprav (privzeto)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Nadzor nad pisanjem prek:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "s poskusom preverjanja zapisanega arhiva" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "pobriÅ¡i datoteke, potem ko so arhivirane" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "pri izvlačenju ne piÅ¡i prek obstoječih datotek" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "ne piÅ¡i prek obstoječih datotek, novejÅ¡ih od arhiviranih" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "pri izvlačenju piÅ¡i prek obstoječih datotek" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" "s poprejÅ¡njim brisanjem obstoječih datotek pri izvlačenju istoimenskih novih" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "izprazni hierarhije pred izvlačenjem imenikov" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "ohrani metainformacije o obstoječih imenikih" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "pri izvlačenju piÅ¡i prek metapodatkov obstoječih imenikov (privzeto)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Izbira izhodnega toka:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "datoteke izvleci na standardni izhod" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "UKAZ" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "datoteke napelji na vhod drugega programa" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "prezri izhodne kode hčerinskih procesov" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "obravnavaj neničelne izhodne kode hčerinskih procesov kot napako" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Ravnanje z atributi datotek:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "pri dodajanju datotek spremenimo lastnika v IME" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "pri dodajanju datotek spremenimo skupino v IME" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATUM-ČAS" -#: src/tar.c:493 +#: src/tar.c:494 #, fuzzy msgid "set mtime for added files from DATE-OR-FILE" msgstr "shrani le datoteke, novejÅ¡e od DATUM-ČAS" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "SPREMEMBE" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "zahtevaj (simbolne) SPREMEMBE zaščite za dodane datoteke" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METODA" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1627,33 +1636,33 @@ msgstr "" "branju (METODA=replace, privzeto) ali tako, da se časa sploh ne nastavi " "(METODA=system)" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "brez izvlačenja časa spremembe" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "z ohranitvijo lastniÅ¡tva, če je mogoče" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "pri izvlačenju prepiÅ¡emo lastniÅ¡tvo nase" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "s Å¡tevilčnimi vrednostmi UID/GID namesto imen" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "izvleci podatke o dovoljenjih za dostop do datotek (privzeto za " "administratorja)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1661,15 +1670,15 @@ msgstr "" "uporabi uporabnikovo masko umask pri izvlačenju dovoljenj za dostop do " "datotek (privzeto za uporabnike)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "imena razvrstimo tako, da se ujemajo z arhivom" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "isto kot -p in -s skupaj" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1677,140 +1686,140 @@ msgstr "" "počakaj do končanega izvlačenja, preden nastavimo čase sprememb in " "dovoljenja za dostop za izvlečene imenike" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "prekliči učinek izbire --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Izbira enote in preklapljanje:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARHIV" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "uporabi datoteko ali enoto ARHIV" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "arhiv je lokalen kljub dvopičju v imenu datoteke" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "uporabi navedeni UKAZ rmt namesto rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "uporabi nelokalen UKAZ namesto rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "določi enoto in gostoto zapisa" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "ustvari/pregledaj/izvleci arhiva v več delih" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "menjava traku po Å T x 1024 zapisanih bajtih" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "poženi SKRIPT po koncu traku (privzema -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "uporabimo/ažuriramo Å¡tevilo dela v DATOTEKI" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Bločna razdelitev enote:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOKI" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "dolžina zapisa BLOKI × 512 bajtov" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "Å TEVILO bajtov v zapisu (večkratnik 512)" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "ne meni se za bloke ničel (EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "razdeli na bloke ob branju (cevovodi 4.2BSD)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Izbira oblike arhiva:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "OBLIKA" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "ustvari arhiv v navedeni obliki" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "OBLIKA je nekaj od naÅ¡tetega:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "oblika starega V7 tar" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "stara oblika GNU tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "oblika GNU tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "oblika POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "oblika POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "isto kot pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "isto kot --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "isto kot --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 #, fuzzy msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "ključna-beseda[[:]=vrednost][,ključna-beseda[[:]=vrednost],...]" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "krmilne ključne besede pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "VZOREC" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1818,171 +1827,172 @@ msgstr "" "ustvari arhiv z imenom dela IME; pri izpisu seznama/izvlečku je lahko IME " "regularni izraz za ime dela" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Nasprotujoče si izbire glede stiskanja arhiva" -#: src/tar.c:615 +#: src/tar.c:616 #, fuzzy msgid "use archive suffix to determine the compression program" msgstr "Pisanje na vhod programa za stiskanje ne gre" -#: src/tar.c:617 +#: src/tar.c:618 #, fuzzy msgid "do not use archive suffix to determine the compression program" msgstr "Pisanje na vhod programa za stiskanje ne gre" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROGRAM" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "filtriraj skozi PROGRAM (sprejemati mora izbiro -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Izbira lokalne datoteke:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" -msgstr "dodaj navedeno DATOTEKO v arhiv (za imena datotek, ki se začnejo z »-«)" +msgstr "" +"dodaj navedeno DATOTEKO v arhiv (za imena datotek, ki se začnejo z »-«)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "IMENIK" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "pomik v navedeni IMENIK" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "preberi seznam datotek z navedene DATOTEKE" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T prebere z \\000 terminirana imena; onemogoči -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "prekliči učinek prejÅ¡nje izbire --null" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "odstrani narekovaje iz imen datotek, prebranih s -T (privzeto)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "ne odstrani narekovajev iz imen datotek, prebranih s -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "VZOREC" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "brez datotek, ki jih opisuje VZOREC" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "brez datotek, ustrezajočim vzorcem, prebranih z DATOTEKE" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" "brez vsebine imenikov, ki vsebujejo značko CACHEDIR.TAG, razen značke same" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" "brez imenikov, ki vsebujejo značko CACHEDIR.TAG, in vseh njihovih podimenikov" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "brez imenikov, ki vsebujejo značko CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "brez vsebine imenikov, ki vsebujejo DATOTEKO, razen DATOTEKE same" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "brez imenikov, ki vsebujejo DATOTEKO, in vseh njihovih podimenikov" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "brez imenikov, ki vsebujejo DATOTEKO" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "brez imenikov sistema za nadzor različic" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "podimenikov ne vključujemo avtomatično" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "pri arhiviranju izpusti datoteke na nelokalnih datotečnih sistemih" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "rekurzivno vključi vse podimenike" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "ne odstrani vodilnih »/« iz imen datotek" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "sledi simbolnim povezavam; arhiviraj/iznesi ciljne datoteke" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "sledi trdim povezavam; arhiviraj/iznesi ciljne datoteke" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "IME" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "začenÅ¡i z navedenim IMENOM v arhivu" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "shrani le datoteke, novejÅ¡e od DATUM-ČAS" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATUM" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "primerjaj datum in uro le, kadar se podatki spremenijo" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "TIP" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" "varnostna kopija pred brisanjem, z možnostjo izbire TIPA varnostne kopije" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "NIZ" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1990,98 +2000,98 @@ msgstr "" "varnostna kopija pred brisanjem; prekličemo običajno PRIPONO (»~«, razen če " "lupinska spremenljivka SIMPLE_BACKUP_SUFFIX določa drugače)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Pretvorbe imen datotek:" -#: src/tar.c:704 +#: src/tar.c:705 #, fuzzy msgid "strip NUMBER leading components from file names on extraction" msgstr "izpusti Å TEVILO vodilnih komponent iz imen datotek" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "IZRAZ" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "brez razlike med malimi in velikimi črkami" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "vzorci se ujemajo z začetkom imena datoteke" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" "vzorci se ujemajo od kateregakoli znaka »/« dalje (privzeto pri izključitvi)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "pri ujemanje se razlikuje med malimi in velikimi črkami (privzeto)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "uporabi nadomestne znake (privzeto za izključitvi)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "dobesedno ujemanje nizov" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "nadomestni znaki se ne ujemajo z »/«" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "nadomestni znaki se ujemajo z »/« (privzeto pri izključitvi)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Informativni izpisi:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "z izčrpnim izpisom obdelanih datotek" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 #, fuzzy msgid "warning control" msgstr "Nadzor nad pisanjem prek:" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "izpiÅ¡i poročilo o napredku pri vsakem N-tem zapisu (privzeto 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "DEJANJE" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "na vsaki kontrolni točki izvedi DEJANJE" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "izpiÅ¡i sporočilo, če niso zapisane vse povezave" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SIGNAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2089,27 +2099,32 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "z izpisom časov sprememb datotek v UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "zapiÅ¡i izčrpno poročilo v DATOTEKO" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "z izpisom zaporednega bloka v arhivu ob vsakem sporočilu" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "vpraÅ¡aj za potrditev pri vsakem koraku" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "prikaži privzete nastavitve" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2117,31 +2132,31 @@ msgstr "" "pri izpisu seznama ali izvlačenju izpiÅ¡i vsak imenik, ki ne ustreza iskalnim " "pogojem" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "prikaži imena datotek ali arhivov po pretvorbi" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "SLOG" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "nastavi slog navajanja imen; glej spodaj za veljavne SLOGE" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Združljivostne izbire:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2149,64 +2164,64 @@ msgstr "" "ob ustvarjanju arhiva isto kot --old-archive; ob izvlačenju isto kot --no-" "same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Druge izbire:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "onemogoči rabo nekaterih potencialno Å¡kodljivih izbir" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Naenkrat je dovoljena največ ena od izbir »-Acdtrux«" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Nasprotujoče si izbire glede stiskanja arhiva" -#: src/tar.c:993 +#: src/tar.c:996 #, fuzzy, c-format msgid "Unknown signal name: %s" msgstr "Neznano ime signala: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Datoteke z vzorcem datuma ni najti" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Nadomeščamo %s za neznan format datuma %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: seznam datotek je že prebran" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: prebrano ime datoteke vsebuje znak \\0" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "filtriraj arhiv skozi gzip" -#: src/tar.c:1290 +#: src/tar.c:1296 #, fuzzy msgid "Valid arguments for the --quoting-style option are:" msgstr "Veljavni argumenti pri izbirah --quoting-style so:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2214,121 +2229,121 @@ msgstr "" "\n" "Privzete vrednosti *tega* programa tar:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Neveljaven faktor blokiranja" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Neveljavna dolžina traku" -#: src/tar.c:1511 +#: src/tar.c:1529 #, fuzzy msgid "Invalid incremental level value" msgstr "Okvarjen inkrementalni zapis datoteke" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Več kot en pražni podatek" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: Neveljavna skupina" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Podana zaščita ni veljavna" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Neveljavno Å¡tevilo" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Neveljaven lastnik" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Neveljavna dolžina zapisa" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Dolžina zapisa mora biti večkratnik %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Neveljavno Å¡tevilo elementov" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Dovoljena je le ena izbira --to-command" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Okvarjen argument gostote: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Neznana gostota: »%c«" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "*Ta* izvedba tar ne podpira izbir »-[0-7][lmh]«" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[DATOTEKA]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Stara izbira »%c« zahteva argument." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence nima pomena brez seznama datotek" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence ni mogoče uporabiti v zahtevanem načinu delovanja" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Več arhivskih datotek zahteva izbiro »-M«" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Izbire --listed-incremental ni mogoče kombinirati z --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 #, fuzzy msgid "--level is meaningless without --listed-incremental" msgstr "Izbiri --preserve-order in --listed-incremential sta nezdružljivi" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2337,48 +2352,48 @@ msgstr[1] "%s: Oznaka dela je predolga (omejitev je %lu bajt)" msgstr[2] "%s: Oznaka dela je predolga (omejitev je %lu bajta)" msgstr[3] "%s: Oznaka dela je predolga (omejitev je %lu bajti)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Arhivov v več delih ni mogoče preveriti" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Stisnjenega arhiva ni mogoče preveriti" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Stisnjeni arhivi v več delih niso mogoči" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Stisnjenega arhiva ni mogoče združevati" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "izbira --pax-option je mogoča le na arhivih POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Dolžina dela ne more biti manjÅ¡a od velikosti zapisa" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "Izbiri --preserve-order in --listed-incremential sta nezdružljivi" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Zahteva po odprtju praznega arhiva bojazljivo zavrnjena" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Izbire »-Aru« so nezdružljive z »-f -«" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Ena od izbir »-Acdtrux« je obvezna" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2392,88 +2407,88 @@ msgstr[1] "%s: Datoteka skrčena za %s bajt" msgstr[2] "%s: Datoteka skrčena za %s bajta" msgstr[3] "%s: Datoteka skrčena za %s bajte" -#: src/xheader.c:163 +#: src/xheader.c:164 #, fuzzy, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Ključna beseda %s je bodisi neznana, bodisi Å¡e ni izvedena" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Oznaka časa izven obsega" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Vzorca %s ni mogoče uporabiti" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Ključne besede %s ni mogoče preklicati" -#: src/xheader.c:541 +#: src/xheader.c:542 #, fuzzy msgid "Malformed extended header: missing length" msgstr "PoÅ¡kodovana razÅ¡irjena glava: manjka enačaj" -#: src/xheader.c:549 +#: src/xheader.c:550 #, fuzzy msgid "Extended header length is out of allowed range" msgstr "Podpis %s oblike base-64 v arhivu je izven obsega %s" -#: src/xheader.c:556 +#: src/xheader.c:557 #, fuzzy, c-format msgid "Extended header length %*s is out of range" msgstr "Podpis %s oblike base-64 v arhivu je izven obsega %s" -#: src/xheader.c:568 +#: src/xheader.c:569 #, fuzzy msgid "Malformed extended header: missing blank after length" msgstr "PoÅ¡kodovana razÅ¡irjena glava: za dolžino manjka presledek" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "PoÅ¡kodovana razÅ¡irjena glava: manjka enačaj" -#: src/xheader.c:582 +#: src/xheader.c:583 #, fuzzy msgid "Malformed extended header: missing newline" msgstr "PoÅ¡kodovana razÅ¡irjena glava: manjka enačaj" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, fuzzy, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Vrednost arhiva %s je izven obsega %s: %s.%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, fuzzy, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "PoÅ¡kodovana razÅ¡irjena glava: manjka enačaj" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, fuzzy, c-format msgid "Malformed extended header: excess %s=%s" msgstr "PoÅ¡kodovana razÅ¡irjena glava: manjka enačaj" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, fuzzy, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "PoÅ¡kodovana razÅ¡irjena glava: manjka enačaj" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, fuzzy, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "PoÅ¡kodovana razÅ¡irjena glava: manjka enačaj" @@ -2516,252 +2531,263 @@ msgstr "Oznaka pisanja %u" msgid "Read checkpoint %u" msgstr "Oznaka branja %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 #, fuzzy msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "Ustvarimo podatkovne datoteke za testno zbirko GNU tar.\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 #, fuzzy msgid "File creation options:" msgstr "Druge izbire:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 #, fuzzy msgid "Create file of the given SIZE" msgstr "ustvari arhiv v navedeni obliki." -#: tests/genfile.c:132 +#: tests/genfile.c:131 #, fuzzy msgid "Write to file NAME, instead of standard output" msgstr "datoteke izvleci na standardni izhod" -#: tests/genfile.c:134 +#: tests/genfile.c:133 #, fuzzy msgid "Read file names from FILE" msgstr "Prebranih %s bajtov iz %s" -#: tests/genfile.c:136 +#: tests/genfile.c:135 #, fuzzy msgid "-T reads null-terminated names" msgstr "-T prebere z \\000 terminirana imena; onemogoči -C" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 #, fuzzy msgid "Seek to the given offset before writing data" msgstr "s poskusom preverjanja zapisanega arhiva" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [IZBIRA...]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 #, fuzzy msgid "Update the access and modification times of FILE" msgstr "%s: Časa zadnje spremembe in dostopa ni možno spremeniti" -#: tests/genfile.c:192 +#: tests/genfile.c:191 #, fuzzy msgid "Execute COMMAND" msgstr "UKAZ" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, fuzzy, c-format msgid "Invalid size: %s" msgstr "Neveljavna oznaka časa" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, fuzzy, c-format msgid "Number out of allowed range: %s" msgstr "Å tevilka inoda izven obsega" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, fuzzy, c-format msgid "Negative size: %s" msgstr "Neveljavna oznaka časa" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, fuzzy, c-format msgid "Unknown date format" msgstr "Neznana sistemska napaka" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, fuzzy, c-format msgid "cannot open `%s'" msgstr "Ni mogoče odpreti %s" -#: tests/genfile.c:435 +#: tests/genfile.c:434 #, fuzzy msgid "cannot seek" msgstr "Ni mogoče zapreti" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, fuzzy, c-format msgid "Unknown field `%s'" msgstr " neznan tip datoteke %s\n" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, fuzzy, c-format msgid "cannot set time on `%s'" msgstr "Ni mogoče do statistike za datoteko %s" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "Ni mogoče odpreti %s" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, fuzzy, c-format msgid "Command failed with status %d\n" msgstr "Naslednik umrl s signalom %d" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" # POZOR Je to res to? -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, fuzzy, c-format msgid "--stat requires file names" msgstr "--Predelana imena datotek--\n" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Delovnega imenika ni mogoče shraniti" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "Preimenovanje %s v %s ni mogoče" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: nedovoljena izbira -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "Branje %s\n" + #~ msgid "" #~ "\n" #~ "Report bugs to <%s>.\n" @@ -2771,12 +2797,6 @@ msgstr "--Predelana imena datotek--\n" #~ "Napake v prevodu sporočite na \n" -#~ msgid "Reading %s\n" -#~ msgstr "Branje %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Napake ni moč popraviti: zapuščamo" - #~ msgid "filter the archive through bzip2" #~ msgstr "filtriraj arhiv skozi bzip2" @@ -2828,6 +2848,9 @@ msgstr "--Predelana imena datotek--\n" #~ msgid "Premature end of file" #~ msgstr "Predčasen znak za konec datoteke" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Napake ni moč popraviti: zapuščamo" + #~ msgid "[.]NUMBER" #~ msgstr "[.]N" diff --git a/po/sv.gmo b/po/sv.gmo index 4da97eac4530ba6faeb714606f0caf7c3dc50e10..a4dec4ad58d244947c27d5c0d8aece4821b75c83 100644 GIT binary patch delta 12695 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 koKl|uo_|1OYTl}XVc7-InK_7+CZF0bDD3?f?J) delta 12162 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 R2Ijw6P^4J?iSw;}{s*|B#cluq diff --git a/po/sv.po b/po/sv.po index d41e586..b9f5df6 100644 --- a/po/sv.po +++ b/po/sv.po @@ -1,17 +1,19 @@ # Swedish messages for tar -# Copyright © 1996, 2001, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +# Copyright © 1996, 2001, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. # This file is distributed under the same license as the tar package. # Jan Djärv , 2000, 2001, 2004, 2006, 2007, 2008, 2009, 2010 -# Revision: 1.98 +# Revision: 1.102 # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22.91\n" +"Project-Id-Version: tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2010-02-18 12:48+0100\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-15 17:04+0200\n" "Last-Translator: Jan Djärv \n" "Language-Team: Swedish \n" +"Language: sv\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -90,7 +92,7 @@ msgstr "" "Rapportera fel eller synpunkter pÃ¥ översättningen till .\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Okänt systemfel" @@ -102,8 +104,8 @@ msgstr "visa denna hjälptext" msgid "give a short usage message" msgstr "ge ett kort hjälpmeddelande" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "NAMN" @@ -141,56 +143,61 @@ msgstr "(PROGRAMFEL) Flagga borde ha känts igen!?" msgid "write error" msgstr "skrivfel" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: flaggan \"%s\" är tvetydig\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: flaggan \"--%s\" tar inget argument\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: flaggan \"%c%s\" tar inget argument\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: flaggan \"%s\" kräver ett argument\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: flaggan \"--%s\" kräver ett argument\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: okänd flagga \"--%s\"\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: okänd flagga \"%c%s\"\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: ogiltig flagga -- \"%c\"\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: flaggan kräver ett argument -- \"%c\"\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: flaggan \"-W %s\" är tvetydig\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: flaggan \"-W %s\" tar inget argument\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: flaggan \"-W %s\" kräver ett argument\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "minnet slut" @@ -456,7 +463,7 @@ msgstr "%s: Kan inte ändra rättigheter till %s" #: lib/paxerror.c:101 #, c-format msgid "%s: Cannot change ownership to uid %lu, gid %lu" -msgstr "%s: Kan inte byta ägare (chown) till uid %lu, gid %lu" +msgstr "%s: Kan inte byta ägare till uid %lu, gid %lu" #: lib/paxerror.c:127 #, c-format @@ -468,14 +475,14 @@ msgstr "%s: Kan inte skapa hÃ¥rd länk till %s" msgid "%s: Read error at byte %s, while reading %lu byte" msgid_plural "%s: Read error at byte %s, while reading %lu bytes" msgstr[0] "%s: Läsfel vid byte %s, när %lu byte lästes" -msgstr[1] "%s: Läsfel vid byte %s, när %lu bytes lästes" +msgstr[1] "%s: Läsfel vid byte %s, när %lu byte lästes" #: lib/paxerror.c:192 #, c-format msgid "%s: Warning: Read error at byte %s, while reading %lu byte" msgid_plural "%s: Warning: Read error at byte %s, while reading %lu bytes" msgstr[0] "%s: Varning: Läsfel vid byte %s, när %lu byte lästes" -msgstr[1] "%s: Varning: Läsfel vid byte %s, när %lu bytes lästes" +msgstr[1] "%s: Varning: Läsfel vid byte %s, när %lu byte lästes" #: lib/paxerror.c:259 #, c-format @@ -535,188 +542,188 @@ msgstr "standard ut" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Kan inte ansluta till %s: namnuppslagning misslyckades" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Kan inte exekvera fjärrskal" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Positioneringsriktning har ogiltigt värde" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "Ogiltig sökriktning" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "Ogiltigt positioneringsvärde" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Positioneringsvärde är utanför giltigt intervall" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "Ogiltigt byte-antal" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "Byte-antal är utanför giltigt intervall" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "För tidigt filslut" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "Felaktig operationskod" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "Operationsläge stöds inte" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "Oväntade argument" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" -msgstr "Styr en bandstation, acceptera kommandon frÃ¥n en fjärrptocess" +msgstr "Styr en bandstation, acceptera kommandon frÃ¥n en fjärrprocess" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "NUMMER" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "sätt felsökningsnivÃ¥" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FIL" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "sätt felsökningsfilnamn" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "kan inte öppna \"%s\"" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "för mÃ¥nga argument" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Okänt kommando" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Det här ser inte ut som ett tar-arkiv" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Summa skrivna byte" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Summa lästa byte" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Summa borttagna byte: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(rör)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Ogiltigt värde pÃ¥ record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Arkivnamn saknas" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Kan inte verifiera standard in/ut-arkiv" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Arkivet är komprimerat. Använd flaggan %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Komprimerade arkiv kan inte uppdateras" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Vid bandets början, avslutar nu" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "För mÃ¥nga fel, avslutar" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Poststorlek = %lu block" msgstr[1] "Poststorlek = %lu block" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Block ej vid blockgräns (%lu byte) i arkivet" msgstr[1] "Block ej vid blockgräns (%lu byte) i arkivet" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Kunde inte söka bakÃ¥t i arkivfilen, den kan vara oläsbar utan -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek stannade inte pÃ¥ en postgräns" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: innehÃ¥ller ogiltigt volymnummer" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Volymnummer flödade över" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Gör iordning volym nummer %d för %s och tryck vagnretur:" -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Filslut vid förväntat användarsvar" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "VARNING: Arkivet är ofullständigt" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -727,66 +734,66 @@ msgstr "" " q Avsluta programmet\n" " y eller nyrad Fortsätt\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Starta ett underskal\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Skriv denna lista\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Ingen ny volym; avslutar.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Filnamn inte angivet, försök igen.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Ogiltig indata. Skriv ? för hjälp.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "kommandot \"%s\" misslyckades" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s fortsätter möjligen i denna volym: huvudet innehÃ¥ller ett trunkerat namn" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s fortsätter inte i denna volym" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s har fel storlek (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Denna volym kommer inte i rätt ordning (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Arkivet är inte märkt för att stämma med %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Volym %s överensstämmer inte med %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -794,7 +801,7 @@ msgstr "" "%s: filnamnet är för lÃ¥ngt för att lagras i huvudet för ett GNU " "multivolymsarkiv, trunkerat" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "skrivning stannade inte pÃ¥ en blockgräns" @@ -805,20 +812,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Kunde bara läsa %lu av %lu byte" msgstr[1] "Kunde bara läsa %lu av %lu byte" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "InnehÃ¥llet är olika" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Oväntat filslut i arkivet" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Filtyper är olika" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Rättigheterna är olika" @@ -834,143 +841,143 @@ msgstr "Gid är olika" msgid "Mod time differs" msgstr "Modifieringstiderna är olika" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Storlekarna är olika" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Inte länkad till %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Symboliska länkar är olika" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Enhetsnummer är olika" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Verifierar " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Okänd filtyp \"%c\" jämförd som en normal fil" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Arkivet innehÃ¥ller filnamn med inledande prefix borttaget." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Verifiering kan misslyckas med att hitta originalfiler." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "VERIFIKATIONSFEL: %d felaktigt arkivhuvud upptäckt" msgstr[1] "VERIFIKATIONSFEL: %d felaktiga arkivhuvuden upptäckta" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Ett ensamt nollblock vid %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: innehÃ¥ller en cachekatalog-tagg %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "%s är utanför intervallet för %s: %s..%s, byter till %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "%s är utanför intervallet för %s: %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Genererar negativa oktala värden i arkivhuvudet" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: filnamnet är för lÃ¥ngt (max %d); inte arkiverad" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: filnamnet är för lÃ¥ngt (kan ej delas); inte arkiverad" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: länknamn är för lÃ¥ngt; inte arkiverad" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Fil krympte med %s byte, fyller ut med nolltecken" msgstr[1] "%s: Fil krympte med %s byte, fyller ut med nolltecken" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: filen finns pÃ¥ ett annat filsystem; inte arkiverad" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "innehÃ¥llet inte arkiverat" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Okänd filtyp; filen ignorerad" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." -msgstr "Det fattas länkar till \"%s\"." +msgstr "Det fattas länkar till %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: filen är oförändrad; inte arkiverad" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: filen är själva arkivet; inte arkiverad" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "katalog inte arkiverad" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" -msgstr "%s: Fil ändrades under tiden vi läste den" +msgstr "%s: fil ändrades under tiden vi läste den" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: socketfil ignorerad" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: door-fil ignorerad" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Hoppar till nästa filhuvud" @@ -978,74 +985,74 @@ msgstr "Hoppar till nästa filhuvud" msgid "Deleting non-header from archive" msgstr "Tar bort icke-huvuddata frÃ¥n arkivet" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: orimligt gammal tidsstämpel %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: tidsvärde %s är %s sekunder i framtiden" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Oväntad inkonsistens när katalog skapades" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Katalog bytte namn innan dess status kunde extraheras" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Extraherar sammanhängande filer som vanliga filer" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Försöker extrahera symboliska länkar som hÃ¥rda länkar" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Kan inte extrahera -- filen fortsätter frÃ¥n en annan volym" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Oväntat huvud för lÃ¥ngt filnamn" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Okänd filtyp \"%c\", extraherad som en normal fil" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Nuvarade \"%s\" är nyare eller lika gammal" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" -msgstr "%s kunde inte säkerhetskopieras" +msgstr "%s: Kunde inte säkerhetskopiera denna fil" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Kan inte byta namn pÃ¥ %s till %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Katalogen har bytt namn frÃ¥n %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Katalogen har bytt namn" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Katalogen är ny" @@ -1156,35 +1163,35 @@ msgstr "%s: Tar bort %s\n" msgid "%s: Cannot remove" msgstr "%s: Kan inte ta bort" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Utelämnad" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "block %s: ** Block av nolltecken **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "block %s: ** Filslut **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "block %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Blanka i huvud där numeriskt värde av typ %s förväntades" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1192,141 +1199,142 @@ msgstr "" "komplement" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Arkivets oktala värde %.*s är utanför intervallet för %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Arkivet innehÃ¥ller förÃ¥ldrade \"base-64\"-huvuden" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Arkivets \"base-64\"-sträng \"%s\" är utanför intervallet för %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Arkivets \"base-256\"-värde är utanför intervallet för %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Arkivet innehÃ¥ller %.*s där ett numeriskt värde av typ %s förväntades" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Arkivets värde %s är utanför intervallet för %s: %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " länk till %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " okänd filtyp \"%s\"\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--LÃ¥ng länk--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--LÃ¥ngt namn--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Volymhuvud--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Fortsätter vid byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Skapar katalog:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Kan inte byta arbetskatalog" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Byter namn pÃ¥ %s till %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Kan inte byta namn till %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Byter namn pÃ¥ %s tillbaka till %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Kan inte spara arbetskatalog" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Kan inte byta arbetskatalog" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Fil borttagen innan vi läste den" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Katalog borttagen innan vi läste den" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "barnprocess" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "interprocesskanal" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "Mönstermatchningstecken används i filnamn." +msgstr "Mönstermatchningstecken används i filnamn" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -"Använd --wildcards för att slÃ¥ pÃ¥ mönstermatchning, eller --no-wildcards för" +"Använd --wildcards för att slÃ¥ pÃ¥ mönstermatchning, eller --no-wildcards för " +"att undertrycka denna varning" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Fanns inte i arkivet" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Nödvändig förekomst hittades inte i arkivet" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Arkivmärkning stämmer inte överrens" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "Att används -C i en fillista är inte tillÃ¥tet med --listed-incremental" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "Bara en -C-flagga är tillÃ¥tet med --listed-incremental" @@ -1352,7 +1360,7 @@ msgstr "" "Okänd citeringsstil \"%s\". Gör \"%s --quoting-style=help för att fÃ¥ en " "lista." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1370,7 +1378,7 @@ msgstr "" " tar -tvf arkiv.tar # Visa filer i arkiv.tar, all information.\n" " tar -xf arkiv.tar # Extrahera alla filer i arkiv.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1392,80 +1400,80 @@ msgstr "" "annars\n" " never, simple gör alltid enkla säkerhetskopior\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Operationsläge:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "visa innehÃ¥llet i arkivet" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "extrahera filer frÃ¥n arkivet" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "skapa ett nytt arkiv" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "visa skillnader mellan filsystemet och arkivet" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "lägg till filer pÃ¥ slutet av arkivet" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "lägg till filer som är nyare än de i arkivet" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "lägg till innehÃ¥llet i en arkivfil till arkivet" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "ta bort frÃ¥n arkivet (inte för arkiv pÃ¥ magnetband!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "verifiera arkivets volymnamn och avsluta." -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Modifiera operationslägen:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "hantera filer med hÃ¥l mer effektivt" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "ÖVRE[.UNDRE]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" "ange vilken formatversion som ska hantera filer med hÃ¥l (implicerar --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "hantera gamla GNU-formatet för inkrementell säkerhetskopiering" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "hantera nya GNU-formatet för inkrementell säkerhetskopiering" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "dumpa nivÃ¥ för \"listed-incremental\" arkiv" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "avsluta inte med felslutstatus p.g.a. oläsbara filer" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1477,121 +1485,121 @@ msgstr "" "list och när en lista av filer anges antingen pÃ¥ kommandoraden eller med " "flaggan -T. Standardvärde för NUMMER är 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "arkivet är sökbart" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "arkivet är inte sökbart" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "kontrollera inte enhetsnummer när inkrementella arkiv skapas" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "kontrollera enhetsnummer när inkrementella arkiv skapas (standardvärde)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Kontrollera överskrivning:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "försök verifiera arkivet efter det skapats" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "ta bort filer efter de sparats i arkivet" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "ersätt inte befintliga filer vid extrahering" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "ersätt inte befintliga filer som är nyare än de som finns i arkivet" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "skriv över befintliga filer vid extrahering" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "ta bort befintliga filer innan de nya extraheras" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "töm kataloghierarkier före extrahering av katalog" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "bevara befintliga katalogers metadata" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "skriv över metadata för befintliga kataloger vid extrahering (standardvärde)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Välj utdataström:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "extrahera filer till standard ut" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "KOMMANDO" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "extrahera filer till standard in för ett annat program" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "ignorera barnprocessers slutstatus" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "behandla slutstats frÃ¥n barnprocesser skiljt ifrÃ¥n noll som fel" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Hantering av filattribut:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "sätt NAMN som ägare för adderade filer" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "sätt NAMN som grupp för adderade filer" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATUM-ELLER-FIL" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "sätt modifieringstid pÃ¥ adderade filer frÃ¥n DATUM-ELLER-FIL" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "RÄTTIGHET" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "sätt (symbolisk) RÄTTIGHET för adderade filer" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METOD" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1601,11 +1609,11 @@ msgstr "" "tiderna efter läsning (METOD=\"replace\", standardvärde) eller genom att " "inte sätta tiderna alls (METOD=\"system\")" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "extrahera inte filers modifieringstid" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" @@ -1613,21 +1621,21 @@ msgstr "" "försök extrahera filer med samma ägare som i arkivet (standardvärde för " "superanvändaren)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" "extrahera filer med dig själv som ägare (standardvärde för vanliga användare)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "använd alltid tal för användar- och gruppnamn" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "extrahera information om filrättigheter (standardvärde för superanvändare)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1635,15 +1643,15 @@ msgstr "" "applicera användarens umask när rättigheter extraheras frÃ¥n arkivet " "(standardvärde för vanliga användare)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "sortera namn som ska extraheras sÃ¥ de passar ihop med arkivet" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "samma som bÃ¥de -p och -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1651,139 +1659,139 @@ msgstr "" "fördröj sättandet av modifikationstider och rättigheter pÃ¥ extraherade " "kataloger till slutet pÃ¥ arkivextraheringen." -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "ta bort effekten av flaggan --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Enhetsval och enhetsbyte:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARKIV" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "använd arkivfil eller enhet ARKIV" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "arkivfilen är lokal även om namnet har kolon" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "använd KOMMANDO istället för rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "använd KOMMANDO istället för rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "ange enhet och densitet" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "skapa/visa/extrahera ett flervolymsarkiv" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "byt band efter det att NUMMER x 1024 byte skrivits" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "kör kommandofil vid slutet av varje band (flaggan -M sätts ocksÃ¥)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "använd/uppdatera volymnummer i FIL" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Blockhantering:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOCK" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "BLOCK x 512 byte per post" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "NUMMER byte per post, multipel av 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "ignorera block med enbart nolltecken (betyder filslut)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "omblocka vid läsning (för 4.2BSD-rör)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Val av arkivformat:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMAT" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "skapa ett arkiv med givet format" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMAT är ett av följande:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "gammalt V7 format" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "GNU-format enligt tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" -msgstr "GNU-format frÃ¥n tar 1.13.x" +msgstr "Format frÃ¥n GNU tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) format" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) format" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "samma som pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "samma som --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "samma som --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "nyckelord[[:]=värde][,nyckelord[[:]=värde], ...]" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "ange nyckelord för pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "NAMN" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1791,76 +1799,76 @@ msgstr "" "skapa ett arkiv med volymnamnet NAMN. Vid visning/extrahering är NAMN ett " "skalmönster (\"globbing\")" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Komprimeringsflaggor:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "använd arkivsuffix för att bestämma komprimeringsprogram" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "använd inte arkivsuffix för att bestämma komprimeringsprogram" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "filtrera genom PROG (mÃ¥ste förstÃ¥ -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Filval:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "lägg till angiven FIL till arkivet (användbart om FIL börjar med \"-\")" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "KATALOG" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "byt katalog till KATALOG" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" -msgstr "hämta namn att extrahera frÃ¥n FIL" +msgstr "hämta namn att extrahera eller skapa frÃ¥n FIL" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T läser namn Ã¥tskilda med nolltecken, -C obrukbar" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "ta bort effekten av föregÃ¥ende --null-flagga" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "avcitera filnamn som lästs med -T (standardvärde)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "avcitera inte filnamn som lästs med -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "MÖNSTER" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "utelämna filer som matchar MÖNSTER" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "utelämna filer som matchar mönster i FIL" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1868,91 +1876,91 @@ msgstr "" "utelämna innehÃ¥llet i kataloger som innehÃ¥ller CACHEDIR.TAG, förutom " "CACHEDIR.TAG själv" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "utelämna allt i kataloger som innehÃ¥ller CACHEDIR.TAG" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "utelämna kataloger som innehÃ¥ller CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "utelämna innehÃ¥llet i kataloger som innehÃ¥ller FIL, förutom FIL själv" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "utelämna allting i kataloger som innehÃ¥ller FIL" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "utelämna kataloger som innehÃ¥ller FIL" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "uteslut kataloger frÃ¥n versionshanteringssystem" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "exkludera säkerhetskopior och lÃ¥sfiler" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "gÃ¥ inte automatiskt ned i kataloger" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "byt inte filsystem när arkivet skapas" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "gÃ¥ rekursivt ned i kataloger (standardvärde)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "tag inte bort inledande \"/\" frÃ¥n namn" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "följ symboliska länkar, arkivera filerna de pekar pÃ¥" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "följ hÃ¥rda länkar, arkivera filerna de pekar pÃ¥" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "NAMN" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "börja med fil NAMN i arkivet" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "arkivera bara filer nyare än DATUM-ELLER-FIL" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATUM" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "jämför datum och tid endast för dataändringar" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "KONTROLL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "gör säkerhetskopior före borttagning, välj typ av versionshantering" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "STRÄNG" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1961,99 +1969,99 @@ msgstr "" "säkerhetskopieändelsen (\"~\" om inte ändrad med miljövariabeln " "SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Filnamnstransformationer:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" "ta bort NUMMER stycken inledande komponenter frÃ¥n filnamn före extrahering" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "UTTRYCK" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "använd seds ersättnings-UTTRYCK för att transformera filnamn" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Flaggor för filnamnsmatchning (pÃ¥verkar bÃ¥de uteslutnings- och " "inkluderingsmönster):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "matcha gemener och versaler lika" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "mönster mÃ¥ste matcha i början pÃ¥ filnamn" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "mönster matchas efter \"/\" i filnamn (standardvärde vid uteslutning)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "matcha gemener och versaler olika (standardvärde)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "använd jokertecken (standardvärde för uteslutning)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "ordagrann strängjämförelse" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "jokertecken matchar inte \"/\"" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "jokertecken matchar \"/\" (standardvärde för uteslutning)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Informativ utskrift:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "visa namn pÃ¥ alla filer som behandlas" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "NYCKELORD" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "varningskontroll" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" "visa förloppsmeddelande efter varje grupp om NUMMER poster (standardvärde 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "ÅTGÄRD" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "utför ÅTGÄRD vid vare kontrollpunkt" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "visa ett meddelande om inte alla länkar arkiverats" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SIGNAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2064,27 +2072,31 @@ msgstr "" "totalt antal byte när SIGNAL levereras. TillÃ¥ta signaler är: SIGHUP, " "SIGQUIT, SIGINT, SIGUSR1 coh SIGUSR2. Namn utan SIG-prefix accepteras ocksÃ¥." -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "visa filers modifieringstid i UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "visa full upplösning pÃ¥ filtider" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "skicka informativa meddelanden till FIL" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "visa blocknummer inom arkivet för varje meddelande" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "frÃ¥ga efter bekräftelse för varje steg" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "visa standardvärden för \"tar\"" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2092,31 +2104,31 @@ msgstr "" "vid visning eller extrahering, visa varje katalog som inte matchar " "sökkriterium" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "visa fil- eller arkivnamn efter transformering" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STIL" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "sätt citatstil för namn. Se nedan för giltiga vären pÃ¥ STIL." -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "citera även tecken i STRÄNG" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "citera inte tecken i STRÄNG" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Kompatibilitetsflaggor:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2124,62 +2136,62 @@ msgstr "" "vid skapande, samma som --old-archive. Vid extrahering, samma som --no-same-" "owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Andra flaggor:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "begränsa användningen av eventuellt farliga flaggor" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Du kan endast ange en av flaggorna \"-Acdtrux eller \"--test-label\"" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Motstridiga komprimeringsflaggor" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Okänt signalnamn: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Tidsfil hittades inte" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Använder %s istället för okänt datumformat %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Flagga %s: Tolkar tidsangivelse \"%s\" som %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: fillistan redan läst" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: filnamnet som lästes innehÃ¥ller nolltecken" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "filtrera arkivet genom %s" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "Giltiga argument till flaggan --quoting-style är:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2187,51 +2199,51 @@ msgstr "" "\n" "*Denna* tar har standardvärdena:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Ogiltig blockfaktor" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Ogiltig bandlängd" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "Felaktigt värde fär inkrementell nivÃ¥" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Mer än en datumgräns" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Ogiltig version för filer med hÃ¥l" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" -msgstr "--atime-preserve='system' stöds inte pÃ¥ denna plattform" +msgstr "--atime-preserve=\"system\" stöds inte pÃ¥ denna plattform" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "--checkpoint-värdet är inte ett heltal" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "Ogiltig grupp" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Ogiltiga rättigheter givna för flagga" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Ogiltigt nummer" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Ogiltig ägare" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2239,115 +2251,115 @@ msgstr "" "Flaggan --preserve är förÃ¥ldrad, använd --preserve-permissions --preserve-" "order istället" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Ogiltig poststorlek" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Poststorlek mÃ¥ste vara en multipel av %d" -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Ogiltig antal element" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Endast en --to-command flagga tillÃ¥ten" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Ogiltig densitetsangivelse: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Okänd densitet: \"%c\"" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Flaggorna \"-[0-7][lmh]\" stöds inte av *detta* tar-program" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FIL]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Gammal flagga \"%c\" kräver ett argument" -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence är meningslöst utan en fillista" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence kan inte användas i det begärda operationsläget." -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Multipla arkivfiler kräver \"-M\" flaggan" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Kan inte kombinera --listed-incremental med --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" -msgstr "-level är meningslös utan --listed-incremental" +msgstr "--level är meningslös utan --listed-incremental" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Volymnamn är för lÃ¥ngt (maxlängd är %lu byte)" msgstr[1] "%s: Volymnamn är för lÃ¥ngt (maxlängd är %lu byte)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Flervolymsarkiv kan inte verifieras" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Komprimerade arkiv kan inte verifieras" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Kan inte använda komprimerade flervolymsarkiv" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Komprimerade arkiv kan inte slÃ¥s samman" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option kan bara användas pÃ¥ POSIX-arkiv" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Volymlängden kan inte vara mindre än poststorleken" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order är inte kompatibel med --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Vägrar fegt att skapa ett tomt arkiv" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Flaggorna \"-Aru\" är inkompatibla med \"-f -\"" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Du mÃ¥ste ange en av flaggorna \"-Acdtrux\" eller --test-label" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Avslutar med felstatus pÃ¥ grund av tidigare fel" @@ -2359,83 +2371,83 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Filen krympte med %s byte" msgstr[1] "%s: Filen krympte med %s byte" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Nyckelordet %s är okänt eller inte ännu implementerat" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "Tidsstämpel är utanför giltigt intervall" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Mönster %s kan inte användas" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Nyckelord %s kan inte ersättas" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Felaktigt utökat huvud: längd saknas" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Längd pÃ¥ utökat huvud är utanför giltigt intervall" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Längd %.*s pÃ¥ utökat huvud är utanför giltigt intervall" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Felaktigt utökat huvud: blanktecken efter längdangivelse saknas" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Felaktigt utökat huvud: likamedtecken saknas" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Felaktigt utökat huvud: nyrad saknas" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Ignorerar nykelord \"%s\" i utökat huvud" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "Genererat nyckel/värde-par är för lÃ¥ngt (nyckel=%s, längd=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Utökat huvud %s=%s är utanför intervallet %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Felaktigt utökat huvud: ogiltig %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Felaktigt utökat huvud: för mÃ¥nga %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "Felaktigt utökat huvud: ogiltigt %s: oväntad avskiljare %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Felaktigt utökat huvud: ogiltigt %s: udda antal värden" @@ -2476,7 +2488,7 @@ msgstr "Kontrollpunkt för skrivning %u" msgid "Read checkpoint %u" msgstr "Kontrollpunkt för läsning %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2484,69 +2496,69 @@ msgstr "" "genfile bearbetar datafiler i testsviten för GNU paxutils.\n" "FLAGGOR är:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Flaggor för filskapande:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "STORLEK" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Skapa ett arkiv med given STORLEK" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Skriv till NAMN istället för till standard ut" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Läs filnamn frÃ¥n FIL" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T läser namn Ã¥tskilda med nolltecken" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "Fyll filen med givet MÖNSTER. MÖNSTER är \"default\" eller \"zeros\"" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Storlek för ett block för filer med hÃ¥l" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "Generera fil med hÃ¥l. Resten av kommandoraden ger filmappningen." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "POSITION" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Flytta till given position innan data skrivs" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Flaggor för filstatistik:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Skriv innehÃ¥llet i \"struct stat\" för varje given fil. Standardvärde pÃ¥ " "FORMAT är:" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Flaggor för synkron exekvering:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "FLAGGA" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" @@ -2554,19 +2566,19 @@ msgstr "" "Kör ARGUMENT. Användbart med --checkpoint och en av --cut, --append, --" "touch, --unlink" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "Utför angiven Ã¥tgärd (se nedan) när kontrollpunkt NUMMER nÃ¥s" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Sätt datum för nästa --touch" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Visa exekverade kontrollpunkter och slutstatus pÃ¥ KOMMANDO" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2574,7 +2586,7 @@ msgstr "" "Synkront exekverade Ã¥tgärder. Dessa exekveras när kontrollpunktnumret givet " "av flaggan --checkpoint nÃ¥s." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2582,145 +2594,142 @@ msgstr "" "Trunkera FIL till storleken given av föregÃ¥ende flaggan --length (eller 0 om " "den inte är given)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "Lägg till STORLEK byte till FIL. STORLEK är given av föregÃ¥ende flagga --" "length." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Uppdatera access- och modifikationstider för FIL" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Exekvera KOMMANDO" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "Ta bort (unlink) FIL" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Ogiltigt storlek: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Nummer utanför giltigt intervall: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Negativ storlek: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "status (stat) kunde ej tas pÃ¥ %s" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "begärd fillängd %lu, verklig %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "skapad fil har inte hÃ¥l" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Fel vid parsning av tal nära \"%s\"" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Okänt datumformat" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGUMENT...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "kan inte öppna \"%s\"" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "kan inte flytta (seek)" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "filnamnet innehÃ¥ller nolltecken" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "kan inte skapa filer med hÃ¥l till standard ut, använd flaggan --file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "felaktig mask (nära \"%s\")" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Okänt fält \"%s\"" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "kan inte sätta tid pÃ¥ \"%s\"" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "kan inte ta bort \"%s\"" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Kommandot avslutades utan fel\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Kommandot misslyckades med slutstatus %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Kommandot terminerades av signal %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Kommandot stoppades av signal %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Kommandot dumpade minnet\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Kommandot avslutade\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat kräver filnamn" -#~ msgid "Cannot resolve hostname %s" -#~ msgstr "Kan inte slÃ¥ upp värdnamn %s" - -#~ msgid "suppress this warning." -#~ msgstr "att undertrycka denna varning." +#~ msgid "Cannot save working directory" +#~ msgstr "Kan inte spara arbetskatalog" diff --git a/po/tar.pot b/po/tar.pot index 64ca819..7bc6bc0 100644 --- a/po/tar.pot +++ b/po/tar.pot @@ -3,15 +3,17 @@ # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # +#: src/create.c:1550 #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" +"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" @@ -85,7 +87,7 @@ msgstr "" msgid "Report bugs to %s.\n" msgstr "" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "" @@ -97,8 +99,8 @@ msgstr "" msgid "give a short usage message" msgstr "" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "" @@ -136,56 +138,61 @@ msgstr "" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "" @@ -507,181 +514,181 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "" msgstr[1] "" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "" msgstr[1] "" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "" -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -689,71 +696,71 @@ msgid "" " y or newline Continue operation\n" msgstr "" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr "" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr "" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "" @@ -764,20 +771,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "" msgstr[1] "" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "" @@ -793,143 +800,143 @@ msgstr "" msgid "Mod time differs" msgstr "" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "" -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "" -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "" msgstr[1] "" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "" msgstr[1] "" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." msgstr "" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "" @@ -937,74 +944,74 @@ msgstr "" msgid "Deleting non-header from archive" msgstr "" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "" @@ -1114,172 +1121,173 @@ msgstr "" msgid "%s: Cannot remove" msgstr "" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "" #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr "" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr "" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "" -#: src/misc.c:502 +#: src/misc.c:298 +msgid "Cannot get working directory" +msgstr "" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1303,7 +1311,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1314,7 +1322,7 @@ msgid "" " tar -xf archive.tar # Extract all files from archive.tar.\n" msgstr "" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1326,79 +1334,79 @@ msgid "" " never, simple always make simple backups\n" msgstr "" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1406,558 +1414,558 @@ msgid "" "command line or via the -T option; NUMBER defaults to 1" msgstr "" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " "place (METHOD='system')" msgstr "" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -1965,282 +1973,286 @@ msgid "" "accepted" msgstr "" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" msgstr "" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "" -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "" -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "" msgstr[1] "" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2252,83 +2264,83 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "" msgstr[1] "" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "" @@ -2369,233 +2381,233 @@ msgstr "" msgid "Read checkpoint %u" msgstr "" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" msgstr "" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." msgstr "" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "" diff --git a/po/tr.gmo b/po/tr.gmo index 278eeef00f2f5898420aff881793403449b02a08..7a93054441a6f82fb0603d7dabacc3beea1b050b 100644 GIT binary patch delta 9843 zcmYk>2Y6LQ`p5AJBy>_KAp~**At9k8gp!a12`#ihXwq8{Lhniwxd>7P1VR-eC zSgeNkurZd4G2Y@NDaIIGI|qYs1=hh=up^$vC@f#!n9A4~8J|hRcpQMb@iI)sJs5^X zsOye3B#PnFNF||p0(!rq26s&?9F$MRb267WyV1+nihGHAk4Yp$_79gjX zPf#;|j3cpP17jNE6x0CnFcFVn6TIamX+{#pS#>cBN8of+sXjvu@JF11l^WRrEyO2i z??Tjh7Y}AEUV;4M*`hp*u zL`xNe!PpI19WxxYUzVaOwj4FF{a6OSL+zQ{=#Qlt4SG#5i7ph0TDxYbwVvYI>ydk# z%T6EarvW!X%`6kCwi%Bq@dhl5Z=ou26g%J@)Pxe~Y>oplh5MV;BvjX2K#lMrY5>6u zUz;ikStZjCGjJhtiaC$E@nh7CW4Wp>oXI~l;{{j?mtjrZjZEI0MGf$Qe&#@ZbM=ePO)=dL!h-&vot??Yxz+S;BcpCN8e1@vree`OC z!O6yiU;=uuJ?aLdP!*Vq0k{>@aUZH;Kcc=L*3y1I8FhXp`r-tvgj2CJ&OB zOX?p;a)OSk_%Z4NMabZcUy7YkE380!7;5C>Pya{c7Nr%?90JZj|((FiMFqC#%48lRE%`_3SeT>OR_LZs1x~USKP!q{P z4R9`o;|gqxdoUgEqL!+Ww>2*bk}TATgOEqr%t9^6F078nQ5U{~TFYDL!M{-7tDSBi z!&KDTKZSbCmS7lez{+?Kb={Mw%6qSp=mIxTANaJfk7HHTjOt?qW}r%)gBnOK>VkVv z6L<$z;X|I`N6O)U2&fi5gwz-9Ru|%}9?}d&?)yzWV zwQkN}bNm5SvB>uJ`Od=PwZ-Z5@5CAy%DQRBiKtE44#V~Q_aM<1CZaEHLd_%(HS(RP zwZDX#`FE&2@ep;vAU2LFR0s9Fwpb54V-!wCRb(C3#XXpS7qJ2NH;+kpxtX|*cFhK3 zFzxYJ7U!V{7o$qL8#T}mP&2!L=~#rCNOUK=nR}wHvk7bBUex)2Lk-|t^lGHRo$cBt zV+`$4s7<#Lb%EDWd*fZyjX%ONc-ghTaP8~pNB<4f4ey{TRi=x*egvw5ndre0U8uj- zVj&$W;cC>4-^Mun5VZvNF&ZPf+Q%vbr_%0=s>p|^f!)MGK0IEiiFN8`XFLftkfo?4 zdlfaIL*1zVK#~vW(58#*Zg+Ek%%nXMRkDMq0bW2==m*pcL$d6J;!!hehpN~Bq`GDT zYC=a)d*C9f^xvT>7~<{0EJ(soCrrh7T#RM$DC$NhP_N{#P&2-Vnn7Ss`^JmH^0a$9 zhoF{Xv~wa-7&9F^;4>JD-U1TMs0j5QsNBnzE)I309ylB)qn`gus2l%y;$up;G^9;}1SaUAx?`g;D)l8mC`E;hhk{p=U!p+=sIT9Ol(hCiWh z)S$nuK!5bmo`)*!Hq_@uSRaE2*zczzUp3>gBc8?L=f5I5P%nlg)C~qgo`L9db{Bs{9-OVo(#4zYhU zGEt=*jp~2axf3;@i>Mp@h!rt-s2x~sR3+0e49B3BV4-VoLRB_@DD~HczNSNK{uqNW zV3;joBB{8T7f&M$pxqI5UO)81C0GVmVk=yS(Rc-e@egc_l}6hNrlNNL zNQ}ZI7>V9}BpS)zu^#%2u_we}1no@JCYpeun1?F)QRF3PK1CjJ6E)VZ^(@rPbMZY& zd=hn|=f>OTe;cZ@Z(@v||1U`V=`a)QOapK)%?J#~3#ggj!sZw{(f&5FQUHi0JY15rt$9r zn1Pz%TGR!;ME0jCKi%$?iKy=_!RK%%Ho!Vh+w;1k26_l%@fLa;kpw?uOPP*Z^M2R@ zXQE2^7HV%?L9P8mOvUOm>`$`ZsOzjnz2Q!wN*p@VK9+5;8tt*D%Fai&hIxG^_1B5J z>Cgo(VHtdk)zNR3-4nH(jWCq{R@esnqQ1Wgo8W2G!0uxb#?Q7D7>$i-=VEI-gIdZ` zbEtn=lBhZMf(@}7?Mc`S3sGx%4->HYv-ZuEgBsu(Y=L`FYyXXFm!4}kTMFv&%*AxP zj2cKV>!YP?<0bJWS&AzCN>s`BV=KIj`aEEseeSDZIoe_P1lC2(bOdToyo@dJJZgr% zOi%-hMpd{oX5vh2h~9G~n(00CVDx>5IDFi>Ted7DMp_HpS0TGq3o9D#fgmNmRmV=!b8jO8hp~!DFZ|Uc=fLxXAt@ zibvgGHP*yJ)cIeacKajjiNTAFS>(g37j^!fCAPxVmU15VH_b>YVpr4*`(bCCj4ItR ztcSm$E*!qh&b%o;L3<#oBAZc5cG$HqyY^j-rN8`gyM#@#Iqg2^)nl`qBmfJs27ct) z-=i-48){91UbGjehbnyrsIu}*yU05IAcc1^{3|MJPnSk2$gHgMC1?q7;?!1Q@Sp8M@ysj8S`&snhj#bpZ zF3CAMCg3ep37>q)K918+m063b%xkET~YqW2L=Kax(lb}hGK1KP(>BQHYD*ms>>iZoQIN1+Ck>)OXr=ikB{EW6&` zcoM2o(@-;>?b=>sz+SVMM4N0CYUF!RH@JYc@DFT))i>Cgc1F!?DC+Zhn2cLdd*xH~ z;A7P0jM&HzPfSMj7orAq9hdvC{x?YUcun4HOTQlV#RC|OA7T~!2lm8YP_O2;FWUjk z$1K{fpa%96Hbeg{c1hczhxQ!Qb+=#`9>yx%-+WBc4{u;iOxtP)(jQyWo`#ihA5O$$ zSQTUP?7v8~LOoWC(1UAG1382tcm;L-_t*;m#6V1Wh5A<@=}Mx_)7Lo^eQ4)kZybYK zl0s~acTg3J+h%Xr!#Nda(7zUSqw?GB=N(b!k3lWvDon>y+gbl7NPJ#3h9}6Rqh27F zuslA(8tC_$Em;Jn(N4kcI1{x*A7B7}iM8-HYEP8iVNFL}XEv%*xu^kd+u^mZ)a!KA zrQ-o=Z9;e27g1B>t!sv03;Z5uW3AWi`5RGtqX4z$m#{PX?Xv$an1va%*JBD^Lv7OP zyX^qdy(9^A%tO5x4xmc(HKt?W8+N8Wu_5j4SPw5^8@!LYaPvL(I#W>Je-$;bs~Cm1 zP?fFxrrm4FSckTEHA!=leAEnXV>hh5*S^svU>xmj*Z|Mt5c~~Q!an=#D|Ic_rhOds zLi^HLe!m@fON^yI2R*nNInQejl4vI1qDEBrExRNc7(;sqM&lxkzyX`i z|H`-Lc@Epk^mNX3?nZ6CE2!ta;t@NcDAdxWVr9%m{r@L3nM5<#j6LwGJ0a?*{qdQI zn%NB0dHXREZ(h;2QPh$?LT@-p^t<-W)(*9q)?-t= zgu0RMF`FTewPagR=UvAn3_5P#7oAZ9$wRGqK6cW1*b}1*>;PsJP=7rhJLsUo z#YZET9KrfT8P}e{r@dXS6Tcz;L);>U5f2F+xx`n*HsUDf>wTc(FX9C4r*R1}pV+7O zf64KVyExmyeC#?e<5WUr;2 z{zjCdKUEzZ?-3(tZ^D5@Gh!=IavUL9 z&F4=O`ftNGXn){7?4$K>OlN6g81WKOa%7Y902Ke_^C2%o{-*nUlJg__^j6f7MW0?Y z)iIao?#|K6t2MEK&{2W@E4YA|tNA}e$6Lf9Vj}IegpM%UIyT{Io0@;2URKNL+l{M; z`Q*RjXhKIU?S+JnRONWswS%1toZeD=sFz3~(TdK^_zR(<9_?<#pXB9H&+cP=z_F2t zB2E)=d=^7&CkD~hYgWf+#IwX$`j4xFV+-*Dv6H^xTK_3DX4BAdiTFQ4FN?`UXV?EV zd2{kC48Vh^qYd#7;#qgzeezvI2iLwsevC*a^vCH(Vl$t8h&sw?{m0O8m&OdtAQq9| zCc=q!#A*6=6D7yH*@rQ>;QMpPkx4J#6T$-UT<(6NW8PFy8U5JQOot-p?A z?xe+-LNq0!h zdB8QwlJ_Gb2_4&s2$$;*#^*#fv4g&F*H5$fms2I$Es0gG-xu|_LdWw&P1pY_`OoU) z=%V$%ZgW$BTRAC@Xzcp>ImPSl0&imm?dAXT*=yv#5morC9q}Uh3U~fsXUXYHNnR(G z757vBMEA*PI^H0jqdn90i7=N3;ZyEnt;nAvzlfi@&)d7tD&tf14aJi<6^9e=yYt#Q zH_})9{>#BN#4I{uFo6gnpM^TESLMH~iDg6)(U!gt)bW$WETu1$ zyp}uv0Or&7?&BY0iEoLnbe=;UKUhpv`Z9?xXph9huD>sN6XNf#eb%{!zK(>B>BOVr zjDgcPkw|y#^Hy*1501TjFpZ7}#15i{{jm7wQb(7IZJc+87(y%|bc`WR5$lP`uCE-q zKhcZOQG@>e?laqCf0#^A{qL3Z;2SRA#mRo;i;3PuRiYd50{zj%Z1QRf@|TG{#3JHD|xq7TI@hf?(JBiQDe>uVn^Xo*<4$LiR zaUy?X(%`uK&=LE~`8P>ul-SIZ*fb>}xj{nH+^geuSIW$uH2RtB(W6p4PfyFAJ$^|@ UZe8!q{08%Sl&#=eJGf_P*TAwn#%i#;LMsJ#dYiI5Pngz{)9TB_ApYj16B?LoDQ z+DfS|w5kibt6EyhZS~%^_x*Wh+|&O#|KB;^yk_RN&3tF(muS!ZUg*0&3VE*t_%HP{ z#+>9w0~}Dsm|=yCnN{5wwf`sF>K|cDF+xXUtcp#r2=+t|_QRSu1xw*_=SG}IeK%IZ z=CzHfkG*Oeudm>xf%ljlSROyd5c~nVVDU&}!mu}%#>q(k%p8ot4X77?ge~z724Qp^ z`@96KOnndrVh)zW`E|U;1XEZ^1D!Jmup(Z?7I+WUk(elBnqnUuich0n@FP~iN9r2G zrKUP+dhr1Rg}CDmdD9unA74-WS!Ov)Bf2 zqh1_MKGohI8{st62zQ_ccm(yrE2#IBBW<3qB@+18rc$L7EA#u#aFN>{tK0fzpxX=Qqh2>ViSA`Td@AjB?@HQRG_=+VLYk> zgHVggi%geUhn?{(a*GMzDSB~d)QBgb9=wDf8u1ydfgfQt{257xDak@o2U|(rZ#ue$ zB-EVtMZGv5bwdGaaejw-aY^P$4{VE-a4_mcIjAXm9@XJJu6_kI=cbwMXc$(c+6BGZ zMnfnlm3gQKt-uPnA3b;m^`aZ7jumQdOj!)Uc#K75a3bpd^{D#~qpm-X{&*Kl;cxf| z`YZpM%VI6;i$bv+^^O>bkD?xsi44LlK#lM?mcZ{(9sdQ@p|UI>b)+V0YLZZkd5UY_ zjOxe*)D&H6>9sGoN`r3r8#U6XR(7u2q1M8D48rYL1y5sn{2H~me#I1)fAiLMf3IR5 zm5KLJ1G$OnV4=45!xez-smFLJ#8b#YjjRAm;wM-gzecvW`3sfOdhvFZ$DhVlZVzK^yn&UmLRb5Mx~MhN2KC}TSOojK`cPLNiG^t&gVk_6DpLzl&)?LQ z{40g$Y4G5WsHrI4&8Dyt>cvel3VUE(%)UzrYCtV}*)@>trJ&TOqf)pM`{8=jBKZwtuvBmNO9S*K3f96xh@i<*jC&R>zl81DlLohbYp>tMS+c0`$|-H?w;-7eINF5+;!kM*!$vVHMv z)OE{I9XN#AhBuu-eeDz_pr-OoETR4XJq11Z7t{;OK5F-IJ>*khMqoMIgqn)|s1zPU zJ|O0E)QkS(+M`HcY3l7!9qfe_a0XVy#m>zbqWyo6!Wd3m!AMN(&sPd_ur6Lg-RM8S z_Pi=;N;+aI%tgIuH!1^H(1ZR1ZDzw!=QB~yUxB*+DE8O>ze9noZ4y~|df{RW#Y3nU ze2tAUc(5IDGS;L%$+;BuY2Jq(ynxEwJyeF`hS(3!Kx{yLCN{^N=vC^jQ_u@5KW1%- zYjerfLP&z>TPZ9Ya0mHY%gVhmn6Z1P`;R zZH{_SDr(N>V0m1MO5qk%hdy@xi5;m&47VA|#9->{QQPte?!;@T#l1YmcH}6kqqkDL zcAo}};ExF!BC(<$ABK^3E<;o8pG=9U4va-*Y$fV}r%)rigO#ub3r87hjH)M~GBFIR zVJ7POdDsjKycCp*o7e*VM%h0gTA>z6HYx+_FamdDRlI~{@hRI>n_+8g zixD^j18^g1d%lj!r1u93Ar#7{+mytj7EOPQ#XJnhZSMSetV#Vh)MBcfVLzn_sMMz* zA4xL{+4|-K)D(xZ#WeCZxQh&rLEhsv)yCStj{UVGQ1x(#aE{= z|CJ~dooZ7XjI0gQ0d-*~)C01x2(HG;_%fEogU+*9h58rR4)3AvZ<=TSk{X8U*kX*s zbEpgyo<{!bQ)oDit%Ac*bGaUi;xW_%&tP{fHQlCu5Na-;!v=T(qtO3x+rb!YO1%qe z?q|CC1{^^B5^8%k^fDpw6tYnr*@c?RtLTprGi~bYVkq@)*c!7@=eJ{F+=IpN0Jg!S zs2A%OoJJgqT3ds$IW9mA)O(VGF1&^wEHTTbye=kDABgpEGd9Kx=)q!7*zHvZt5ffS z%0w#a{8H4S-j7%Vx=U_GJYf;y~iIsT2xlExq-ovN-nE!e9 zhWF;%6#tIeC6%7Gzf7W0BW#X|*c+9(RTz$!P}l#35g7Q4T@$TP8JUinvSsL1LxF2} zAL~%RfgTK8V807Zu_5)bsBO0vtKtqk{WdojU{_B;t$}pZA{&qD`2y5jZpRw< z1vbP7SP|yCe9FpE2*CwpZ^L zZR)3B73zyI0AEGD_z?ES^QcdC*ectB5!jRZEL6rn#Kyee{6e8AhOf3S9)f!C3=G0$ zs0Z)H{`d}7!{9ZxBP~!LsJ>VV7vVTug@IUnt^M~!O)N=$G3Jc6Nk5%r=!P#>beO?-r~Eov%HV;=sEx;}5S zox(NPnED<}#A{v(ohUTiVt?;X!4}jHqgLqyR0l$~+F!53QQw8ds0_W0@pu?n1)Gs4%LyM-FC!X z@Feva7>OPB*c6UMWnv9#JD$g{@HR&I@h_hOy9oc-Yp;*nXET)U%$L019HyYfcOA9w zL-yN|wM5NfA1sYiu@25fjbs=0!k^svmap4CN)xdu?a!jFJAt+EFVviS4%m7h^aj$9 zOCb)QL4Q1kh4B=2#B->*4S2);ZfK3YsSiRes%_W^uc2O4?M<7h*4T~uDAd&LL0xwb z^}fi1x!mhHfE*qQp9NQQm?4`4nHq_P}!d}I0FPj;y9 zSm4a&+76WeL!|mC{~SYToQ|W2NtCN2gYg}~)bogG#6e=QYZs@9c-ofzqfK+KtmP3} zFWud_oA?KzHPf7Hn&1jA1=j~tld_Jv#2iA~MqB9&p+kQgzChHZ{Ijox&nWeYuAGJQ z-7_{j{hU*s?ov~o`dBL7(G;{OJ|z}XZjX0~7b#aG-l3dG=vYZGb-v?Cey$?YY}NNu zQ?-QX$9-M#C887YF42}Y9ofWfqN%NW&1x#oQkg{@AvFIl68gW=w@^o>#l+C2Bj3ro zG*u`^U=8f!+Vwqn&Xp?b=2;uPgU_Va*T3>%<~XyhMCUc?7n17d}e8G38fX zeFgPC#AxE-QI>Psrf=fbhm9CSeHhLnqTT%z%`3#&hjV{NE$-OMMQ>C7i`edNc-)zS zsqVV%_&3pzwn?~+s6Z^IUcp^I!8x9G9p$Lcc5S`U`yP#auzbIdi_p-Ks7yRUY@od- zCJ{v_uOq^U?};_UzloE?!(%1a<-5w`&X2G!q5rBjk@(WJcc5I!kNnT1FqFvU#0g@m zyP%{~943|$t+}p;8aTR8u1)ADL>!}B($$~wwes%@>U&(9KNb*W-MJQ+qWO=YaSCyd zhF^(v;s~*jxI&!Z+&OGX>?0ZxJ864`c$u<}Sjx=^9SKAL<4_&!FE+P(b%?9FQ%CYX;8tSDe_ayXx zLyF-l)ZzWyYTD4y$Tj-Dt+anYoF~GGM9#(IpTuj#!=pTfuI|1TID>k)tG`dVJLT71 zUH2prMXArjWt#se3T0@>BHkiA)N=?O`Yl$O=uccF{&@_gGLr}(GP$oPK1=B6Pd%Ba zL#(w;zMo(4a~*AOxwaoQ|2hg2#W)Qx79rQU0CK zQHpvu3?`0KZh)`hcw#+e57sBPc=_=h4P)>iRwU+8)=?L`*rKUQc@yR0t{y@?lz5t` zO54+}y`8S1tuXO5myM-Q&|wxJM7p)WCq9yV0 zm`!05^>kt!F^o7$JoWGb)JMhd5Gy}|)lC$qT*sZ~Qu8-QBighRbhx&H8{z5YDyOGp zjZX7S$, 2001,..., 2007. +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.18\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2007-07-09 11:30+0300\n" "Last-Translator: Nilgün Belma Bugüner \n" "Language-Team: Turkish \n" +"Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -88,7 +90,7 @@ msgstr "" "Yazılım hatalarını <%s> adresine,\n" "çeviri hatalarını adresine bildiriniz.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Bilinmeyen sistem hatası" @@ -100,8 +102,8 @@ msgstr "bu yardım iletisi gösterilir" msgid "give a short usage message" msgstr "kısa bir kullanım iletisi gösterilir" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "Ä°SÄ°M" @@ -139,56 +141,61 @@ msgstr "(YAZILIM HATASI) Seçenek tanınmak zorunda!?" msgid "write error" msgstr "" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: `%s' seçeneği belirsiz\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: `--%s' seçeneği argümansız kullanılır\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: seçenek `%c%s' argümansız kullanılır\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s: `%s' seçeneği bir argümanla kullanılır\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: `--%s' seçeneği bilinmiyor\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: `%c%s' seçeneği bilinmiyor\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: geçersiz seçenek -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: seçenek bir argümanla kullanılır -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: `-W %s' seçeneği belirsiz\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: `-W %s' seçeneği argümansız kullanılır\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: `%s' seçeneği bir argümanla kullanılır\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "bellek tükendi" @@ -517,188 +524,188 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "Uzak kabuk çalıştırılamıyor" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Arama yönü kapsamdışı" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "Seçenekte verilen kip geçersiz" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "Geçersiz boyut: %s" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Arama başlangıcı kapsamdışı" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "Kayıt ortamının uzunluğu geçersiz" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "Arama başlangıcı kapsamdışı" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd: Dosya sonu belirsiz\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "Ana işlem kipi:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "Arşivde beklenmeyen dosya sonu" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "SAYI" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "DOSYA" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "`%s' açılamıyor" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "argüman sayısı çok fazla" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Bozuk komut" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Bu bir tar arşivi gibi görünmüyor" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Yazılan toplam bayt" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Okunan toplam bayt" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Silinen toplam bayt: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(boru)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "record_size için geçersiz değer" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Arşiv ismi verilmemiş" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "stdG/stdÇ arşivi doğrulanamaz" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Aeşiv sıkıştırılmış. %s seçeneğini kullanın" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Sıkıştırılmış arşivler güncellenemez" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Bandın başlangıcında, şimdilik çıkıyor" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Çok hata var, çıkıyor" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Kayıt uzunluğu = %lu blok" msgstr[1] "Kayıt uzunluğu = %lu blok" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Arşivde hizalanmamış blok (%lu bayt)" msgstr[1] "Arşivde hizalanmamış blok (%lu bayt)" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "Arşiv dosyası geri alınamaz; -i olmaksızın okunamayabilir" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek bir kaydın sınırında durmadı" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: geçersiz bölüm numarası içeriyor" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Bölüm numarası kapsamdışı" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "#%d. bölümü %s için hazırlamak istiyorsanız return tuşuna basınız: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Kullanıcı cevabı beklenirken dosya sonuna gelindi" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "UYARI: Arşiv eksik" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -709,72 +716,72 @@ msgstr "" " q Uygulama sonlandırılır\n" " y veya İşlem sürdürülür\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! bir alt kabuk açılır\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Bu listeyi basar\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Yeni bölüm yok; çıkıyor.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Dosya ismi belirtilmemiş. Tekrar deneyin.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Girdi geçersiz, Yardım için ? yazın.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "%s komutu başarısız" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s belki de bu bölümde devam ediyor: başlıktaki isim kırpılmış" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s bu bölümde devam etmiyor" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s yanlış uzunluk (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, fuzzy, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Bu bölüm sıralama dışı" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Arşiv etiketi %s ile eşleşmiyor" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "%s bölümü %s ile eşleşmiyor" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "" "%s: dosya ismi GNU çoklu bölüm başlığında saklanamayacak kadar uzun, kırpıldı" -#: src/buffer.c:1749 +#: src/buffer.c:1794 #, fuzzy msgid "write did not end on a block boundary" msgstr "rmtlseek bir kaydın sınırında durmadı" @@ -786,20 +793,20 @@ msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Sadece %2$lu baytın %1$lu baytı okunabildi" msgstr[1] "Sadece %2$lu baytın %1$lu baytı okunabildi" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "İçerikler farklı" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Arşivde beklenmeyen dosya sonu" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Dosya türleri farklı" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Kipleri farklı" @@ -815,144 +822,144 @@ msgstr "Grup-kimlikler farklı" msgid "Mod time differs" msgstr "Değişiklik zamanları farklı" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Uzunlukları farklı" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "%s'e bağlı değil" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Sembolik bağlar farklı" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Aygıt numaraları farklı" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Doğrulama " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: '%c' dosya türü bilinmiyor, normal dosya olarak karşılaştırıldı" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Arşivdeki dosya isimleri dosya yolu içermiyor." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Doğrulama, özgün dosyaların konumlanmasında başarısız olabilir." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "DOĞRULAMA BAŞARISIZ: %d geçersiz başlık saptandı" msgstr[1] "DOĞRULAMA BAŞARISIZ: %d geçersiz başlık saptandı" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "%s de tek başına sıfır bloğu" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: %s arabellekleme dizini yaftasını içeriyor; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "" "%1$s değeri, %3$s..%4$s aralığının %2$s dışında; yerine %5$s kullanılıyor" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "%1$s değeri, %3$s..%4$s aralığının %2$s dışında" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Negatif sekizlik başlık üretiliyor" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: dosya ismi çok uzun (en çok %d olabilir); dökümlenmedi" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: dosya ismi çok uzun (parçalanamıyor); dökümlenmedi" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: bağ ismi çok uzun; dökümlenmedi" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Dosya %s baytta kaldı; sıfırlarla dolduruluyor" msgstr[1] "%s: Dosya %s baytta kaldı; sıfırlarla dolduruluyor" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: dosya farklı bir dosya sisteminde; dökümlenmedi" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "içerik dökümlenmedi" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Bilinmeyen dosya türü; dosya yoksayıldı" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "%s için bağlar kayıp.\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: dosya değişmedi; dökümlenmedi" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: dosya arşivdir; dökümlenmedi" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "dizin dökümlenmedi" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: dosya okundu olarak imlendi" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: soket yoksayıldı" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: kapı yoksayıldı" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Sonraki başlığa atlanıyor" @@ -960,74 +967,74 @@ msgstr "Sonraki başlığa atlanıyor" msgid "Deleting non-header from archive" msgstr "Arşivden başlık-olmayan siliniyor" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: makul olmayan eski tarih damgası %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: zaman damgası %s %s s gelecekte" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Dizin oluşturulurken anlaşılamayan uyumsuzluk" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: durumu çıkarılamadan dizin ismi değiştirildi" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Bitişik dosyaları normal dosyalar olarak çıkarıyor" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Sembolik bağlar, sabit bağlar olarak çıkarılmaya çalışılıyor" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Dosya çıkarılamaz -- dosyanın başı diğer bölümde" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Umulmadık uzun isim başlığı" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Bilinmeyen dosya türü '%c', normal dosya olarak çıkartılıyor" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Mevcut %s daha yeni ya da yaşıt" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Bu dosyayı yedeklemek mümkün olmadı" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "%s ismi %s olarak değiştirilemez" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Dizinin eski adı %s idi" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Dizin adı değiştirilmişti" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Dizin yeni" @@ -1137,35 +1144,35 @@ msgstr "%s: %s siliniyor\n" msgid "%s: Cannot remove" msgstr "%s: Kaldırılamaz" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Geçiliyor" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "blok %s: ** NUL bloku **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "blok %s: ** Dosya Sonu **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "blok %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Sayısal %s değeri beklenirken başlıkta boşluklar bulundu" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1173,140 +1180,142 @@ msgstr "" "ediliyor" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Arşiv sekizlik değeri %.*s aralığın %s dışında" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Arşiv atıl base-64 başlıklar içeriyor" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Arşiv imzalı base-64 dizge %s, %s aralığının dışında" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Arşiv base-256 değeri %s aralığının dışında" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Arşiv %.*s içeriyor, halbuki orada sayısal %s değeri bekleniyor" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Arşiv değeri %s %s türünün %s..%s aralığının dışında" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " bağı -> %s \n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " bilinmeyen dosya türü %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Uzun Bağ--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Uzun Ä°sim--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Bölüm Başlığı--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Devamı bayt %s de--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Oluşturulan dizin:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Çalışma dizini değiştirilemez" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "%s %s olarak değiştiriliyor\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Ä°smi %s olarak değiştirilemez" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Gerisin geriye %s %s olarak değiştiriliyor\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Çalışılan dizin kaydedilemez" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Çalışma dizini değiştirilemez" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Dosya okunamadan kaldırıldı" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Dosya okunamadan kaldırıldı" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "alt süreç" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "süreçlerarası kanal" -#: src/names.c:601 +#: src/names.c:594 #, fuzzy msgid "Pattern matching characters used in file names" msgstr "Kalıp eşleme karakterleri dosya isimlerinde kullanılmış. Lütfen," -#: src/names.c:603 +#: src/names.c:596 #, fuzzy msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "ya kalıp eşlemeyi etkin kılmak için --wildcards kullanın," -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Arşivde yok" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Arşivde bulunması gerekirken yok" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "Arşiv etiketi %s ile eşleşmiyor" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "" @@ -1332,7 +1341,7 @@ msgstr "" "Sarmalama şekli `%s' bilinmiyor. Listeyi almak için `%s --quoting-" "style=help' yazın." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1351,7 +1360,7 @@ msgstr "" " tar -tvf arşiv.tar # arşiv.tar içindeki dosyalar listelenir\n" " tar -xf arşiv.tar # arşiv.tar'dan tüm dosyalar çıkarılır\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1372,79 +1381,79 @@ msgstr "" " nil, existing numaralıysa numaralı, değilse basit yedekleme yapılır\n" " never, simple daima basit yedekleme yapılır\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Ana işlem kipi:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "bir arşiv içeriğini listeler" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "bir arşivdeki dosyaları çıkarır" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "yeni bir arşiv oluşturur" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "arşiv ile dosya sistemi arasındaki farklar bulunur" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "dosyaları arşivin sonuna ekler" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "sadece arşivdeki kopyasından daha yeni dosyalar eklenir" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "bir arşive tar dosyaları ekler" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "arşivden siler (teyplerde değil!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "arşiv bölüm etiketini sınar ve çıkar" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "İşlem değiştiriciler:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "seyrek dosyalar verimli şekilde elde edilir" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "ANA[.ALT]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "kullanılacak seyrek biçim sürümü ayarlanır (--sparse uygular)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "GNU eski tarz arttırımlı yedekleme tanınır" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "GNU yeni tarz arttırımlı yedekleme tanınır" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "dosyalar okunamadığında sıfırdan farklı bir değerle çıkılmaz" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1456,121 +1465,121 @@ msgstr "" "ve dosyaların listelenmesi sırasında ya komut satırından ya da -T seçeneği " "üzerinden belirtilir. SAYI öntanımlı olaral 1'dir." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "arşiv arama yapılabilen türde" -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "arşiv arama yapılabilen türde" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Üsteyazma denetimi:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "yazdıktan sonra arşivi doğrulamaya çalışır" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "arşive eklendikten sonra dosyalar silinir" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "çıkarılırken mevcut dosyalar değiştirilmez" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "arşivdeki kopyalaraından daha yeni dosyalar değiştirilmez" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "çıkarılırken mevcut dosyaların üzerine yazılır" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "çıkarılmadan önce mevcut dosya silinir" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "dizin çıkarılmadan önce alt dizinleri silinir" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "mevcut dizinlerin öznitelikleri korunur" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "çıkarılırken mevcut dizinlerin metaverisinin üzerine yazılır (öntanımlı)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Çıktı akımını seçiniz:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "dosyalar standart çıktıya çıkarılır" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "KOMUT" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "çıkarılan dosyaları başka bir uygulamaya borular" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "altsüreçlerin çıkış kodları yoksayılır" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "altsüreçlerin çıkış kodları sıfırdan farklıysa hata olarak ele alınır" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Dosya özniteliklerinin elde edilmesi:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "Ä°SÄ°M eklenen dosyaların sahibi yapılır" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "Ä°SÄ°M eklenen dosyaların grubu yapılır" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DOSYA-TARÄ°HÄ°" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "DOSYA-TARÄ°HÄ°nde eklenen dosyalar için mtime ayarlanır" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "KÄ°P" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "KÄ°P eklenen dosyaların (sembolik) kipi yapılır" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "YÖNTEM" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1580,32 +1589,32 @@ msgstr "" "değerine getirerek (YÖNTEM='replace' öntanımlıdır) ya da ilk yerindeki " "zamanı değiştirmeyerek (YÖNTEM='system')." -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "dosya değişiklik zamanı çıkarılmaz" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "sahibi aynı olan dosyalar çıkarılmaya çalışılır" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "dosyalar sizin sahipliğinizde çıkarılır" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "kullanıcı/grup isimleri yerine daima numaraları kullanılır" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "dosya izinleri ile ilgili bilgileri çıkarır (root kullanıcısı için öntanımlı)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1613,15 +1622,15 @@ msgstr "" "arşivden çıkarılırken izinlere kullanıcıların umask'ı uygulanır (sıradan " "kullanıcılar için öntanımlı)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "isimler arşivdeki sırasına göre çıkarılır" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "-p ve -s birlikte verilmiş gibi olur" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1629,139 +1638,139 @@ msgstr "" "herşey çıkarılana kadar çıkarılan dizinlerin izinleri ve değişiklik " "zamanlarının değiştirilmesi geciktirilir" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "--delay-directory-restore seçeneğinin etkisi iptal edilir." -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Aygıt seçimi ve aygıt değiştirme:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARŞİV" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "arşiv dosyası ya da ARŞİV aygıtı kullanılır" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "bir iki nokta üstüste içerse bile arşiv dosyası yereldir" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "rmt yerine rmt KOMUT kullanılır" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "rsh yerine uzak uçta KOMUT kullanılır" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "sürücü ve yoğunluk belirtilir" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "çok bölümlü arşivi oluşturur/listeler/çıkarır" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "SAYI x 1024 bayt yazıldıktan sonra band değiştirilir" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "her bandın sonunda betiği çalıştırır (-M uygular)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "DOSYAda bölüm numarası kullanılır/güncellenir" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Aygıtın blok düzeni:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOK" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "kayıt başına BLOK x 512 bayt" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "512'nin katları olarak kayıt başına BOYUT bayt" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "arşivdeki sıfırlı bloklar yoksayılır (dosyasonu anlamında)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "okunmuş olarak yeniden bloklanır (4.2 BSD boruları için)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Arşiv biçimi seçimi:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "BİÇİM" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "belirtilen biçimin arşivi oluşturulur." -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "BİÇİM şunlardan biri olabilir:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "eski V7 tar biçimi" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "tar <= 1.12 için GNU biçimi" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU tar 1.13.x biçimi" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) biçimi" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) biçimi" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "pax ile aynı" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr " --format=v7 ile aynı" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "--format=posix ile aynı" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "isim[[:]=değer][,isim[[:]=değer]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "pax anahtar sözcüklerini denetler" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "METÄ°N" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1769,171 +1778,171 @@ msgstr "" "arşivi METÄ°N bölüm ismiyle oluşturur; listeleme/çıkarma sırasında METÄ°N, " "bölüm ismini genelleme kalıbı olarak kullanılır" -#: src/tar.c:613 +#: src/tar.c:614 #, fuzzy msgid "Compression options:" msgstr "Sıkıştırma seçenekleri çelişiyor" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "UYG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "arşivi UYG üzerinden geçirir (UYG -d kabul etmeli)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Yerel dosya seçimi:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "belirtilen DOSYA arşive eklenir (isim bir tire ile başlıyorsa kullanışlıdır)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "DÄ°ZÄ°N" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "DÄ°ZÄ°N dizinine geçilir" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "çıkarılacak ya da oluşturulacak isimler DOSYAdan alınır" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T boş karakter sonlandırmalı isimleri okur, -C iptal edilir" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "-T ile okunan dosyaisimlerine tırnak ayıklama uygulanır" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "-T ile okunan dosyaisimlerine tırnak ayıklama uygulanmaz" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "ŞABLON" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "belirtilen ŞABLONa uyan dosyalar hariç tutulur" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "DOSYAdaki şablonlara uyan isimler hariç tutulur" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "yafta dosyası hariç, CACHEDIR.TAG içeren dizinler dışlanır" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "CACHEDIR.TAG içeren dizinlerin altındaki herşey hariç tutulur" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "CACHEDIR.TAG içeren dizinler hariç tutulur" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" "DOSYA'nın kendisi hariç, DOSYA içeren dizinlerin içerikleri hariç tutulur" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "DOSYA içeren dizinlerin altındaki herşey hariç tutulur" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "DOSYA içeren dizinler hariç tutulur" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "dizinlerde özdevinimli olarak azalan sıralamadan kaçınılır" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "arşiv oluşturulurken yerel dosya sisteminde kalınır" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "dizinlerin alt dizinlerine inilir (öntanımlı)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "dosya isimlerinin başındaki `/'lar ayrılmaz" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "" "sembolik bağlar izlenir; hedeflerindeki dosyalar arşivlenir ve dökümlenir" -#: src/tar.c:686 +#: src/tar.c:687 #, fuzzy msgid "follow hard links; archive and dump the files they refer to" msgstr "" "sembolik bağlar izlenir; hedeflerindeki dosyalar arşivlenir ve dökümlenir" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "ÜYE-Ä°SMÄ°" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "arşivin ÜYE-Ä°SMÄ° üyesinden başlanır" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "sadece DOSYA-TARÄ°HÄ°nden daha yeni dosyalar saklanır" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "TARÄ°H" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "sadece veri değişecekse tarih ve saat karşılaştırılır" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "DENETÄ°M" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "kaldırılmadan önce DENETÄ°M sürümü seçilerek yedeklenir" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "DÄ°ZGE" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1941,98 +1950,98 @@ msgstr "" "kaldırmadan önce uygun sonekle yedekleme yapılır (SIMPLE_BACKUP_SUFFIX ortam " "değişkeni ile belirlenmemişse sonek olarak '~' kullanılır" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Dosya ismi dönüşümleri:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "çıkarılırken dosya isimlerinden baştaki SAYI bileşen ayrılır" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "Ä°FADE" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "dosya isimleri dönüştürülürken sed değiştirme Ä°FADEsi kullanılır" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Dosya ismi eşleştirme seçenekleri\n" "(içerme ve dışlama kalıplarının her ikisi de etkili):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "harf büyüklükleri önemsenmez" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "dosya isminin başlangıcına uyan kalıplar" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "bir /'dan sonra şablonla eşleşen kalıplar (dışlama için öntanımlı)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "harf büyüklüklerine duyarlı eşleşme (öntanımlı)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "genelleme kalıpları kullanılır (dışlama için öntanımlı)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "birebir dizge eşleme" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "'/' ile eşleşmeyen genelleme kalıpları" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "'/' ile eşleşen genelleme kalıpları (dışlama için öntanımlı)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Bilgilendirme çıktısı:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "işlenen dosyalar ayrıntılı listelenir" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 #, fuzzy msgid "warning control" msgstr "Üsteyazma denetimi:" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "her SAYIncı kayıtta gelişim iletisi gösterilir (öntanımlı: 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "tüm bağlar dökümlenmezse bir ileti basılır" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SiNYAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2043,121 +2052,126 @@ msgstr "" "alındığında bayt toplamını basar; Ä°zin verilen sinyaller: SIGHUP, SIGQUIT, " "SIGINT, SIGUSR1 ve SIGUSR2; SIG ile başlamayanları da kabul edilir" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "dosya değişiklik zamanları UTC'ye göre basılır" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "ayrıntılı çıktı DOSYAya gönderilir" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "her iletide arşiv içindeki blok sayısı gösterilir" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "her eylemden önce doğrulama istenir" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "tar öntanımlıları gösterilir" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "" "listeleme ya da çıkarma sırasında arama koşuluna uymayan dizinler listelenir" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "dönüşümden sonra dosya ve arşiv isimlerini gösterir" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "ŞEKÄ°L" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "sarmalama şeklinin ismi; geçerli ŞEKÄ°L değerleri için aşağıya bakınız" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "DÄ°ZGEdeki sarmalama karakterlerine ek olarak" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "DÄ°ZGEdeki karakterler için sarmalamayı iptal eder" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Uyumluluk seçenekleri:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "oluştururken --old-archive ile, çıkarırken --no-same-owner ile aynı" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Diğer seçenekler:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "bozuculuk olasılığı olan bazı seçeneklerin kullanımı iptal edilir" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "`-Acdtrux' seçenekleri birden fazla belirtilemez" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Sıkıştırma seçenekleri çelişiyor" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Bilinmeyen sinyal ismi: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Tarih örnekleri dosyası bulunamadı" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Bilinmeyen tarih biçemi %2$s yerine %1$s kullanılıyor" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Seçenek %s: `%s' tarihi %s olarak ele alınıyor" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: dosya listesi zaten okundu" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: okunan dosya ismi boş karakter içeriyor" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "arşivi gzip üzerinden geçirir" -#: src/tar.c:1290 +#: src/tar.c:1296 #, fuzzy msgid "Valid arguments for the --quoting-style option are:" msgstr "--quoting-style seçeneği için geçerli değerler:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2165,169 +2179,169 @@ msgstr "" "\n" "*Bu* tar için öntanımlılar:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Bloklama çarpanı geçersiz" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Kayıt ortamının uzunluğu geçersiz" -#: src/tar.c:1511 +#: src/tar.c:1529 #, fuzzy msgid "Invalid incremental level value" msgstr "Arttırımlı dosya biçimi hatalı" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Birden fazla eşik tarihi" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Seyrek sürüm değeri geçersiz" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' seçeneği bu platformda desteklenmiyor" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "--checkpoint değeri bir tamsayı değil" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s: geçersiz grup" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Seçenekte verilen kip geçersiz" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Sayı geçersiz" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Sahip geçersiz" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" msgstr "" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Kayıt uzunluğu geçersiz" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Kayıt uzunluğu %d nin katları olmalı" -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Elemen sayısı geçersiz" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Sadece tek bir --to-command seçeneği kullanılabilir" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Hatalı yoğunluk argümanı: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Bilinmeyen yoğunluk: '%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "`-[0-7][lmh]' seçeneği *bu* tar ile desteklenmiyor" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[DOSYA]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Eski seçenek `%c' bir argümanla kullanılır." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence bir dosya listesi olmaksızın anlamlı değil" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence istenen işlem kipinde kullanılamaz" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Çok sayıda arşiv dosyası `-M' seçeneği gerektirir" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "--listed-incremental ile --newer birlikte kullanılamaz" -#: src/tar.c:2387 +#: src/tar.c:2406 #, fuzzy msgid "--level is meaningless without --listed-incremental" msgstr "--occurrence bir dosya listesi olmaksızın anlamlı değil" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Bölüm etiketi çok uzun (sınır: %lu bayt)" msgstr[1] "%s: Bölüm etiketi çok uzun (sınır: %lu bayt)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Çok sayıda bölüm içeren arşivler doğrulanamaz" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Sıkıştırılmış arşivler doğrulanamaz" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Çok sayıda bölüm içeren sıkıştırılmış arşivler kullanılamıyor" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Sıkıştırılmış arşivler birleştirilemez" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option sadece POSIX arşivlerinde kullanılabilir" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Bir boş arşivin oluşturulması ister istemez reddediliyor" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "`-Aru' seçenekleri `-f -' ile uyumsuz" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "`-Acdtrux' seçeneklerinden biri belirtilmeli" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "" @@ -2339,84 +2353,84 @@ msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Dosya %s baytta kırpılmış" msgstr[1] "%s: Dosya %s baytta kırpılmış" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "%s anahtar sözcüğü ya bilinmiyor ya da henüz gerçeklenmemiş" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "Numara izin verilen aralığın dışında: %s" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "%s şablonu kullanılamıyor" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "%s anahtar sözcüğü çakıştırılamaz" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Ek başlık bozuk: uzunluk eksik" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Ek başlık uzunluğu izin verilen aralığın dışında" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Ek başlık uzunluğu %*s aralık dışında" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Ek başlık bozuk: uzunluktan sonra boşluk yok" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Ek başlık bozuk: eşit işareti eksik" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Ek başlık bozuk: satırsonu eksik" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Bilinmeyen ek başlık anahtar sözcüğü `%s' yoksayılıyor" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "Üretilen isim/değer çifti çok uzun (isim=%s, uzunluk=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Ek başlık %s=%s, %s..%s aralığının dışında" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Ek başlık bozuk: %s=%s geçersiz" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Ek başlık bozuk: %s=%s aşırıya kaçmış" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "Ek başlık bozuk: %s geçersiz: umulmadık %c ayracı" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Ek başlık bozuk: %s geçersiz: değerler tek sayıda" @@ -2457,7 +2471,7 @@ msgstr "Yazma sınama yeri %u" msgid "Read checkpoint %u" msgstr "Okuma sınaması yeri %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2465,71 +2479,71 @@ msgstr "" "genfile, GNU paxutils deneme araçları için veri dosyalarını işleme sokar.\n" "SEÇENEKLER:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Dosya oluşturma seçenekleri:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "BOYUT" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Dosya belirtilen BOYUTta oluşturulur" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Dosyalar standart çıktı yerine Ä°SÄ°M dosyasına yazılır" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Dosya isimleri DOSYAdan okunur" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T boş karakter sonlandırmalı isimleri okur" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Dosyayı belirtilen ŞABLON ile doldurur. ŞABLON 'default' veya 'zeros' " "olabilir" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Seyrek dosyalar için blok boyu" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "Seyrek dosya üretilir. Komut satırının kalanı dosya eşlemini verir." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "KONUM" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Veriyi yazmadan önce belirtilen konuma gider" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Dosya istatistikleri seçenekleri:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "" "Belirtilen her dosya için stat yapısının içeriğini basar. Öntanımlı BİÇİM: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Ä°cra eşzamanlama seçenekleri:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [SEÇENEK...]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 #, fuzzy msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " @@ -2538,19 +2552,19 @@ msgstr "" "Belirtilen KOMUT çalıştırılır. --checkpoint ile ve --cut, --append, --touch " "seçeneklerinden biri ile birlikte kullanışlıdır" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "Sınama SAYIsı aşıldığında belirtilen eylem uygulanır (aşağıya bakınız)" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Sonraki --touch seçeneği için tarih ayarlanır" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Ä°cra edilen sınamalar ve KOMUTun çıkış durumu gösterilir" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2558,153 +2572,167 @@ msgstr "" "Çalıştırma eylemlerini eşzamanlar. Bunlar --checkpoint seçeneği ile " "belirtilen sayı aşıldığında çalıştırılırlar." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "" "DOSYA --length seçeneği ile belirtilen boyutta kırpılır (belirtilmemişse 0)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "DOSYAya BOYUT bayt eklenir. BOYUT evvelce --length seçeneği ile belirtilir." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "DOSYAnın değişiklik ve erişim zamanları güncellenir" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "KOMUT çalıştırılır" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Geçersiz boyut: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Numara izin verilen aralığın dışında: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Negatif boyut: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) başarısız" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Sayı çözümlenirken `%s' civarında hata" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Bilinmeyen tarih biçimi" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGÜMANLAR...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "`%s' açılamıyor" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "konumlanamıyor" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "dosya ismi boş karakter içeriyor" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "seyrek dosyalar standart çıktıda üretilemez, --file seçeneğini kullanın" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "kalıp yanlış (`%s' yakınında)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Bilinmeyen alan `%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "zaman `%s' olarak ayarlanamaz" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "`%s' açılamıyor" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Komut başarıyla sonlandı\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Komut %d çıkış durumu ile başarısız oldu\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Komut %d sinyali ile sonlandırıldı\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Komut %d sinyali ile durduruldu\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Komut bellek dökümü verdi\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Komut sonlandı\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat seçeneği dosya isimleri gerektirir" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "Çalışılan dizin kaydedilemez" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "%s ismi %s olarak değiştirilemez" + +#~ msgid "suppress this warning." +#~ msgstr "ya da bu uyarıyı engellemek için --no-wildcards kullanın." + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: kuraldışı seçenek -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "%s okunuyor\n" + #~ msgid "" #~ "\n" #~ "Report bugs to <%s>.\n" @@ -2713,15 +2741,6 @@ msgstr "--stat seçeneği dosya isimleri gerektirir" #~ "Yazılım hatalarını <%s> adresine,\n" #~ "çeviri hatalarını adresine bildiriniz.\n" -#~ msgid "Reading %s\n" -#~ msgstr "%s okunuyor\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "Hata kurtarılabilir değil: şimdilik çıkılıyor" - -#~ msgid "suppress this warning." -#~ msgstr "ya da bu uyarıyı engellemek için --no-wildcards kullanın." - #~ msgid "filter the archive through bzip2" #~ msgstr "arşivi bzip2 üzerinden geçirir" @@ -2773,6 +2792,9 @@ msgstr "--stat seçeneği dosya isimleri gerektirir" #~ msgid "Premature end of file" #~ msgstr "Dosya sonu belirsiz" +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "Hata kurtarılabilir değil: şimdilik çıkılıyor" + #~ msgid "block size" #~ msgstr "blok uzunluğu" diff --git a/po/uk.gmo b/po/uk.gmo index 788ae4d4bc8311d14025a6eead1d24a4de194d4a..f400a51406beda4a2cdd59c627496057570e5a01 100644 GIT binary patch delta 10639 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 delta 10495 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, 2005, 2006, 2007, 2008, 2009, 2010. # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.23\n" +"Project-Id-Version: tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2010-03-10 13:30+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-13 12:20+0300\n" "Last-Translator: Sergey Poznyakoff \n" "Language-Team: Ukrainian \n" +"Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" -"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: gnu/argmatch.c:135 #, c-format @@ -87,7 +89,7 @@ msgstr "" msgid "Report bugs to %s.\n" msgstr "Про помилки звітуйте на <%s>.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Невідома системна помилка" @@ -99,8 +101,8 @@ msgstr "вивести цю довідку" msgid "give a short usage message" msgstr "вивести коротке повідомлення про використання" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "НАЗВА" @@ -138,56 +140,61 @@ msgstr "(ПОМИЛКА ПРОГРАМУВАННЯ) Опція мала бути msgid "write error" msgstr "помилка запису" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: опція '%s' неоднозначна\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: опція '--%s' не може мати аргументу\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: опція '%c%s' не може мати аргументу\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: опція '%s' вимагає аргументу\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: опція '--%s' вимагає аргументу\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: невідома опція '--%s'\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: невідома опція '%c%s'\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: недійсна опція -- '%c'\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: опція вимагає аргументу -- '%c'\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: опція '-W %s' неоднозначна\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: опція '-W %s' не може мати аргументу\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: опція '-W %s' вимагає аргументу\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "пам'ять вичерпана" @@ -540,137 +547,137 @@ msgstr "Не вдалося під'єднатись до %s: неможливо msgid "Cannot execute remote shell" msgstr "Не вдалося запустити віддалену оболонку" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Напрямок зміщення за межами діапазону" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "Помилковий напрям пошуку" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "Помилковий зсув у файлі" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Зміщення за межами діапазону" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "Помилкова кількість байтів" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "Кількість байтів за межами діапазону" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "Передчасне закінчення файла" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "Недійсний код операції" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "Операція не підтримується" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "Неочікувані аргументи" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "Керує стрічковим пристроєм, отримуючи команди від віддаленого процесу" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "ЧИСЛО" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "встановити рівень налагоджування" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "ФАЙЛ" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "встановити назву файлу для виходу налагоджування" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "не вдається відкрити %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "забагато аргументів" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Хибна команда" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Це не схоже на архів tar" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Записано загалом" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Прочитано байтів загалом" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Видалено загалом: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(канал)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Недійсне значення record_size" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Не вказано назви архіву" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Неможливо перевіряти архів, записаний до stdout" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Архів стиснений. Використовуйте опцію %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Не можна оновлювати стиснені архіви" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "На початку стрічки, закінчуємо" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Надто багато помилок, виконання перервано" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" @@ -678,7 +685,7 @@ msgstr[0] "Розмір запису = %lu блок" msgstr[1] "Розмір запису = %lu блоки" msgstr[2] "Розмір запису = %lu блоків" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" @@ -686,39 +693,39 @@ msgstr[0] "Невірне вирівнювання блоку (%lu байт) в msgstr[1] "Невірне вирівнювання блоку (%lu байти) в архіві" msgstr[2] "Невірне вирівнювання блоку (%lu байтів) в архіві" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Не вдалося переміститись назад у архіві; можливо архів не можна прочитати " "без опції -i" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek не зупинився на межі запису" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: містить невірний номер тому" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Переповнення номера тому" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Підготуйте том #%d архіву %s ї натиснить return: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Кінець файлу, замість очікуваної відповіді" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "ПОПЕРЕДЖЕННЯ: Незавершений архів" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -729,66 +736,66 @@ msgstr "" " q Перервати роботу\n" " у або новий рядок Продовжувати\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Викликати оболонку\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? Вивести цю довідку\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Новий том відсутній. Завершення.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "Не вказано назви файлу. Спробуйте ще раз.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Недійсні вхідні дані. Наберіть ? щоб отримати підказку.\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "збій виконання `%s'" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "" "%s можливо продовжується у цьому томі: заголовок містить обрізану назву" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s не продовжується у цьому томі" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s є неправильним розміром (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Цей том є за межами послідовності (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Назви тому відсутня в архіві. Не можна порівняти з %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Етикетка тому %s не співпадає з %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -796,7 +803,7 @@ msgstr "" "%s: назва файлу надто довга щоб зберегти її у заголовку тому GNU; назву " "обрізано" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "запис не закінчився на межі блоку" @@ -808,20 +815,20 @@ msgstr[0] "Вдалося прочитати тільки %lu з %lu байта" msgstr[1] "Вдалося прочитати тільки %lu з %lu байтів" msgstr[2] "Вдалося прочитати тільки %lu з %lu байтів" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Різниця у змісті" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Неочікуваний кінець файла в архіві" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Різниця у типі файлу" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Різниця у правах доступу" @@ -837,42 +844,42 @@ msgstr "Різниця у значенні GID" msgid "Mod time differs" msgstr "Різниця у часі модифікації" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Різниця у розмірі" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Не є посиланням до %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Різниця у символічному посиланні" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Різниця у номері пристрою" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Перевірка " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s: Невідомий тип файлу `%c', перевірюється як звичайний файл" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Архів містить назви файлів без попереджуючих префіксів." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Перевірка може не знайти первинних файлів." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" @@ -880,47 +887,47 @@ msgstr[0] "ПОМИЛКА ПЕРЕВІРКИ: знайдено %d невірни msgstr[1] "ПОМИЛКА ПЕРЕВІРКИ: знайдено %d невірних заголовки" msgstr[2] "ПОМИЛКА ПЕРЕВІРКИ: знайдено %d невірних заголовків" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Самотній блок нулів, зсув %s" # Не подобається мені це "кешування"... -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: містить мітку каталогу кешування `%s'; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "Значення %s поза межами діапазону типа %s %s..%s; заміна на %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "значення %s за межами діапазону типа %s %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Створення від'ємних вісімкових заголовків" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: назва файлу занадто довга (макс. %d); не архівується" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: назва файлу занадто довга (не вдається розділити); не архівується" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: назва посилання занадто довга; не архівується" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" @@ -928,56 +935,56 @@ msgstr[0] "%s: Файл скоротився на %s байт; заповнен msgstr[1] "%s: Файл скоротився на %s байти; заповнення нулями" msgstr[2] "%s: Файл скоротився на %s байтів; заповнення нулями" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: файл знаходиться в іншої файлової системі; не архівується" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "вміст не архівується" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Невідомий тип файла; Файл проігноровано" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." msgstr "Відсутні деякі посилання до %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: файл не змінено; не архівується" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: файл є архівом; не архівується" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "каталог не архівується" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: файл змінився під час читання" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: гніздо ігнорується" # FIXME: door? -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: двері ігноруються" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Перехід до наступного заголовка" @@ -985,75 +992,75 @@ msgstr "Перехід до наступного заголовка" msgid "Deleting non-header from archive" msgstr "Видалення не-заголовка з архіву" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: неймовірно стара дата %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: мітка часу %s зсунута на %s сек. до майбутнього" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Неочікувана суперечність під час створення каталогу" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Каталог перейменовано перед тим, як tar встиг витягнути його стан" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Витягування безперервних файлів у звичайні" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Спроба перетворити символічні посилання на жорсткі" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Не вдається витягнути -- файл починається в іншому томі" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Неочікуваний кінець файла у заголовку довгої назви" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Невідомий тип файлу `%c', спроба витягнути його як звичайний файл" # FIXME: або сучасний? -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "Існуючий файл `%s' є новіший" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Не вдалося створити резервну копію цього файла" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Не вдається перейменувати %s на %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Каталог перейменовано з %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Каталог перейменовано" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: Новий каталог" @@ -1165,35 +1172,35 @@ msgstr "%s: Стирання %s\n" msgid "%s: Cannot remove" msgstr "%s: Не вдається видалити" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Пропускається" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "блок %s: ** Містить нулі **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "блок %s: ** Кінець файлу **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "блок %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Пробіли у заголовку замість очікуваного числового значення типу %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" @@ -1201,17 +1208,17 @@ msgstr "" "вважається, що це є двійкове доповнення" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Вісімкове значення %.*s знаходиться поза межами діапазону типу %s" # FIXME: base=64? -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Архів містить застарілі заголовки з основою 64" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "" @@ -1219,103 +1226,100 @@ msgstr "" "типу %s" # FIXME: base-256 -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Значення з основою 256 поза допустимими межами типу %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Знайдено %.*s замість числового значення типу %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Значення %s поза допустимими межами типу %s %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr "посилання до %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr "невідомий тип файла %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Довге посилання--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Довга назва--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Заголовок тому--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Продовжується з байту %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Створення каталогу:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Не вдається змінити поточний каталог" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Перейменовано %s у %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Не вдається перейменувати на %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Перейменовано %s назад у %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Не вдається зберегти поточний каталог" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Не вдається змінити поточний каталог" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Файл було видалено перед тим як tar встиг його прочитати" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "%s: Каталог було видалено перед тим як tar встиг його прочитати" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "процес-нащадок" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "канал між процесами" -#: src/names.c:601 +#: src/names.c:594 msgid "Pattern matching characters used in file names" msgstr "Назви файлів містять символи-шаблони" -#: src/names.c:603 +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" @@ -1323,24 +1327,29 @@ msgstr "" "Користайтеся опцією --wildcards аби увімкнути шаблони, або опцією --no-" "wildcards, щоб позбутися цього повідомлення" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Не знайдено в архіві" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Потрібну копію у архіві не знайдено" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Незгідність назви тому" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" "Використання опції -C у переліку файлів разом з опцією --listed-incremental " "не дозволяється" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "Разом з --listed-incremental дозволяється лише одна опція -C" @@ -1366,7 +1375,7 @@ msgstr "" "Невідомий стиль цитування `%s'. Наберіть `%s --quoting-style=help' аби " "отримати перелік стилів." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1385,7 +1394,7 @@ msgstr "" " # archive.tar\n" " tar -xf archive.tar # Витягує усі файли з archive.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1407,81 +1416,81 @@ msgstr "" " інакше - прості\n" " never, simple завжди створювати прості резервні копії\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Режими роботи:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "вивести вміст архіву" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "витягнути файли з архіву" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "створити новий архів" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "порівняти файли в архіві з файлами у файлової системі" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "долучити файли до існуючого архіву" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "долучати тільки такі файли, що є новішими за їх копії в архіві" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "долучити архів до архіву" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "видалити файли з архіву (не на стрічці!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "перевірити мітку тому та вийти" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Модифікатори режиму роботи:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "заощаджувати простір під час зберігання розсіяних файлів" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "ГОЛОВНИЙ[.ДРУГОРЯДНИЙ]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "встановлює версію формату розсіяних файлів (вмикає --sparse)" # FIXME: incremental -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "обробка старого формату інкрементного архіву GNU" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "обробка нового формату інкрементного архіву GNU" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "рівень архівної копії для створення інкрементного архіву" # FIXME: хммм... -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "ігнорувати помилки читання файлів" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1493,122 +1502,122 @@ msgstr "" "з переліком файлів (у командному рядку або за допомогою опції -T). Типове " "ЧИСЛО: 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "архів підтримує операцію seek" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "архів не підтримує операцію seek" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "не перевіряти номери пристрою під час створювання інкрементних архівів" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "" "перевіряти номери пристрою під час створювання інкрементних архівів (типово)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Керування перезаписом:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "перевірити архів після запису в нього" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "видаляти файли після додавання до архіву" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "не заміняти існуючи файли під час витягування" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "не заміняти існуючи файли що є новішими за їх копії у архіві" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "перезаписувати існуючі файли під час витягування" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "видаляти кожний файл перед витягуванням його копії" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "спорожняти старий каталог перед витягуванням його копії з архіву" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "зберігати мета-дані існуючих каталогів" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "перезаписувати метадані існуючих каталогів під час витягування (типово)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Вибір вихідного потоку:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "витягувати файли у стандартний вивід" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "КОМАНДА" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "передавати витягнуті файли до стандартного вводу іншої програми" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "ігнорувати коди завершення процесів-нащадків" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "вважати ненульовий код завершення нащадка помилкою" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Обробка атрибутів файлу:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "встановлення вказаного користувача власником доданих файлів" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "встановлення групи з вказаною назвою групою власника доданих файлів" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "ДАТА-АБО-ФАЙЛ" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "встановлення часу останньої зміни доданих файлів" # Ну, і чому це CHANGES?? -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "ПРАВА" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "встановлення вказаних символічно прав доступу для доданих файлів" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "МЕТОД" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1618,11 +1627,11 @@ msgstr "" "читання (типово, МЕТОД='replace'), або через запобігання оновленню часу " "(МЕТОД='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "не витягувати час модифікації файлів" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" @@ -1630,21 +1639,21 @@ msgstr "" "встановлювати власників файлів за даними з архіву (типово для супер-" "користувача)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "стати власником витягнутих файлів (типово для звичайного користувача)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "завжди використовувати числа замість назв власника/групи" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "встановлювати права доступу згідно з даними архіву (типово для супер-" "користувача)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1652,15 +1661,15 @@ msgstr "" "встановлювати права доступу згідно зі значенням umask (типово для звичайного " "користувача)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "витягувати файли у порядку їх з'явлення в архіві" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "те ж, що -p -s разом" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1668,139 +1677,139 @@ msgstr "" "затримати встановлення часу модифікації та прав доступу до каталогів до " "кінця витягування" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "відмінити дії опції --delay-directory-restore" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Вибір та зміна пристрою:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "АРХІВ" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "використовувати вказаний файл або пристрій" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "файл архіву є локальним, навіть якщо його назва містить двокрапку" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "використовувати вказану команду замість rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "використовувати вказану команду замість rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "визначає пристрой та густину" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "створити, виводити зміст або витягувати файли з багатотомного архіву" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "змінити стрічку після запису ЧИСЛА x 1024 байтів" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "запускати сценарій наприкінці кожної стрічки (вмикає -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "використовувати/обновляти номер тому у ФАЙЛІ" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Блокування пристрою:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "ЧИСЛО-БЛОКІВ" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "розмір запису ЧИСЛО-БЛОКІВ x 512 байтів" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "встановити розмір запису у блоках по 512 байтів" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "ігнорувати нульові блоки в архіві (звичайно вказують кінець файлу)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "розбивати на блоки під час читання (для каналів 4.2BSD)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Вибір формату архіву:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "ФОРМАТ" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "створити архів у вказаному форматі" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "ФОРМАТ будь-який з наступних:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "старий формат V7" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "формат GNU, сумісний з версією tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "формат GNU, сумісний з версією tar 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "формат POSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "формат POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "те ж, що і pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "те ж, що і --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "те ж, що і --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "ключове_слово[[:]=значення][,ключове_слово[[:]=значення], ...]\"" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "керування ключовими словами pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "ТЕКСТ" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1808,77 +1817,77 @@ msgstr "" "створити архів з назвою тому \"ТЕКСТ\". Під час виводу змісту або " "витягування, використовувати ТЕКСТ як шаблон пошуку тому" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Опції стиснення:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "вибирати програму стиснення за суфіксом архіву" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "не використовувати суфікс для вибору програми стиснення" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "ПРОГРАМА" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "використовувати ПРОГРАМУ для стиснення/розтискання архіву" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Вибір файлів:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "долучити ФАЙЛ до архіву (корисне, якщо його назва починається з -)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "КАТАЛОГ" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "перейти до вказаного каталогу" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "читати назви файлів для додання/витягування з вказаного файла" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "" "файл, вказаний з опцією -T, містить назви, відокремлені нульовими символами. " "Ця опція вимикає -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "відмінити дію попередньої опції --null" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "усувати цитування з назв файлів прочитаних за допомогою -T (типово)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "не усувати цитування з назв файлів прочитаних за допомогою -T" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "ШАБЛОН" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "не обробляти файли, назви яких відповідають вказаному шаблону" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "виключити назви що відповідають шаблонам, вказаним у файлі" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1886,92 +1895,92 @@ msgstr "" "не архівувати файли в каталогах, що містять CACHEDIR.TAG, з винятком самого " "файлу" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "не архівувати жодні файли в каталогах, що містять CACHEDIR.TAG" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "не архівувати каталоги, що містять CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "" "не архівувати файли в каталогах, що містять ФАЙЛ, з винятком самого файлу" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "не архівувати жодні файли в каталогах, що містять ФАЙЛ" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "не архівувати каталоги, що містять ФАЙЛ" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "не архівувати каталоги систем керування версіями" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "не архівувати резерві файли та файли блокування" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "не заходити автоматично у каталоги" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "залишатися у локальної файлової системі під час створення архіву" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "рекурсивно проходити каталоги (типово)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "не видаляти початкову косу риску `/' з назв файлів" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "Йти за символьними посиланнями: долучати файли, на яки вони вказують" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "Йти за жорсткими посиланнями: долучати файли, на яки вони вказують" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "НАЗВА-ФАЙЛУ" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "починати обслуговування архіву з вказаного файлу" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "долучати тільки такі файли, що є новіші за вказану дату або файл" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "ДАТА" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "порівнювати тільки дату і час зміни даних" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "РЕЖИМ" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "перед видаленням створювати резервні файли у вказаному режимі" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "РЯДОК" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1979,98 +1988,98 @@ msgstr "" "перед видаленням створювати резервні файли з указаним суфіксом (типово '~', " "якщо не перевизначено змінною середовища SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Перетворювання назв файлів:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "видаляти вказане ЧИСЛО компонентів з початку назв файлів" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "ВИРАЗ" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "перетворювати назви файлів за допомогою вказаного виразу заміни" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Керування порівнюванням назв (впливає на взірці як вилучення, так і " "долучення):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "шаблони ігнорують відмінності у регістрі символів" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "порівнювати шаблони з назвами файлів починаючи від початку назви" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "" "порівнювати шаблони з назвами файлів починаючи від будь-якого / (типово)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "шаблони враховують регістр (типово)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "користатися шаблонами (типово для вилучення)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "порівнювати назви буквально" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "шаблони не стосуються до '/'" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "шаблони стосуються до '/' (типово)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Інформативний вивід:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "виводити докладну інформацію про оброблені файли" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "КЛ.-СЛОВО" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "керування попередженнями" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "виводити контрольне повідомлення кожне ЧИСЛО записів (типово 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "ДІЯ" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "виконати вказану дію у контрольному пункті" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "виводити повідомлення якщо до архіву було додано не всі посилання" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "СИГНАЛ" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2081,27 +2090,31 @@ msgstr "" "- друкувати статистику по отриманню цього сигналу; дозволеними сигналами є " "SIGHUP, SIGQUIT, SIGINT, SIGUSR1 і SIGUSR2, а також ці назви без префікса SIG" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" msgstr "друкувати час модифікації файлів у UTC" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "друкувати час модифікації файлів у повній вирізняльної здатності" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "виводити детальну інформацію у ФАЙЛ" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "попереджувати кожне повідомлення номером блоку в архіві" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "Запитувати підтвердження кожної дії" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "вивести типові налаштування" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2109,31 +2122,31 @@ msgstr "" "під час виведення змісту або витягування файлів друкувати назви каталогів що " "не відповідають критеріям пошуку" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "показувати перетворені назви файлів" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "СТИЛЬ" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "встановити стиль цитування; дозволені стилі див. нижче" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "цитувати також вказані символи" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "вимкнути цитування вказаних символів" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Опції сумісності:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2141,63 +2154,63 @@ msgstr "" "під час створення архіву, те ж саме, що і --old-archive. Під час " "витягування, те ж саме, що --no-same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Інші опції:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "заборонити користування деякими потенційно небезпечними опціями" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "" "Не можна вказувати більш ніж одну з опцій `-Acdtrux' або `--test-label'" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Опції стиснення конфліктують одна з другою" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Невідомий тип файла %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Не знайдено файл-зразок дати" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Використовується %s замість невідомого формату дати %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Опція %s: Дату `%s' сприйнято як %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: перелік файлів уже прочитано" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: прочитана назва файла містить нульовий символ" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "фільтрувати архів через %s" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "Допустимими аргументами опції --quoting-style є:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2205,51 +2218,51 @@ msgstr "" "\n" "Типові налаштування *цієї* копії програми:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Неправильний фактор блокування" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Неправильна довжина стрічки" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "Недійсне значення для рівня архівації" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Більш ніж одна гранична дата" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Недійсна версія формату розсіяних файлів" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "опція --atime-preserve='system' не підтримується на цій платформі" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "аргумент --checkpoint мусить бути цілим числом" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "Недійсна група" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Невірний формат прав доступу" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Невірне число" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Невірний власник" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2257,69 +2270,69 @@ msgstr "" "Опція --preserve є застарілою, замість неї використовуйте --preserve-" "permissions --preserve-order" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Невірний розмір запису" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Розмір запису має ділитися на %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Невірна кількість елементів" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Дозволяється лише одна опція --to-command" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Невірний аргумент вказання густини: `%s'" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Невідома густина: `%c'" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "Опції `-[0-7][lmh]' не підтримуються *цією* версією tar" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[ФАЙЛ]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Стара опція `%c' потребує аргументу" -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "вказання --occurrence не має сенсу без вказання переліку файлів" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "" "опцію --occurrence не можна використовувати у зазначеному режимі роботи" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Вказання декількох файлів потребує вказання опції `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Не можна використовувати --listed-incremental разом з --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "Використання --level разом з --listed-incremental не має сенсу" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" @@ -2327,47 +2340,47 @@ msgstr[0] "%s: Мітка тому є надто довга (обмеження msgstr[1] "%s: Мітка тому є надто довга (обмеження в %lu байти)" msgstr[2] "%s: Мітка тому є надто довга (обмеження в %lu байтів)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Не можна перевіряти багатотомні архіви" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Не можна перевіряти стиснені архіви" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Не можна використовувати стиснення багатотомних архівів" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Не можна з'єднувати стиснені архіви" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "Опція --pax-option використовується тільки з архівами у форматі POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Розмір тому не може бути більшим від розміру запису" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "Опція --preserve-order несумісна з --listed-incremental" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Полохливо відмовляюся створювати пустий архів" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Опції `-Aru' несумісні з `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "Необхідно вказати одну з опцій `-Acdtrux' або `--test-label'" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Невдачне завершення внаслідок попередніх помилок" @@ -2380,88 +2393,88 @@ msgstr[0] "%s: Файл скоротився на %s байт" msgstr[1] "%s: Файл скоротився на %s байти" msgstr[2] "%s: Файл скоротився на %s байтів" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Ключове слово %s не є відоме або ще не реалізоване" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "Значення позначки часу поза допустимими межами" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Шаблон %s забороняється уживати" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Не можна перевизначити ключове слово %s" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Невірно сформований розширений заголовок: бракує довжини" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Довжина розширеного заголовку є за межами діапазону" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Довжина розширеного заголовку %*s є за межами діапазону" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "" "Невірно сформований розширений заголовок: відсутній пробіл після довжини" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Невірно сформований розширений заголовок: відсутній знак рівняння" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Невірно сформований розширений заголовок: відсутній знак нового рядка" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Невідоме ключове слово `%s' іґнорується" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "Створена пара ключове слово/значення є за довга (ключ=%s, довжина=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "" "Значення розширеного заголовку %s=%s лежить поза допустимими межами типу %s.." "%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Невірно сформований розширений заголовок: недійсна змінна %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Невірно сформований розширений заголовок: зайвий %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Невірно сформований розширений заголовок: змінна %s: неочікуваний розділювач " "%c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Невірно сформований розширений заголовок %s: непарна кількість значень" @@ -2502,7 +2515,7 @@ msgstr "Контрольна відмітка запису %u" msgid "Read checkpoint %u" msgstr "Контрольна відмітка читання %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2510,69 +2523,69 @@ msgstr "" "genfile - програма обробки файлів з набору перевірок пакету GNU paxutils\n" "Перелік опцій:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Опції створювання файлів:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "РОЗМІР" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Створити файл заданого розміру" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Писати у вказаний файл, замість стандартного виводу" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Читати назви файлів з вказаного файлу" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "" "файл, вказаний з опцією -T, містить назви, відокремлені нульовими символами" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Взірець заповнення файла: 'default' (типовий) або 'zeros' (заповнення нулями)" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Розмір блока розсіяного файла" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "Створити розсіяний файл. Решта аргументів дає мапу файла." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "ЗСУВ" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Перед записом даних перейти до вказаного зсуву в файлі" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Статистика файлів:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "Виводити вміст структури stat для кожного файла. Типовий формат: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Синхронне виконання:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "ОПЦІЯ" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" @@ -2580,20 +2593,20 @@ msgstr "" "Виконати вказану команду. Для використання з опціями --cut, --append, --" "touch або --unlink" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "" "Виконати вказану операцію (див. нижче) по досягненню контрольної відмітки" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Встановлює дати для наступної опції --touch" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Друкувати виконані операції і код завершення команди" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2601,7 +2614,7 @@ msgstr "" "Операції синхронного виконання. Виконуються по досягненню контрольної " "відмітки, вказаної опцією --checkpoint. " -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2609,139 +2622,142 @@ msgstr "" "Обрізати файл до розміру, вказаного попередньою опцією --length (до 0, якщо " "її не було вказано)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "Додати до файла кількість байтів, вказану попередньою опцією --length." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Поновити час доступу та модифікації файла" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Виконати КОМАНДУ" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "Видалити файл" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Невірний розмір: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Число поза допустимими межами: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Від'ємний розмір: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "збій виконання stat(%s)" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "замовлений розмір файлу %lu, справжній -- %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "створений файл не є розсіяним" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Помилка розбору числа біля `%s'" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Невідомий формат дати" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[АРГУМЕНТИ...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "не вдається відкрити `%s'" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "не вдається виконати lseek" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "назва файла містить нульовий символ" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "неможливо створювати розсіяні файли на стандартному виводі; користайтеся " "опцією --file" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "недійсна маска (біля `%s')" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Невідоме поле `%s'" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "не вдається встановити час файла `%s'" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "не вдається видалити `%s'" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Команда завершилася успішно\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Команда завершилася з кодом %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Команда завершилася по сигналу %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Команда зупинилася по сигналу %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Команда скинула відбиток пам'яті\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Команда завершилася\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "опція --stat вимагає назв файлів" + +#~ msgid "Cannot save working directory" +#~ msgstr "Не вдається зберегти поточний каталог" diff --git a/po/vi.gmo b/po/vi.gmo index b2c6f5d90fbb06e9ccf86d5ccd75944d3d43cb99..05957d8d7e415f3be66bc2ce0758228187157356 100644 GIT binary patch delta 12583 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 delta 12065 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, 2005. # Clytie Siddall , 2007-2010. # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22.91\n" +"Project-Id-Version: tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2010-02-13 17:50+0930\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-10-03 18:13+1030\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" +"Language: vi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -88,7 +90,7 @@ msgstr "Hãy thá»­ `%s --help' hoặc `%s --usage' để biết thêm thông tin msgid "Report bugs to %s.\n" msgstr "Báo cáo lỗi tới %s.\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "Lỗi hệ thống không rõ" @@ -100,8 +102,8 @@ msgstr "hiển thị trợ giúp này" msgid "give a short usage message" msgstr "hiển thị cách sá»­ dụng ngắn gọn" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "TÊN" @@ -139,56 +141,61 @@ msgstr "(LỖI CHƯƠNG TRÌNH) Tùy chọn nên được nhận ra !?" msgid "write error" msgstr "lỗi ghi" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: tùy chọn « %s » vẫn mÆ¡ hồ\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: tùy chọn « --%s » không cho phép đối số\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: tùy chọn « %c%s » không cho phép đối số\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: tùy chọn « %s » yêu cầu một đối số\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: tùy chọn « --%s » yêu cầu một đối số\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: không nhận ra tuỳ chọn « --%s »\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: không nhận ra tuỳ chọn « %c%s »\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: tùy chọn sai -- « %c »\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: tùy chọn yêu cầu một đối số -- « %c »\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: tùy chọn « -W %s » vẫn mÆ¡ hồ\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: tùy chọn « -W %s » không cho phép đối số\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: tùy chọn « -W %s » yêu cầu một đối số\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "cạn bộ nhớ" @@ -527,188 +534,188 @@ msgstr "đầu ra tiêu chuẩn" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "Không thể kết nối tới %s: lỗi giải quyết" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "Không thể chạy shell ở xa" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "Hướng tìm kiếm vượt quá vùng cho phép" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "Sai đặt hướng tìm nÆ¡i" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "Sai đặt khoảng chênh tìm nÆ¡i" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "Bộ tìm kiếm vượt quá vùng cho phép" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "Sai đếm byte" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "Số đếm byte ở ngoại phạm vi" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "Gặp kết thúc tập tin sớm" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "Mã thao tác sai" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "Thao tác không được hỗ trợ" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "Gặp đối số bất thường" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "Thao tác một ổ băng từ, chấp nhận lệnh từ một tiến trình ở xa" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "SỐ" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "đặt cấp gỡ rối" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "TẬP TIN" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "đặt tên tập tin kết xuất gỡ rối" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "không thể mở %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "quá nhiều đối số" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "Câu lệnh rác" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "Đây có vẻ không phải là một kho lÆ°u tar" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "Tổng số byte đã ghi" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "Tổng số byte đã đọc" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "Tổng số byte đã xoá: %s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(đường ống)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "Giá trị cho record_size không đúng" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "Không đưa ra tên kho lÆ°u" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "Không kiểm tra được kho lÆ°u stdin/stdout" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "Kho lÆ°u được nén. Hãy sá»­ dụng tùy chọn %s" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "Không cập nhật được kho lÆ°u đã nén" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "Tại đầu băng ghi âm, thoát ra bây giờ" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "Quá nhiều lỗi, đang thoát" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "Kích cỡ mục ghi = %lu khối" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "Khối chÆ°a sắp hàng (%lu byte) trong kho lÆ°u" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "" "Không thể \"tua\" lại tập tin kho lÆ°u; nó có thể không đọc được khi không có " "« -i »" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek không dừng lại tại một ranh giới bản ghi" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s: chứa số thứ tá»± khối không đúng" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "Số thứ tá»± khối thừa ra" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "Chuẩn bị khối #%d cho %s và nhấn Enter: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "Kết thúc tập tin (EOF) khi mong đợi trả lời của người dùng" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "CẢNH BÁO: Kho lÆ°u không hoàn thành" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -719,65 +726,65 @@ msgstr "" " q Dừng tar\n" " y hay dòng mới\tTiếp tục lại chạy tiến trình\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! Tạo một trình bao con\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? In ra danh sách này\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "Không có khối mới; đang thoát.\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "ChÆ°a ghi rõ tên tập tin: hãy thá»­ lại.\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "Gõ sai. (Gỏ ? để xem trợ giúp.)\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "Câu lệnh %s không thành công" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s có thể tiếp tục trên khối tin này: phần đầu chứa tên bị cắt ngắn" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s không tiếp tục trên khối này" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s là kích thước sai (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "Khối tin này vượt quá dãy cho phép (%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "Kho lÆ°u không có nhãn tÆ°Æ¡ng ứng với %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "Khối %s không tÆ°Æ¡ng ứng %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" @@ -785,7 +792,7 @@ msgstr "" "%s: tên tập tin quá dài để chứa trong một phần đầu đa khối GNU nên bị cắt " "ngắn" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "tiến trình ghi (write) không dừng lại tại một ranh giới khối" @@ -795,20 +802,20 @@ msgid "Could only read %lu of %lu byte" msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "Chỉ đọc được %lu từ %lu byte" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "Diff nội dung" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "Kết thúc tập tin không mong đợi trong kho lÆ°u" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "Diff dạng tập tin" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "Diff chế độ" @@ -824,142 +831,142 @@ msgstr "Diff Gid" msgid "Mod time differs" msgstr "Diff thời gian sá»­a đổi" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "Diff kích thước" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "Không liên kết tới %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "Diff liên kết mềm" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "Diff số thứ tá»± của thiết bị" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "Kiểm tra " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "" "%s: không rõ dạng tập tin '%c' nên khác biệt (diff) nhÆ° tập tin thông thường" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "Kho lÆ°u chứa tên tập tin không có tiền tố ở đầu." -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "Sá»± kiểm tra có thể không định vị được các tập tin gốc." -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "LỖI KIỂM TRA: tìm thấy %d phần đầu không đúng" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "Một khối không đơn lẻ tại %s" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: chứa một thẻ thÆ° mục ghi nhớ tạm %s: %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "giá trị %s vượt quá %s phạm vi %s..%s; đang thay thế %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "giá trị %s vượt quá %s phạm vi %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "Đang tạo phần đầu hệ tám âm" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s: tên tập tin quá dài (max %d); không được dump" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s: tên tập tin quá dài (không chia được); không được dump" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s: tên liên kết quá dài; không được dump" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s: Tập tin được rút ngắn %s byte; độn vào bắng các số không" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s: tập tin trên một hệ thống tập tin khác; không được dump" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "chÆ°a đổ nội dung" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s: Không rõ dạng tập tin; tập tin bị lờ đi" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." msgstr "Thiếu liên kết tới %s." -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: tập tin chÆ°a thay đổi; không được dump" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: tập tin là kho lÆ°u; không được đổ" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "chÆ°a đổ thÆ° mục" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: tập tin đã thay đổi khi chúng ta đọc nó" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: socket bị lờ đi" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: cá»­a (door) bị lờ đi" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "Nhảy tới phần đầu tiếp theo" @@ -967,74 +974,74 @@ msgstr "Nhảy tới phần đầu tiếp theo" msgid "Deleting non-header from archive" msgstr "Xóa không phải phần đầu từ kho lÆ°u" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s: tem thời gian cÅ© không hợp lý %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s: tem thời gian %s là %s giây trong tÆ°Æ¡ng lai" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s: Sá»± mâu thuẫn không mong đợi khi tạo thÆ° mục" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s: Đổi tên thÆ° mục trước khi có thể giải phóng trạng thái của nó" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "Giải nén các tập tin liền nhau thành những tập tin thông thường" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "Đang thá»­ giải nén liên kết mềm thành liên kết cứng" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s: Không giải nén được -- tập tin tiếp tục từ khối khác" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "Phần đầu tên dài không mong đợi" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s: Dạng tập tin không rõ '%c' nên giải nén nhÆ° tập tin thông thường" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "%s hiện thời là mới hay hay cùng thời" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s: Không thể sao lÆ°u tập tin này" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "Không thể đổi tên %s thành %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s: Đã đổi tên thÆ° mục từ %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s: Đã đổi tên thÆ° mục" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s: ThÆ° mục là mới" @@ -1144,177 +1151,179 @@ msgstr "%s: Đang xóa %s\n" msgid "%s: Cannot remove" msgstr "%s: Không thể xóa bỏ" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s: Đang bỏ đi" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "khối %s: ** Khối của các số không (NUL) **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "khối %s: ** Kết thúc tập tin **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "khối %s: " #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "Khoảng trống trong Phần đầu trong khi mong đợi một giá trị số %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "" "Giá trị hệ tám %.*s của kho lÆ°u vượt ra phạm vi %s; coi nhÆ° phần bù của hai" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "Giá trị hệ tám %.*s của kho lÆ°u vượt ra phạm vi %s" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "Kho lÆ°u chứa phần đầu base-64 không còn dùng nữa" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "Kho lÆ°u ký chuỗi base-64 %s vượt ra ngoài vùng %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "Giá trị base-256 của kho lÆ°u vượt ra ngoài vùng %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "Kho lÆ°u chứa %.*s ở chỗ mong đợi giá trị số %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "Giá trị kho lÆ°u %s vượt quá phạm vi %s (%s..%s)" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " liên kết tới %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " dạng tập tin không rõ %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--Liên kết Dài--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--Tên Dài--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--Phần đầu Khối--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--Tiếp tục tại byte %s--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "Đang tạo thÆ° mục:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "Không thay đổi được thÆ° mục làm việc" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "Đang đổi tên %s thành %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s: Không thể đổi tên thành %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "Đang đổi tên %s ngược lại thành %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "Không thể ghi nhớ thÆ° mục làm việc" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "Không thay đổi được thÆ° mục làm việc" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s: Tập tin bị xóa trước khi chúng ta đọc nó" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "%s: ThÆ° mục bị xoá trước khi chúng ta đọc nó" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "tiến trình con" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "kênh (channel) giữa các tiến trình" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "Tên tập tin chứa ký tá»± khớp mẫu." +msgstr "Tên tập tin chứa ký tá»± khớp mẫu" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" -msgstr "Hãy dùng « --wildcards » để hiệu lá»±c khớp mẫu," +msgstr "" +"Dùng « --wildcards » (ký tá»± đặi diện) để hiệu lá»±c chức năng khớp mẫu,\n" +"hoặc « --no-wildcards » để thu hồi cảnh báo này." -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s: Không tìm thấy trong kho lÆ°u" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s: Không tìm thấy phần tá»­ yêu cầu trong kho lÆ°u" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "Sai khớp nhãn kho lÆ°u" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "" "Sá»­ dụng tuỳ chọn « -C » bên trong danh sách tập tin không được phép với « --" "listed-incremental »" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "Chỉ cho phép một tuỳ chọn « -C » với « --listed-incremental »" @@ -1337,10 +1346,10 @@ msgstr "Muốn tính năng GNU trên định dạng kho lÆ°u không tÆ°Æ¡ng thí msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "" -"Không rõ kiểu dáng trích dẫn « %s ». Hãy thá»­ lệnh « %s --quoting-style=help » " -"để xem danh sách." +"Không rõ kiểu dáng trích dẫn « %s ». Hãy thá»­ lệnh « %s --quoting-style=help " +"» để xem danh sách." -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1359,7 +1368,7 @@ msgstr "" "kho.tar.\n" " tar -xf kho.tar # Giải phóng tất cả các tập tin ra từ kho.tar.\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1380,79 +1389,79 @@ msgstr "" " nil, existing đánh số nếu kho lÆ°u tồn tại, nếu không thì đơn giản\n" " never, simple luôn luôn tạo kho lÆ°u đơn giản\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "Chế độ thao tác chính:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "liệt kê nội dung của một kho lÆ°u" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "giải phóng các tập tin từ một kho lÆ°u" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "tạo một kho lÆ°u mới" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "tìm sá»± khác nhau giữa kho lÆ°u và hệ thống tập tin" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "thêm các tập tin vào cuối một kho lÆ°u" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "chỉ thêm những tập tin mới hÆ¡n bản sao trong kho lÆ°u" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "thêm các tập tin tar vào một kho lÆ°u" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "xóa từ kho lÆ°u (không dùng trên các băng ghi âm mag!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "thá»­ nhãn khối tin kho lÆ°u rồi thoát" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "Từ khóa bổ nghÄ©a thao tác:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "điều khiển các tập tin thÆ°a thớt một cách có hiệu quả" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "CHÍNH[.PHỤ]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "đặt phiên bản của định dạng sparse cần dùng (ngụ ý « --sparse »)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "điều khiển sao lÆ°u incremental có định dạng GNU cÅ©" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "điều khiển sao lÆ°u incremental có định dạng GNU mới" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "cấp đổ cho kho lÆ°u liệt kê tăng dần được tạo" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "đừng thoát với giá trị khác không trên tập tin không thể đọc" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1469,120 +1478,120 @@ msgstr "" "T ».\n" "Mặc định SỐ có giá trị bằng 1." -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "có thể tìm nÆ¡i trong kho lÆ°u" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "không thể tìm nÆ¡i trong kho lÆ°u" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "đừng kiểm tra số thứ tá»± thiết bị khi tạo kho nén dần" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "kiểm tra số thứ tá»± thiết bị khi tạo kho nén dần" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "Điều khiển ghi đè:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "thá»­ kiểm tra kho lÆ°u sau khi ghi nó" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "xóa bỏ các tập tin sau khi thêm chúng vào kho lÆ°u" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "không thay thế những tập tin đã có khi giải phóng" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "không thay thế những tập tin đã có mà mới hÆ¡n bản sao trong kho lÆ°u" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "ghi đè lên những tập tin đã có khi giải phóng" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "xóa bỏ quyền Æ°u tiên của mỗi tập tin để giải phóng và ghi đè lên nó" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "xóa sạch quyền Æ°u tiên trong cây thÆ° mục để giải phóng thÆ° mục" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "bảo quản dữ liệu mêta của các thÆ° mục đã có" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "" "ghi đè lên siêu dữ liệu của những thÆ° mục đã có khi giải phóng (mặc định)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "Chọn luồng xuất:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "giải phóng tập tin ra đầu ra tiêu chuẩn" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "CÂU LỆNH" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "gá»­i các tập tin đã giải nén qua ống dẫn cho chÆ°Æ¡ng trình khác" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "bỏ qua mã thoát của tiến trình con" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "xá»­ lý mã thoát khác số không của tiến trình con nhÆ° lỗi" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "Điều khiển thuộc tính tập tin:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "bắt buộc dùng TÊN làm người sở hữu cho những tập tin thêm vào" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "bắt buộc dùng TÊN làm nhóm sở hữu cho những tập tin thêm vào" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "NGÀY-CỦA-TẬP-TIN" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "đặt từ DATE-OR-FILE thời gian mtime cho các tập tin đã thêm" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "THAY ĐỔI" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "bắt buộc THAY ĐỔI chế độ (tượng trÆ°ng) cho những tập tin thêm vào" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "PHƯƠNG PHÁP" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1592,11 +1601,11 @@ msgstr "" "thời gian sau khi đọc (PHƯƠNG PHÁP='replace'; mặc định), hoặc bằng cách " "không đặt thời gian nhÆ° vậy (PHƯƠNG PHÁP='system')" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "không giải phóng thời gian sá»­a đổi của tập tin" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" @@ -1604,23 +1613,23 @@ msgstr "" "thá»­ giải phóng tập tin cùng quyền sở hữu với tập tin trong kho lÆ°u (mặc định " "cho siêu người dùng)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "" "giải phóng tập tin dưới tên người dùng riêng (mặc định cho người dùng bình " "thường)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "luôn luôn sá»­ dụng số cho tên người dùng/nhóm" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "" "cÅ©ng giải nén thông tin về quyền truy cập tập tin (mặc định cho siêu người " "dùng)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" @@ -1628,15 +1637,15 @@ msgstr "" "áp dụng umask của người dùng khi giải nén quyền truy cập ra từ kho lÆ°u (mặc " "định cho người dùng bình thường)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "sắp xếp tên để giải phóng tới kho lÆ°u tÆ°Æ¡ng ứng" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "giống nhÆ° khi có hai tùy chọn -p và -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" @@ -1644,139 +1653,139 @@ msgstr "" "hoãn đến kết thúc tiến trình giải nén việc đặt thời gian sá»­a đổi và quyền " "truy cập các thÆ° mục đã giải nén" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "hủy hiệu ứng của tùy chọn « --delay-directory-restore »" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "Lá»±a chọn và chuyển đổi thiết bị:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "LƯU TRá»®" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "sá»­ dụng tập tin kho lÆ°u hoặc thiết bị LƯU TRá»®" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "tập tin kho lÆ°u là cục bộ thậm chí nếu có một dấu hai chấm" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "sá»­ dụng CÂU LỆNH rmt đưa ra thay cho rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "sá»­ dụng CÂU LỆNH từ xa thay cho rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "chỉ ra ổ và mật độ ghi dữ liệu" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "tạo/liệt kê/giải phóng kho lÆ°u nhiều khối" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "thay băng ghi âm (tape) sau khi ghi nhớ SỐ X 1024 byte" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "chạy script tại cuối mỗi băng ghi âm (có nghÄ©a -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "sá»­ dụng/cập nhật số thứ tá»± khối trong TẬP TIN" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "Khối của thiết bị:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "KHỐI" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "KHỐI X 512 byte cho mỗi bản ghi" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "SỐ byte cho mỗi mục ghi, bội số cho 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "lờ đi những khối không (zero) trong kho lÆ°u (có nghÄ©a EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "đặt khối lại khi chúng ta đọc (cho đường ống 4.2BSD)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "Lá»±a chọn định dạng kho lÆ°u:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "ĐỊNH DẠNG" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "tạo lÆ°Æ° trữ với định dạng đưa ra" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "ĐỊNH DẠNG là một trong số sau:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "định dạng tar V7 cÅ©" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "định dạng GNU theo nhÆ° tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "định dạng tar GNU 1.13.x" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "định dạng PoSIX 1003.1-1988 (ustar)" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "định dạng POSIX 1003.1-2001 (pax)" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "bằng pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "giống nhÆ° --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "giống nhÆ° --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "từ_khoá[[:]=giá_trị][,từ_khoá[[:]=giá_trị]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "từ khóa điều khiển pax" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "VĂN BẢN" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1784,76 +1793,76 @@ msgstr "" "tạo kho lÆ°u với tên khối tin VĂN BẢN. Tại thời điểm liệt kê/giải phóng, sá»­ " "dụng VĂN BẢN làm mẫu glob cho tên khối tin" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "Tùy chọn nén:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "dùng hậu tố kho lÆ°u để xác định chÆ°Æ¡ng trình nén" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "không nên dùng hậu tố kho lÆ°u để xác định chÆ°Æ¡ng trình nén" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "TRÌNH" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "lọc qua chÆ°Æ¡ng TRÌNH (phải chấp nhận -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "Lá»±a chọn tập tin nội bộ:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "" "thêm vào kho lÆ°u TẬP TIN đã cho (có ích nếu tên nó bắt đầu với dấu gạch)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "THƯ MỤC" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "thay đổi tới thÆ° mục THƯ MỤC" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "lấy các tên tập tin cần giải phóng hay tạo từ TẬP TIN" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T đọc tên kết thúc vô hiệu lá»±c, tắt -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "tắt hiệu ứng của tùy chọn « --null » đi trước" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "hủy trích dẫn các tên tập tin được đọc bằng « -T » (mặc định)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "đừng hủy trích dẫn các tên tập tin được đọc bằng « -T »" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "MẪU" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "loại trừ những tập tin tÆ°Æ¡ng ứng với MẪU" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "loại trừ những mẫu liệt kê trong TẬP TIN" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" @@ -1861,92 +1870,92 @@ msgstr "" "loại trữ nội dung của thÆ° mục chứa thẻ ghi nhớ tạm CACHEDIR.TAG, trừ tập tin " "thẻ chính nó" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "" "loại trữ mọi thứ đều nằm dưới thÆ° mục chứa thẻ ghi nhớ tạm CACHEDIR.TAG" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "loại trữ thÆ° mục chứa thẻ ghi nhớ tạm CACHEDIR.TAG" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "loại trữ nội dung của thÆ° mục chứa TẬP TIN, trừ TẬP TIN chính nó" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "loại trữ mọi thứ đều nằm dưới thÆ° mục chứa TẬP TIN" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "loại trữ thÆ° mục chứa TẬP TIN" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "trừ thÆ° mục của hệ thống điều khiển phiên bản (v.d. « .svn »)" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "loại trừ tập tin kiểu sao lÆ°u và khoá" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "tránh sá»± giảm dần một cách tá»± động trong các thÆ° mục" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "nằm trong hệ thống tập tin nội bộ khi tạo kho lÆ°u" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "đệ quy vào các thÆ° mục (mặc định)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "đừng bỏ `/' ở đầu tên tập tin" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "theo liên kết tượng trÆ°ng; kho lÆ°u và đổ tập tin tới đó nó chỉ" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "theo liên kết cứng; kho lÆ°u và đổ tập tin tới đó nó chỉ" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "TÊN-THÀNH-VIÊN" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "bắt đầu tại thành viên TÊN-THÀNH-VIÊN trong kho lÆ°u" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "chỉ chứa những tập tin mới hÆ¡n NGÀY-CỦA-TẬP-TIN" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "NGÀY" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "so sánh ngày và thời gian chỉ khi dữ liệu thay đổi" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "ĐIỀU KHIỂN" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "sao lÆ°u trước khi xóa, chọn phiên bản ĐIỀU KHIỂN" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "CHUỖI" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1954,96 +1963,96 @@ msgstr "" "sao lÆ°u trước khi xóa, ghi đè hậu tố thông thường ('~' trừ khi ghi đè bằng " "biến môi trường SIMPLE_BACKUP_SUFFIX)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "Chuyển dạng tên tập tin:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "bỏ đi SỐ thành phần đứng đầu ra tên tập tin khi giải nén" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "BIỂU THỨC" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "dùng « sed replace BIỂU THỨC » để chuyển dạng tên tập tin" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "" "Tùy chọn khớp tên tập tin (có tác động mẫu kiểu cả hai loại trừ và bao gồm):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "không phân biệt chữ hoa/thường" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "mẫu tÆ°Æ¡ng ứng với bắt đầu tên tập tin" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "mẫu tÆ°Æ¡ng ứng sau bất kỳ / nào (mặc định để loại trừ)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "khớp có phân biệt chữ hoa/ thường (mặc định)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "dùng ký tá»± đại diện (mặc định để loại trừ)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "khớp chuỗi nghÄ©a chữ" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "ký tá»± đại diện không tÆ°Æ¡ng ứng '/'" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "ký tá»± đại diện tÆ°Æ¡ng ứng '/' (mặc định để loại trừ)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "Dữ liệu kết quả có tính thông tin:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "liệt kê một cách tỉ mỉ những tập tin được tiến hành" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "TỪ_KHOÁ" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "điều khiển cảnh báo" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "hiển thị thông báo về tiến triển sau mỗi mục ghi thứ SỐ (mặc định 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "HÀNH_ĐỘNG" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "thá»±c hiện HÀNH_ĐỘNG này ở mỗi điểm kiểm" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "in ra một thông báo nếu không phải tất cả các liên kết được dump" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "TÍN HIỆU" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2056,27 +2065,31 @@ msgstr "" "SIGHUP, SIGQUIT, SIGINT, SIGUSR1, SIGUSR2;\n" "cÅ©ng chấp nhận tên không có tiền tố « SIG »." -#: src/tar.c:755 -msgid "print file modification dates in UTC" -msgstr "in ra ngày sá»­a đổi tập tin theo UTC" +#: src/tar.c:756 +msgid "print file modification times in UTC" +msgstr "in ra giờ sá»­a đổi tập tin theo UTC" + +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "in ra giờ tập tin đến độ phân giải đầy đủ" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "gá»­i kết quả chi tiết tới TẬP TIN" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "hiên thị số thứ tá»± khối trong kho lÆ°u với mỗi thông báo" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "hỏi xác nhận trước mỗi hành động" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "hiển thị các giá trị mặc định của tar" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" @@ -2084,32 +2097,32 @@ msgstr "" "khi liệt kê hay giải phóng, liệt kê mỗi thÆ° mục không tÆ°Æ¡ng ứng với tiêu chí " "tìm kiếm" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "hiển thị các tên tập tin hay kho lÆ°u sau khi chuyển dạng" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "KIỂU DÁNG" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "" "đặt kiểu dáng trích dẫn tên; xem dưới để tìm các giá trị KIỂU DÁNG hợp lệ" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "cÅ©ng trích dẫn các ký tá»± của CHUỖI" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "tắt trích dẫn các ký tá»± của CHUỖI" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "Tùy chọn tÆ°Æ¡ng thích:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" @@ -2117,62 +2130,62 @@ msgstr "" "khi tạo, giống nhÆ° « --old-archive »\n" "khi giải phóng, giống nhÆ° « --no-same-owner »" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "Những tùy chọn khác:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "tắt sá»­ dụng một số tùy chọn có thể gây tai hại" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "Chỉ cho phép đưa ra một tùy chọn « -Acdtrux » hay « --test-label »" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "Mâu thuẫn giữa các tùy chọn nén" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "Không rõ tên tín hiệu : %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "Không tìm thấy tập tin mẫu ngày tháng" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "Đang thay thế %s cho dạng ngày tháng không rõ %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "Tùy chọn %s: đang xá»­ lý ngày tháng « %s » nhÆ° %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: danh sách tập tin đã được đọc" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: đọc tên tập tin chứa ký tá»± vô giá trị" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "lọc kho lÆ°u qua %s" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "Các đối số thích hợp với tùy chọn « --quoting-style »:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2180,51 +2193,51 @@ msgstr "" "\n" "tar *này* mặc định tới:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "Nhân tố khối không đúng" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "Chiều dài băng ghi âm không đúng" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "Sai đặt giá trị cấp tăng dần" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "Có nhiều ngày bắt đầu" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "Giá trị phiên bản sparse không hợp lệ" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' không được hỗ trợ trên nền tảng này" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "giá trị « --checkpoint » không phải số nguyên" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "Nhóm không đúng" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "Đưa ra chế độ không đúng trên tùy chọn" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "Số không đúng" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "Chủ sở hữu không đúng" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2232,115 +2245,116 @@ msgstr "" "Tùy chọn « --preserve » bị phản đối, hãy sá»­ dụng tùy chọn « --preserve-" "permissions » « --preserve-order » để thay thế" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "Kích thước bản ghi không đúng" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "Kích thước bản ghi phải là bội số của %d." -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "Số thứ tá»± của nguyên tố không đúng" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "Cho phép chỉ một tùy chọn « --to-command »" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "Tham số mật độ dạng sai: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "Mật độ không rõ : « %c »" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "tar *này* không hỗ trợ tùy chọn `-[0-7][lmh]'" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[TẬP TIN]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "Tùy chọn cÅ© `%c' yêu cầu một tham số." -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "--occurrence không có giá trị khi không đưa ra một danh sách tập tin" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence không được sá»­ dụng trong chế độ thao tác đã yêu cầu" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "Tập tin nhiều kho lÆ°u yêu cầu tùy chọn `-M'" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "Không thể kết hợp --listed-incremental với --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "Tùy chọn « --level » vô ích mà không có « --listed-incremental »" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s: Nhãn khối quá dài (giới hạn là %lu byte)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "Không thể kiểm tra kho lÆ°u nhiều khối" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "Không thể kiểm tra kho lÆ°u đã nén" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "Không thể sá»­ dụng kho lÆ°u nhiều khối đã nén" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "Không thể ghép nối các kho nén" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option chỉ dùng được trên kho lÆ°u POSIX" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "Chiều dài khối tin không thể nhỏ hÆ¡n kích cỡ mục ghi" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "" "Tùy chọn « --preserve-order » không tÆ°Æ¡ng thích với « --listed-incremental »" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "Từ chối tạo một kho lÆ°u trống rỗng" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "Các tùy chọn `-Aru' không tÆ°Æ¡ng thích với `-f -'" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" -msgstr "Bạn phải chỉ ra một trong hai tùy chọn « -Acdtrux » và « --test-label »" +msgstr "" +"Bạn phải chỉ ra một trong hai tùy chọn « -Acdtrux » và « --test-label »" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "Đang thoát với trạng thái thất bại do lỗi xảy ra trước" @@ -2351,84 +2365,84 @@ msgid "%s: File shrank by %s byte" msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s: Tập tin được rút ngắn %s byte" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "Từ khóa %s không rõ hoặc chÆ°a được thá»±c hiện" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "Nhãn thời gian ở ngoại phạm vi" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "Không thể dùng mẫu (pattern) %s" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "Không thể ghi chèn lên từ khóa %s" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "Phần đầu mở rộng dạng sai: thiếu chiều dài" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "Chiều dài phần đầu mở rộng ở ngoại phạm vi được phép" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "Chiều dài phần đầu mở rộng %*s ở ngoại phạm vi được phép" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "Phần đầu mở rộng dạng sai: thiếu khoảng trắng ở sau chiều dài" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "Phần đầu mở rộng bị lỗi: thiếu dấu bằng" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "Phần đầu mở rộng dạng sai: thiếu dòng mới" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "Bỏ qua từ khoá phần đầu mở rộng không rõ « %s »" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "Cặp từ khoá/giá trị đã tạo ra quá dài (từ khoá=%s, chiều dài=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "Phần đầu mở rộng %s=%s ở ngoại phạm vi (%s..%s)" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "Phần đầu mở rộng dạng sai: %s=%s không hợp lệ" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "Phần đầu mở rộng dạng sai: %s=%s thừa" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "" "Phần đầu mở rộng dạng sai: %s không hợp lệ: dấu giới hạn không mong đợi %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "Phần đầu mở rộng dạng sai: %s không hợp lệ: số giá trị lẻ" @@ -2469,7 +2483,7 @@ msgstr "Điểm kiểm tra ghi %u" msgid "Read checkpoint %u" msgstr "Điểm kiểm tra đọc %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2477,71 +2491,71 @@ msgstr "" "genfile thao tác các tập tin dữ liệu cho bộ tiện ích thá»­ paxutils của GNU.\n" "TÙY CHỌN:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "Tùy chọn tạo tập tin:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "KÍCH Cá» " -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "Tạo tập tin có KÍCH Cá»  đã cho" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "Ghi vào tập tin TÊN, thay vào thiết bị gõ chuẩn" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "Đọc các tên tập tin từ TẬP TIN" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T đọc tên kết thúc vô hiệu lá»±c" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "" "Điền vào tập tin bằng MẪU đã cho. MẪU là:\n" " • default\t\tmặc định\n" " • zeros\t\tcác số không" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "Kích cỡ của khối cho tập tin spare" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "" "Tạo ra tập tin sparse. Phần còn lại của dòng lệnh đưa ra sÆ¡ đồ tập tin." -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "HIỆU SỐ" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "Tìm nÆ¡i theo hiệu số đã cho trước khi ghi dữ liệu" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "Tùy chọn thống kê tập tin:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "In ra kết xuất struct stat về mỗi tập tin đã cho. ĐỊNH DẠNG mặc định: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "Tùy chọn thá»±c hiện đồng thời:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "TÙY_CHỌN" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" @@ -2553,19 +2567,19 @@ msgstr "" " • --touch\tsờ\n" " • --unlink\tbỏ liên kết" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "Thá»±c hiện hành động đã cho (xem dưới) khi tới điểm kiểm tra SỐ" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "Đặt ngày tháng cho tùy chọn « -touch » kế tiếp" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "Hiển thị các điểm kiểm tra đã thá»±c hiện và trạng thái thoát của LỆNH" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2573,7 +2587,7 @@ msgstr "" "Các hành động thá»±c hiện đồng thời; được thá»±c hiện khi tới điểm kiểm tra có " "số được ghi rõ bằng tùy chọn « --checkpoint »." -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" @@ -2581,147 +2595,144 @@ msgstr "" "Cắt ngắn TẬP TIN thành kích cỡ được ghi rõ bằng tùy chọn « --length » trước " "(không ghi rõ thì 0)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "" "Phụ thêm KÍCH Cá»  byte vào TẬP TIN. KÍCH Cá»  được ghi rõ bằng tùy chọn « --" "length » trước." -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "Cập nhật các thời gian truy cập và sá»­a đổi của TẬP TIN" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "Thá»±c hiện LỆNH" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "Bỏ liên kết TẬP_TIN" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "Kích cỡ không hợp lệ: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "Số nằm ngoài phạm vi cho phép: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "Kích cỡ âm: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) bị lỗi" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "yêu cầu chiều dài tập tin %lu mà có %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "đã tạo tập tin không phải thÆ°a thớt (sparse)" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "Lỗi phân tích số gần « %s »" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "Không rõ định dạng ngày tháng" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ĐỐI SỐ...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "không thể mở « %s »" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "không thể tìm nÆ¡i" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "tên tập tin chứa ký tá»± vô giá trị" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "" "không thể tạo ra tập tin sparse trên thiết bị gõ chuẩn: dùng tùy chọn « --" "file »" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "mặt nạ không đúng (gần « %s »)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "Không rõ trường « %s »" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "không thể đặt thời gian trên « %s »" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "không thể bỏ liên kết « %s »" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "Lệnh đã thoát thành công\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "Lệnh bị lỗi với trạng thái %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "Lệnh đã chấm dứt khi nhận tín hiệu %d\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "Lệnh đã dừng chạy khi nhận tín hiệu %d\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "Lệnh đã đổ lõi\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "Lệnh đã chấm dứt\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat yêu cầu tên tập tin" -#~ msgid "Cannot resolve hostname %s" -#~ msgstr "Không thể quyết định tên máy %s" - -#~ msgid "suppress this warning." -#~ msgstr "hoặc dùng « --no-wildcards » để thu hồi cảnh báo này." +#~ msgid "Cannot save working directory" +#~ msgstr "Không thể ghi nhớ thÆ° mục làm việc" diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo index 13bbeee20514f9bdb041b62666aa58c91b485bdf..bccbc27b9d1a49c1830ec320d0bb84a38ba37467 100644 GIT binary patch delta 12465 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 Hju-iV0j*iI delta 11993 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 I`842v0AenKCIA2c diff --git a/po/zh_CN.po b/po/zh_CN.po index 642de84..89e7181 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -5,14 +5,16 @@ # Rongjun Mu , 2004. # Ji ZhengYu , 2008, 2009, 2010. # +#: src/create.c:1550 msgid "" msgstr "" -"Project-Id-Version: tar 1.22.91\n" +"Project-Id-Version: tar 1.23.90\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" -"PO-Revision-Date: 2010-02-16 14:27+0800\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" +"PO-Revision-Date: 2010-07-13 11:49+0800\n" "Last-Translator: Ji ZhengYu \n" "Language-Team: Chinese (simplified) \n" +"Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" @@ -86,7 +88,7 @@ msgstr "请用“%s --help”或“%s --usage”获得更多信息。\n" msgid "Report bugs to %s.\n" msgstr "将错误报告发送到 %s。\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "未知的系统错误" @@ -98,8 +100,8 @@ msgstr "显示此帮助列表" msgid "give a short usage message" msgstr "显示简短的用法说明" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "名称" @@ -137,56 +139,61 @@ msgstr "(程序错误)选项可否被识别!?" msgid "write error" msgstr "写错误" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s: 选项\"%s\"具有歧义\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: 选项\"--%s\"不需要参数\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: 选项\"%c%s\"不需要参数\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, c-format -msgid "%s: option '%s' requires an argument\n" -msgstr "%s: 选项\"%s\"必须要参数\n" +msgid "%s: option '--%s' requires an argument\n" +msgstr "%s: 选项\"%s\"需要带参数\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: 无法识别的选项\"--%s\"\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: 无法识别的选项\"%c%s\"\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: 无效选项 -- \"%c\"\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: 选项需要参数 -- \"%c\"\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: 选项\"-W %s\"具有歧义\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: 选项\"-W %s\"不要参数\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s: 选项\"%s\"需要带参数\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "内存耗尽" @@ -523,186 +530,186 @@ msgstr "标准输出" #: lib/rtapelib.c:429 #, c-format msgid "Cannot connect to %s: resolve failed" -msgstr "" +msgstr "无法连接至 %s: 解析失败" #: lib/rtapelib.c:515 #, c-format msgid "Cannot execute remote shell" msgstr "无法执行远程 shell" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "查寻方向超出范围" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 msgid "Invalid seek direction" msgstr "无效的查寻方向" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 msgid "Invalid seek offset" msgstr "无效的查寻偏移量" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "查寻操作的偏移量超出范围" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 msgid "Invalid byte count" msgstr "无效的字节数" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 msgid "Byte count out of range" msgstr "字节数超出范围" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 msgid "Premature eof" msgstr "文件结尾出现过早" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 msgid "Invalid operation code" msgstr "无效操作模式" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "不支持的操作" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 msgid "Unexpected arguments" msgstr "参数异常" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "接受远程程序的命令操作磁带机" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "NUMBER" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "设定调试级别" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "FILE" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "设定调试输出文件名" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, c-format msgid "cannot open %s" msgstr "无法打开 %s" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "参数过多" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "垃圾命令" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "它似乎不像是一个 tar 归档文件" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "总计写入字节数" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "总计读取字节数" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "总计删除字节数:%s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(管道)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "record_size 的无效值" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "未给出归档文件名" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "无法验证标准输入/标准输出归档文件" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "归档被压缩。使用 %s 选项" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "无法更新压缩归档文件" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "处于磁带的起点,现在退出" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "错误过多,退出" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "记录大小 = %lu 块" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "归档中未对齐的块 (%lu 字节)s" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "无法倒回归档文件;如果没有 -i 可能无法读入它" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek 未停在记录边界处" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s:包含无效的卷编号" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "卷编号溢出" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "为 %2$s 准备卷 #%1$d 并按回车:" -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "需得到用户应答时文件结束" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "警告:归档文件不完整" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -713,71 +720,71 @@ msgstr "" " q\t\t终止 tar\n" " y or newline\t继续操作\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! 衍生出一个子 shell\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? 打印此列表\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "没有新的卷;退出。\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "未指定文件名。重试。\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "无效输入。输入 ? 显示帮助。\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "%s 命令失败" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s 在本卷可能连续: 头部包含截短的名字" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s 在本卷中不连续" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s 的大小错误 (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "此卷次序有误(%s - %s != %s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "归档未被标记为匹配 %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "卷标 %s 不匹配 %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "%s: 文件名太长而无法贮存在 GNU 多卷头,已被截短" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "写操作未在记录边界处终止" @@ -787,20 +794,20 @@ msgid "Could only read %lu of %lu byte" msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "仅能读入 %2$lu 中的 %1$lu 个字节" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "内容不同" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "归档文件中异常的 EOF" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "文件类型不同" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "访问模式不同" @@ -816,141 +823,141 @@ msgstr "Gid 不同" msgid "Mod time differs" msgstr "修改时间不同" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "大小不同" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "没有连接到 %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "符号连接不同" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "设备号不同" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "校验" -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s:未知的文件类型“%c”,与普通文件不同" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "归档包含带有被移除前导字符的文件名。" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "位于原始文件中的验证可能失败。" -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "校验失败:检测到 %d 个无效的头" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "在 %s 处一个单独的零块" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s: 包含一个缓存目录标识 %s;%s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "值 %s 超出了 %s 的范围 %s..%s;正在替换 %s" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "值 %s 超出了 %s 的范围 %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "正在生成负八进制头" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s:文件名太长(最长 %d);未输出" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s:文件名太长(不能被分割);未输出" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s:连接名太长;未输出" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s:文件缩小 %s 字节;用零填充" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s:文件在不同的文件系统上;未输出" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "未输出内容" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s:未知的文件类型;忽略文件" -#: src/create.c:1472 +#: src/create.c:1527 #, c-format msgid "Missing links to %s." msgstr "缺少到 %s 的连接。" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s: 文件未改变;未输出" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s: 文件是归档文件;未输出" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "未输出目录" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s: 在我们读入文件时文件发生了变化" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s: 忽略套接字(socket)" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s: 忽略权限" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "跳转到下一个头" @@ -958,74 +965,74 @@ msgstr "跳转到下一个头" msgid "Deleting non-header from archive" msgstr "从归档文件中删除非头信息" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s:不可信的旧时间戳 %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s:时间戳 %s 是未来的 %s 秒之后" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s:创建目录时出现意外的不一致" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s:目录名在状态信息被获取之前改变了" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "展开紧邻的文件为普通文件" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "正试图将符号连接展开为硬连接" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s:无法展开 -- 文件一直延伸至另一卷中" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "异常的长名字头部" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s:未知的文件类型“%c”,作为普通文件展开" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "当前的“%s”更新或一样新" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s:无法备份该文件" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "无法将 %s 重命名为 %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s:目录已改名,不再是 %s" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s:目录已被改名" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s:目录是新的" @@ -1135,174 +1142,174 @@ msgstr "%s:正在删除 %s\n" msgid "%s: Cannot remove" msgstr "%s:无法删除" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s:忽略" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "块 %s:** 空块 **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "块 %s:** 文件结束 **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "块 %s:" #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "头中需要数值 %s 处为空白符" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "归档的八进制值 %.*s 超出范围 %s;假定为其二进制补码" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "归档八进制值 %.*s 超出 %s 的范围" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "归档包含过时的 base-64 头" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "归档签署的 base-64 字符串 %s 超出范围 %s" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "归档的 base-256 值超出范围 %s" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "归档包含 %.*s 而需要数字值 %s" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "归档值 %s 超出 %s 的范围 %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " 连接到 %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " 未知的文件类型 %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--长连接--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--长名--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--卷头--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--从 %s 字节继续--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "正在创建目录:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "无法改变工作目录" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "将 %s 改名为 %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s:无法重命名为 %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "将 %s 的名字改回 %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "无法保存工作目录" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "无法改变工作目录" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s:文件在我们读入之前被删除了" -#: src/misc.c:774 +#: src/misc.c:866 #, c-format msgid "%s: Directory removed before we read it" msgstr "%s: 文件在读入之前被删除了" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "子进程" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "进程内通道" -#: src/names.c:601 -#, fuzzy +#: src/names.c:594 msgid "Pattern matching characters used in file names" -msgstr "请在文件名中使用匹配字符模式。" +msgstr "文件名中所使用的字符匹配模式" -#: src/names.c:603 -#, fuzzy +#: src/names.c:596 msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "使用 --wildcards 打开模式匹配,或是 --no-wildcards 来关闭之" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s:归档中找不到" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s:没有在归档中找到需要的" -#: src/names.c:894 +#: src/names.c:649 +#, c-format +msgid "Archive label mismatch" +msgstr "归档卷标不匹配" + +#: src/names.c:953 msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "在文件列表中 -C 选项与 --listed-incremental 选项不许合用" -#: src/names.c:900 +#: src/names.c:959 msgid "Only one -C option is allowed with --listed-incremental" msgstr "仅一个 -C 选项允许与 --listed-incremental 合用" @@ -1326,7 +1333,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "未知的引用形式‘%s’。尝试用‘%s --quoting-style=help’获取列表。" -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1346,7 +1353,7 @@ msgstr "" "件。\n" " tar -xf archive.tar # 展开归档文件 archive.tar 中的所有文件。\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1365,79 +1372,79 @@ msgstr "" " nil, existing 如果编号备份存在则进行编号备份,否则进行简单备份\n" " never, simple 总是使用简单备份\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "主操作模式:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "列出归档内容" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "从归档中解出文件" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "创建一个新归档" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "找出归档和文件系统的差异" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "追加文件至归档结尾" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "仅追加比归档中副本更新的文件" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "追加 tar 文件至归档" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "从归档(非磁带!)中删除" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "测试归档卷标并退出" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "操作修饰符:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "高效处理离散文件" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAJOR[.MINOR]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "设置所用的离散格式版本(隐含 --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "处理老式的 GNU 格式的增量备份" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "处理新式的 GNU 格式的增量备份" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "所创建的增量列表归档的输出级别" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "当遇上不可读文件时不要以非零值退出" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1448,119 +1455,119 @@ msgstr "" "extract 或是 --list 中的一个联合使用时,此选项才有效。而且不管文件列表是以命" "令行形式给出或是通过 -T 选项指定的;NUMBER 值默认为 1" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "归档可检索" -#: src/tar.c:436 +#: src/tar.c:437 msgid "archive is not seekable" msgstr "归档不可检索" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "当创建增量归档时不要检查设备号" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "当创建增量归档时检查设备号(默认)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "重写控制:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "在写入以后尝试校验归档" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "在添加文件至归档后删除它们" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "解压时不要替换存在的文件" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "不要替换比归档中副本更新的已存在的文件" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "解压时重写存在的文件" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "在解压要重写的文件之前先删除它们" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "解压目录之前先清除目录层次" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "保留已存在目录的元数据" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "解压时重写已存在目录的元数据(默认)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "选择输出流:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "解压文件至标准输出" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "COMMAND" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "将解压的文件通过管道传送至另一个程序" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "忽略子进程的退出代码" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "将子进程的非零退出代码认为发生错误" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "操作文件属性:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "强制将 NAME 作为所添加的文件的所有者" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "强制将 NAME 作为所添加的文件的组所有者" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "DATE-OR-FILE" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "从 DATE-OR-FILE 中为添加的文件设置 mtime" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "CHANGES" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "强制将所添加的文件(符号)更改为权限 CHANGES" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "METHOD" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1569,440 +1576,440 @@ msgstr "" "在输出的文件上保留访问时间,要么通过在读取(默认 METHOD=‘replace’)后还原时间," "要不就不要在第一次(METHOD=‘system’)设置时间" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "不要解压文件的修改时间" -#: src/tar.c:504 +#: src/tar.c:505 msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "尝试解压时保持所有者关系一致(超级用户默认此项)" -#: src/tar.c:506 +#: src/tar.c:507 msgid "extract files as yourself (default for ordinary users)" msgstr "将文件解压为您所有(普通用户默认此项)" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "总是以数字代表用户/组的名称" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "解压文件权限信息(默认只为超级用户服务)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "从归档中解压权限时使用用户的掩码位(默认为普通用户服务)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "为解压至匹配归档排序名称" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "与 -p 和 -s 一样" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "直到解压结束才设置修改时间和所解目录的权限" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "取消 --delay-directory-restore 选项的效果" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "设备选择和切换:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "ARCHIVE" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "使用归档文件或 ARCHIVE 设备" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "即使归档文件存在副本还是把它认为是本地归档" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "使用指定的 rmt COMMAND 代替 rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "使用远程 COMMAND 代替 rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "指定驱动器和压缩率" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "创建/列出/解压多卷归档文件" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "写入 NUMBER × 1024 字节后更换磁带" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "在每卷磁带最后运行脚本(隐含 -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "使用/更新 FILE 中的卷数" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "设备分块:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "BLOCKS" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "每个记录 BLOCKS x 512 字节" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "每个记录的字节数 NUMBER,乘以 512" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "忽略归档中的零字节块(即文件结尾)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "读取时重新分块(只对 4.2BSD 管道有效)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "选择归档格式:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "FORMAT" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "创建指定格式的归档" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "FORMAT 是以下格式中的一种:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "old V7 tar 格式" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "GNU 格式 as per tar <= 1.12" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU tar 1.13.x 格式" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) 格式" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) 格式" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "等同于 pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "等同于 --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "等同于 --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "关键字[[:]=值][,关键字[[:]=值]]..." -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "控制 pax 关键字" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "TEXT" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" msgstr "创建带有卷名 TEXT 的归档;在列出/解压时,使用 TEXT 作为卷名的模式串" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "压缩选项:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "使用归档后缀名来决定压缩程序" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "不使用归档后缀名来决定压缩程序" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "PROG" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "通过 PROG 过滤(必须是能接受 -d 选项的程序)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "本地文件选择:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "添加指定的 FILE 至归档(如果名字以 - 开始会很有用的)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "DIR" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "改变至目录 DIR" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "从 FILE 中获取文件名来解压或创建文件" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T 读取以空终止的名字,-C 禁用" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "禁用上一次的效果 --null 选项" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "以 -T 读取的文件名作为引用结束(默认)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "不以 -T 读取的文件名作为引用结束" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "PATTERN" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "排除以 PATTERN 指定的文件" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "排除 FILE 中列出的模式串" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "除标识文件本身外,排除包含 CACHEDIR.TAG 的目录中的内容" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "排除包含 CACHEDIR.TAG 的目录中所有内容" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "排除包含 CACHEDIR.TAG 的目录" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "除 FILE 自身外,排除包含 FILE 的目录中的内容" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "排除包含 FILE 的目录中的所有内容" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "排除包含 FILE 的目录" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "排除版本控制系统目录" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "排除备份和锁文件" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "避免目录中的自动降级" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "创建归档时保存在本地文件系统中" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "目录递归(默认)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "不要从文件名中清除引导符‘/’" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "跟踪符号链接;将它们所指向的文件归档并输出" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "跟踪硬链接;将它们所指向的文件归档并输出" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "MEMBER-NAME" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "从归档中的 MEMBER-NAME 成员处开始" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "只保存比 DATE-OR-FILE 更新的文件" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "DATE" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "当只有数据改变时比较数据和时间" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "CONTROL" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "在删除前备份,选择 CONTROL 版本" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "STRING" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" msgstr "" "在删除前备份,除非被环境变量 SIMPLE_BACKUP_SUFFIX 覆盖,否则覆盖常用后缀(‘’)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "文件名变换:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "解压时从文件名中清除 NUMBER 个引导部分" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "EXPRESSION" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "使用 sed 代替 EXPRESSION 来进行文件名变换" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "文件名匹配选项(同时影响排除和包括模式串):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "忽略大小写" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "模式串匹配文件名头部" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "模式串匹配任意‘/’后字符(默认对 exclusion 有效)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "匹配大小写(默认)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "使用通配符(默认对 exclusion )" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "逐字匹配字符串" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "通配符不匹配‘/’" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "通配符匹配‘/’(默认对排除操作有效)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "提示性输出:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "详细地列出处理的文件" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "KEYWORD" -#: src/tar.c:740 +#: src/tar.c:741 msgid "warning control" msgstr "警告控制:" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "每隔 NUMBER 个记录显示进度信息(默认为 10 个)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "ACTION" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "在每个检查点上执行 ACTION" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "只要不是所有链接都被输出就打印信息" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "SIGNAL" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2013,118 +2020,123 @@ msgstr "" "号为: SIGHUP,SIGQUIT,SIGINT,SIGUSR1 和 SIGUSR2;同时也接受不带 SIG 前缀的" "信号名称" -#: src/tar.c:755 -msgid "print file modification dates in UTC" -msgstr "以 UTC 格式打印文件修改信息" +#: src/tar.c:756 +msgid "print file modification times in UTC" +msgstr "以 UTC 格式打印文件修改时间" + +#: src/tar.c:758 +#, fuzzy +msgid "print file time to its full resolution" +msgstr "将文件时间打印至显示器" -#: src/tar.c:757 +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "将详细输出发送至 FILE" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "每个信息都显示归档内的块数" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "每次操作都要求确认" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "显示 tar 默认选项" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "列表或解压时,列出每个不匹配查找标准的目录" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "显示变换后的文件名或归档名" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "STYLE" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "设置名称引用风格;有效的 STYLE 值请参阅以下说明" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "来自 STRING 的额外的引用字符" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "禁用来自 STRING 的字符引用" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "兼容性选项:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "创建归档时,相当于 --old-archive;展开归档时,相当于 --no-same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "其它选项:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "禁用某些潜在的有危险的选项" -#: src/tar.c:927 +#: src/tar.c:930 msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "您不能指定超过一个\"-Acdtrux\"或是\"--test-label\"外的选项" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "压缩选项冲突" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "未知的信号名称: %s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "找不到数据样板文件" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "把未知的时间格式 %2$s 替换为 %1$s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "选项 %s: 将日期 ‘%s’ 当作 %s" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s: 文件列表已经读取" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s: 读取的文件名含有空字符" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, c-format msgid "filter the archive through %s" msgstr "通过 %s 过滤归档" -#: src/tar.c:1290 +#: src/tar.c:1296 msgid "Valid arguments for the --quoting-style option are:" msgstr "--quoting-style 选项的有效参数为:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2132,53 +2144,53 @@ msgstr "" "\n" "æ­¤ tar 默认为:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 #, fuzzy msgid "Invalid blocking factor" msgstr "无效的块因子" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "无效的磁带长度" -#: src/tar.c:1511 +#: src/tar.c:1529 msgid "Invalid incremental level value" msgstr "无效的增量度" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "多于一个时间阈值" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 #, fuzzy msgid "Invalid sparse version value" -msgstr "无效的离散版本值" +msgstr "无效的稀疏版本值" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "此平台不支持 --atime-preserve=‘system’ " -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "--checkpoint 值不是个整数" -#: src/tar.c:1830 +#: src/tar.c:1848 msgid "Invalid group" msgstr "无效的组" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "选项中给出无效的访问模式" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "无效的数字" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "无效的所有者" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2186,114 +2198,114 @@ msgstr "" "--preserve 选项已经废弃了,请使用 --preserve-permissions --preserve-order 代" "替" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "无效的记录大小" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "记录大小必须是 %d 的倍数。" -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "无效的元素数" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "仅允许使用一个 --to-command 选项" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "错误的压缩参数: %s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "未知的压缩参数: ‘%c’" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "本 tar 不支持选项“-[0-7][lmh]”" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FILE]..." -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "旧选项“%c”需要参数。" -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "没有一个文件列表时 --occurrence 是没有意义的" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence 不能用于请求的操作模式中" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "多个归档文件需要使用“-M”选项" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "无法在使用 --newer 的时候使用 --listed-incremental" -#: src/tar.c:2387 +#: src/tar.c:2406 msgid "--level is meaningless without --listed-incremental" msgstr "没有 --listed-incremental 选项的话 --level 选项是无意义的" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s:卷标过长 (限制为 %lu 字节)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "无法检验多卷归档文件" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "无法检验压缩归档文件" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "无法使用多卷压缩归档文件" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "无法联结压缩归档文件" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option 只能用于 POSIX 归档中" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "卷长度不可小于记录大小" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order 与 --listed-incremental 不匹配" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "谨慎地拒绝创建空归档文件" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "选项“-Aru”与“-f -”不兼容" -#: src/tar.c:2592 +#: src/tar.c:2621 msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "您必须从\"-Acdtrux\"或是\"--test-label\"选项中指定一个" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "由于前次错误,将以上次的错误状态退出" @@ -2304,83 +2316,83 @@ msgid "%s: File shrank by %s byte" msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s:文件缩小 %s 字节" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "关键字 %s 未知或还未实现" -#: src/xheader.c:173 +#: src/xheader.c:174 msgid "Time stamp is out of allowed range" msgstr "时间标记超出允许范围" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "不能使用模式 %s" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "不能覆盖关键字 %s" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "错误的扩展头: 缺少 length" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "扩展头长度超出所允许的范围" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "扩展头长度 %*s 超出范围" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "错误的扩展头: length 后缺少空白符" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "错误的扩展头: 缺少等于符号" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "错误的扩展头: 缺少空行" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "忽略未知的扩展头关键字‘%s’" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "生成的关键字/值对太长了(keyword=%s, length=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "扩展头 %s=%s 超出范围 %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "错误的扩展头: %s=%s 无效" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "错误的扩展头: %s=%s 溢出" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "错误的扩展头: %s 无效: 非预期的分隔符 %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "错误的扩展头: %s 无效: 奇怪的数值" @@ -2421,7 +2433,7 @@ msgstr "写入操作的检查点 %u" msgid "Read checkpoint %u" msgstr "读取操作的检查点 %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2429,87 +2441,86 @@ msgstr "" "genfile 为 GNU paxutils 测试软件操作数据文件。\n" "选项为:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "文件创建选项:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "SIZE" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "创建指定 SIZE 的文件" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "写入文件 NAME,而不是标准输出" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "从 FILE 读取文件名" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T 读取以 NULL 终止的名字" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "以指定的 PATTERN 填充文件。PATTERN 可以是‘default’或是‘zeros’" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" -msgstr "离散文件的块大小" +msgstr "稀疏文件的块大小" -#: tests/genfile.c:143 -#, fuzzy +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." -msgstr "生成离散文件。命令行其余选项指定 map 文件。" +msgstr "生成稀疏文件。命令行其余选项指定 map 文件。" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "OFFSET" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "在写入数据前定位至指定的偏移位" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "文件统计选项:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "打印每个给定文件的 stat 结构定义的内容。默认 FORMAT 是: " -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "同步执行选项:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 msgid "OPTION" msgstr "OPTION" -#: tests/genfile.c:165 +#: tests/genfile.c:164 msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " "--unlink" msgstr "" "执行 ARGS。与 --checkpoint 或 --cut,--append,--touch 中的一个一起使用时有用" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "只要达到 checkpoint NUMBER 指定的数值就执行指定的操作(见下)" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "为下一个 --touch 选项设定日期" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "显示执行的 checkpoints 以及 COMMAND 的退出状态" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2517,147 +2528,150 @@ msgstr "" "同步执行操作。当达到由 --checkpoint 选项指定的 checkpoint 数值时会执行这些操" "作。" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "截短 FILE 至由前面 --length 选项指定的大小(如果未指定的话,默认 0)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "添加 SIZE 字节至 FILE。SIZE 由前面的 --length 选项指定。" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "更新 FILE 的访问和修改时间" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "执行 COMMAND" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "删除 FILE" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "无效的值: %s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "数值超出所允许的范围: %s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "负值: %s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "stat(%s) 错误" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "需要文件长度为 %lu,实际为 %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "所创建的文件非稀疏文件" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "“%s”附近解析数字错误" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "未知的数据格式" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[ARGS...]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "无法打开“%s”" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "无法定位" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "文件名包含空字符" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "使用 --file 选项无法在标准输出上生成离散文件" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "不正确的掩码(“%s”附近)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "未知的文件掩码位“%s”" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "无法设定“%s”的时间" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, c-format msgid "cannot unlink `%s'" msgstr "无法删除 \"%s\"" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "命令成功退出\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "命令出错,状态 %d\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "命令由信号 %d 终止了\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "命令由信号 %d 停止了\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "命令输出 core\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "命令终止\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat 选项需要文件名" +#~ msgid "Cannot save working directory" +#~ msgstr "无法保存工作目录" + #~ msgid "Cannot resolve hostname %s" #~ msgstr "无法解析主机 %s" diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo index 61b79cc0ae0b3c6f59be907b47979dbbe9c761cc..e89e8d069b2f512e63f769c1eac45766e49f283c 100644 GIT binary patch delta 10637 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 delta 10864 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 diff --git a/po/zh_TW.po b/po/zh_TW.po index b4d8698..09d880d 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -3,14 +3,16 @@ # This file is distributed under the same license as the tar package. # Wei-Lun Chao , 2009. # +#: src/create.c:1550 msgid "" msgstr "" "Project-Id-Version: tar 1.22\n" "Report-Msgid-Bugs-To: bug-tar@gnu.org\n" -"POT-Creation-Date: 2010-03-10 12:53+0200\n" +"POT-Creation-Date: 2010-10-24 23:08+0300\n" "PO-Revision-Date: 2009-08-30 00:17+0800\n" "Last-Translator: Wei-Lun Chao \n" "Language-Team: Chinese (traditional) \n" +"Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -84,7 +86,7 @@ msgstr "試試「%s --help」或「%s --usage」以獲得更多資訊。\n" msgid "Report bugs to %s.\n" msgstr "請向 %s 回報錯誤。\n" -#: gnu/argp-help.c:1929 gnu/error.c:155 +#: gnu/argp-help.c:1929 gnu/error.c:183 msgid "Unknown system error" msgstr "不明的系統錯誤" @@ -96,8 +98,8 @@ msgstr "給出這個使用方式列表" msgid "give a short usage message" msgstr "給出簡短的使用訊息" -#: gnu/argp-parse.c:85 src/tar.c:488 src/tar.c:490 src/tar.c:559 -#: tests/genfile.c:131 +#: gnu/argp-parse.c:85 src/tar.c:489 src/tar.c:491 src/tar.c:560 +#: tests/genfile.c:130 msgid "NAME" msgstr "名稱" @@ -135,56 +137,61 @@ msgstr "(程式錯誤) 選項應該已被辨識 !?" msgid "write error" msgstr "寫入錯誤" -#: gnu/getopt.c:531 gnu/getopt.c:547 +#: gnu/getopt.c:529 gnu/getopt.c:545 #, fuzzy, c-format msgid "%s: option '%s' is ambiguous\n" msgstr "%s:選項「%s」是模稜兩可的\n" -#: gnu/getopt.c:580 gnu/getopt.c:584 +#: gnu/getopt.c:578 gnu/getopt.c:582 #, fuzzy, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s:選項「--%s」不允許引數\n" -#: gnu/getopt.c:593 gnu/getopt.c:598 +#: gnu/getopt.c:591 gnu/getopt.c:596 #, fuzzy, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s:選項「%c%s」不允許引數\n" -#: gnu/getopt.c:641 gnu/getopt.c:660 gnu/getopt.c:963 gnu/getopt.c:982 +#: gnu/getopt.c:639 gnu/getopt.c:658 #, fuzzy, c-format -msgid "%s: option '%s' requires an argument\n" +msgid "%s: option '--%s' requires an argument\n" msgstr "%s:選項「%s」需要一個引數\n" -#: gnu/getopt.c:698 gnu/getopt.c:701 +#: gnu/getopt.c:696 gnu/getopt.c:699 #, fuzzy, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s:無法辨識的選項「--%s」\n" -#: gnu/getopt.c:709 gnu/getopt.c:712 +#: gnu/getopt.c:707 gnu/getopt.c:710 #, fuzzy, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s:無法辨識的選項「%c%s」\n" -#: gnu/getopt.c:761 gnu/getopt.c:764 +#: gnu/getopt.c:759 gnu/getopt.c:762 #, fuzzy, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s:無效的選項 -- %c\n" -#: gnu/getopt.c:814 gnu/getopt.c:831 gnu/getopt.c:1034 gnu/getopt.c:1052 +#: gnu/getopt.c:812 gnu/getopt.c:829 gnu/getopt.c:1037 gnu/getopt.c:1055 #, fuzzy, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s:選項需要一個引數 -- %c\n" -#: gnu/getopt.c:884 gnu/getopt.c:900 +#: gnu/getopt.c:885 gnu/getopt.c:901 #, fuzzy, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s:選項「-W %s」是模稜兩可的\n" -#: gnu/getopt.c:924 gnu/getopt.c:942 +#: gnu/getopt.c:925 gnu/getopt.c:943 #, fuzzy, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s:選項「-W %s」不允許引數\n" +#: gnu/getopt.c:964 gnu/getopt.c:982 +#, fuzzy, c-format +msgid "%s: option '-W %s' requires an argument\n" +msgstr "%s:選項「%s」需要一個引數\n" + #: gnu/obstack.c:425 gnu/obstack.c:427 gnu/xalloc-die.c:36 msgid "memory exhausted" msgstr "記憶體已耗盡" @@ -529,186 +536,186 @@ msgstr "" msgid "Cannot execute remote shell" msgstr "無法執行遠端命令殼" -#: rmt/rmt.c:413 +#: rmt/rmt.c:432 msgid "Seek direction out of range" msgstr "尋覓方向超出範圍" -#: rmt/rmt.c:419 +#: rmt/rmt.c:438 #, fuzzy msgid "Invalid seek direction" msgstr "選項中的模式無效" -#: rmt/rmt.c:427 +#: rmt/rmt.c:446 #, fuzzy msgid "Invalid seek offset" msgstr "無效的大小:%s" -#: rmt/rmt.c:433 +#: rmt/rmt.c:452 msgid "Seek offset out of range" msgstr "尋覓偏移值超出範圍" -#: rmt/rmt.c:474 rmt/rmt.c:525 rmt/rmt.c:589 +#: rmt/rmt.c:493 rmt/rmt.c:544 rmt/rmt.c:608 #, fuzzy msgid "Invalid byte count" msgstr "無效的磁帶長度" -#: rmt/rmt.c:480 rmt/rmt.c:531 rmt/rmt.c:595 rmt/rmt.c:606 +#: rmt/rmt.c:499 rmt/rmt.c:550 rmt/rmt.c:614 rmt/rmt.c:625 #, fuzzy msgid "Byte count out of range" msgstr "尋覓偏移值超出範圍" -#: rmt/rmt.c:539 +#: rmt/rmt.c:558 #, fuzzy msgid "Premature eof" msgstr "rmtd:檔案突然結束\n" -#: rmt/rmt.c:582 +#: rmt/rmt.c:601 #, fuzzy msgid "Invalid operation code" msgstr "主要操作模式:" -#: rmt/rmt.c:617 rmt/rmt.c:661 +#: rmt/rmt.c:636 rmt/rmt.c:680 msgid "Operation not supported" msgstr "" -#: rmt/rmt.c:645 +#: rmt/rmt.c:664 #, fuzzy msgid "Unexpected arguments" msgstr "未預期的保存檔結尾" -#: rmt/rmt.c:670 +#: rmt/rmt.c:689 msgid "Manipulate a tape drive, accepting commands from a remote process" msgstr "" -#: rmt/rmt.c:677 src/tar.c:423 src/tar.c:427 src/tar.c:557 src/tar.c:572 -#: src/tar.c:703 src/tar.c:741 tests/genfile.c:167 +#: rmt/rmt.c:696 src/tar.c:424 src/tar.c:428 src/tar.c:558 src/tar.c:573 +#: src/tar.c:704 src/tar.c:742 tests/genfile.c:166 msgid "NUMBER" msgstr "數目" -#: rmt/rmt.c:678 +#: rmt/rmt.c:697 msgid "set debug level" msgstr "" -#: rmt/rmt.c:679 src/tar.c:421 src/tar.c:562 src/tar.c:638 src/tar.c:642 -#: src/tar.c:654 src/tar.c:664 src/tar.c:667 src/tar.c:669 src/tar.c:756 -#: tests/genfile.c:133 tests/genfile.c:181 tests/genfile.c:185 -#: tests/genfile.c:188 tests/genfile.c:194 +#: rmt/rmt.c:698 src/tar.c:422 src/tar.c:563 src/tar.c:639 src/tar.c:643 +#: src/tar.c:655 src/tar.c:665 src/tar.c:668 src/tar.c:670 src/tar.c:759 +#: tests/genfile.c:132 tests/genfile.c:180 tests/genfile.c:184 +#: tests/genfile.c:187 tests/genfile.c:193 msgid "FILE" msgstr "檔案" -#: rmt/rmt.c:680 +#: rmt/rmt.c:699 msgid "set debug output file name" msgstr "" -#: rmt/rmt.c:696 rmt/rmt.c:764 +#: rmt/rmt.c:715 rmt/rmt.c:783 #, fuzzy, c-format msgid "cannot open %s" msgstr "無法開啟「%s」" -#: rmt/rmt.c:761 tests/genfile.c:885 tests/genfile.c:902 +#: rmt/rmt.c:780 tests/genfile.c:884 tests/genfile.c:901 #, c-format msgid "too many arguments" msgstr "太多引數" -#: rmt/rmt.c:803 +#: rmt/rmt.c:822 msgid "Garbage command" msgstr "無用的命令" -#: src/buffer.c:321 src/buffer.c:326 src/buffer.c:572 src/buffer.c:1176 -#: src/buffer.c:1222 src/buffer.c:1251 src/delete.c:211 src/list.c:171 -#: src/update.c:189 +#: src/buffer.c:386 src/buffer.c:391 src/buffer.c:635 src/buffer.c:1250 +#: src/buffer.c:1296 src/buffer.c:1325 src/delete.c:211 src/list.c:184 +#: src/update.c:198 msgid "This does not look like a tar archive" msgstr "這個看起來不像 tar 保存檔" -#: src/buffer.c:385 src/buffer.c:394 +#: src/buffer.c:450 src/buffer.c:459 msgid "Total bytes written" msgstr "已寫入位元組總數" -#: src/buffer.c:392 src/buffer.c:406 +#: src/buffer.c:457 src/buffer.c:471 msgid "Total bytes read" msgstr "已讀取位元組總數" -#: src/buffer.c:396 +#: src/buffer.c:461 #, c-format msgid "Total bytes deleted: %s\n" msgstr "已刪除位元組總數:%s\n" -#: src/buffer.c:485 +#: src/buffer.c:550 msgid "(pipe)" msgstr "(管線)" -#: src/buffer.c:508 +#: src/buffer.c:573 msgid "Invalid value for record_size" msgstr "無效的記錄大小" -#: src/buffer.c:511 +#: src/buffer.c:576 msgid "No archive name given" msgstr "沒有指定保存檔名稱" -#: src/buffer.c:555 +#: src/buffer.c:618 msgid "Cannot verify stdin/stdout archive" msgstr "無法檢驗標準輸出入保存檔" -#: src/buffer.c:569 +#: src/buffer.c:632 #, c-format msgid "Archive is compressed. Use %s option" msgstr "保存檔被壓縮過。使用 %s 選項" -#: src/buffer.c:626 src/tar.c:2429 +#: src/buffer.c:689 src/tar.c:2448 msgid "Cannot update compressed archives" msgstr "無法更新壓縮的保存檔" -#: src/buffer.c:705 +#: src/buffer.c:782 msgid "At beginning of tape, quitting now" msgstr "位於磁帶起始部份,立刻退出" -#: src/buffer.c:711 +#: src/buffer.c:788 msgid "Too many errors, quitting" msgstr "太多錯誤,離開中" -#: src/buffer.c:744 +#: src/buffer.c:821 #, c-format msgid "Record size = %lu block" msgid_plural "Record size = %lu blocks" msgstr[0] "記錄大小 = %lu 區塊" -#: src/buffer.c:765 +#: src/buffer.c:842 #, c-format msgid "Unaligned block (%lu byte) in archive" msgid_plural "Unaligned block (%lu bytes) in archive" msgstr[0] "保存檔中未排列的區塊 (%lu 位元組)" -#: src/buffer.c:842 +#: src/buffer.c:919 msgid "Cannot backspace archive file; it may be unreadable without -i" msgstr "無法倒退保存檔檔案;沒有 -i 也許會無法讀取" -#: src/buffer.c:874 +#: src/buffer.c:951 msgid "rmtlseek not stopped at a record boundary" msgstr "rmtlseek 無法在記錄分界處停止" -#: src/buffer.c:928 +#: src/buffer.c:1002 #, c-format msgid "%s: contains invalid volume number" msgstr "%s:包含無效的卷冊號碼" -#: src/buffer.c:963 +#: src/buffer.c:1037 msgid "Volume number overflow" msgstr "卷冊號碼已滿" -#: src/buffer.c:978 +#: src/buffer.c:1052 #, c-format msgid "Prepare volume #%d for %s and hit return: " msgstr "準備好卷冊 #%d 以完成 %s 並按下 return: " -#: src/buffer.c:984 +#: src/buffer.c:1058 msgid "EOF where user reply was expected" msgstr "到達期待使用者回答的檔案末端" -#: src/buffer.c:989 src/buffer.c:1021 +#: src/buffer.c:1063 src/buffer.c:1095 msgid "WARNING: Archive is incomplete" msgstr "警告:保存檔不完整" -#: src/buffer.c:1003 +#: src/buffer.c:1077 #, c-format msgid "" " n name Give a new file name for the next (and subsequent) volume(s)\n" @@ -719,71 +726,71 @@ msgstr "" " q 放棄打包\n" " y 或 newline 繼續作業\n" -#: src/buffer.c:1008 +#: src/buffer.c:1082 #, c-format msgid " ! Spawn a subshell\n" msgstr " ! 衍生一個子命令殼\n" -#: src/buffer.c:1009 +#: src/buffer.c:1083 #, c-format msgid " ? Print this list\n" msgstr " ? 列印這個清單\n" -#: src/buffer.c:1016 +#: src/buffer.c:1090 msgid "No new volume; exiting.\n" msgstr "沒有新卷冊;離開。\n" -#: src/buffer.c:1049 +#: src/buffer.c:1123 msgid "File name not specified. Try again.\n" msgstr "檔案名稱尚未指定。再次嘗試。\n" -#: src/buffer.c:1062 +#: src/buffer.c:1136 #, c-format msgid "Invalid input. Type ? for help.\n" msgstr "無效的輸入。按下 ? 以獲得說明。\n" -#: src/buffer.c:1113 +#: src/buffer.c:1187 #, c-format msgid "%s command failed" msgstr "%s 命令失敗" -#: src/buffer.c:1294 +#: src/buffer.c:1368 #, c-format msgid "%s is possibly continued on this volume: header contains truncated name" msgstr "%s 在本卷冊中可能連續:標頭含有截斷的名稱" -#: src/buffer.c:1298 +#: src/buffer.c:1372 #, c-format msgid "%s is not continued on this volume" msgstr "%s 在本卷冊中並不連續" -#: src/buffer.c:1312 +#: src/buffer.c:1386 #, c-format msgid "%s is the wrong size (%s != %s + %s)" msgstr "%s 的大小有錯 (%s != %s + %s)" -#: src/buffer.c:1326 +#: src/buffer.c:1401 #, c-format msgid "This volume is out of sequence (%s - %s != %s)" msgstr "本卷冊已超出序列 (%s - %s !=%s)" -#: src/buffer.c:1404 src/buffer.c:1430 +#: src/buffer.c:1479 src/buffer.c:1505 #, c-format msgid "Archive not labeled to match %s" msgstr "保存檔未標誌為符合 %s" -#: src/buffer.c:1434 +#: src/buffer.c:1509 #, c-format msgid "Volume %s does not match %s" msgstr "卷冊 %s 不符合 %s" -#: src/buffer.c:1530 +#: src/buffer.c:1603 #, c-format msgid "" "%s: file name too long to be stored in a GNU multivolume header, truncated" msgstr "%s:檔名太長,無法儲存於 GNU 多重卷冊標頭之中,已截斷" -#: src/buffer.c:1749 +#: src/buffer.c:1794 msgid "write did not end on a block boundary" msgstr "並未於區段界限結束寫入" @@ -793,20 +800,20 @@ msgid "Could only read %lu of %lu byte" msgid_plural "Could only read %lu of %lu bytes" msgstr[0] "只能讀取 %2$lu 位元組中的 %1$lu 個" -#: src/compare.c:105 src/compare.c:388 +#: src/compare.c:105 src/compare.c:382 msgid "Contents differ" msgstr "內容不同" -#: src/compare.c:131 src/extract.c:830 src/incremen.c:1462 src/list.c:386 -#: src/list.c:1376 src/xheader.c:710 +#: src/compare.c:131 src/extract.c:958 src/incremen.c:1462 src/list.c:397 +#: src/list.c:1384 src/xheader.c:711 msgid "Unexpected EOF in archive" msgstr "未預期的保存檔結尾" -#: src/compare.c:179 src/compare.c:195 src/compare.c:313 src/compare.c:412 +#: src/compare.c:179 src/compare.c:195 src/compare.c:308 src/compare.c:406 msgid "File type differs" msgstr "檔案類型不同" -#: src/compare.c:182 src/compare.c:202 src/compare.c:327 +#: src/compare.c:182 src/compare.c:202 src/compare.c:322 msgid "Mode differs" msgstr "模式不同" @@ -822,141 +829,141 @@ msgstr "Gid 號碼不同" msgid "Mod time differs" msgstr "修改時間不同" -#: src/compare.c:215 src/compare.c:420 +#: src/compare.c:215 src/compare.c:414 msgid "Size differs" msgstr "大小不同" -#: src/compare.c:269 +#: src/compare.c:263 #, c-format msgid "Not linked to %s" msgstr "並未鏈結至 %s" -#: src/compare.c:292 +#: src/compare.c:287 msgid "Symlink differs" msgstr "符號連結不同" -#: src/compare.c:321 +#: src/compare.c:316 msgid "Device number differs" msgstr "裝置編號不同" -#: src/compare.c:462 +#: src/compare.c:456 #, c-format msgid "Verify " msgstr "驗證 " -#: src/compare.c:469 +#: src/compare.c:463 #, c-format msgid "%s: Unknown file type `%c', diffed as normal file" msgstr "%s:不明檔案類型「%c」,會以普通檔案的方式作比較" -#: src/compare.c:524 +#: src/compare.c:518 msgid "Archive contains file names with leading prefixes removed." msgstr "保存檔包含前置文字被移除的檔案名稱。" -#: src/compare.c:526 +#: src/compare.c:520 msgid "Verification may fail to locate original files." msgstr "查核動作可能無法找到原始檔案" -#: src/compare.c:599 +#: src/compare.c:593 #, c-format msgid "VERIFY FAILURE: %d invalid header detected" msgid_plural "VERIFY FAILURE: %d invalid headers detected" msgstr[0] "驗證失敗:%d 偵測到無效的標頭" -#: src/compare.c:617 src/list.c:148 +#: src/compare.c:611 src/list.c:161 #, c-format msgid "A lone zero block at %s" msgstr "位於 %s 的孤立零值區塊" -#: src/create.c:68 +#: src/create.c:72 #, c-format msgid "%s: contains a cache directory tag %s; %s" msgstr "%s:包含一個快取目錄標記 %s; %s" -#: src/create.c:273 +#: src/create.c:261 #, c-format msgid "value %s out of %s range %s..%s; substituting %s" msgstr "數值 %s 已超出 %s 的範圍 %s..%s;以 %s 替代中" -#: src/create.c:279 +#: src/create.c:267 #, c-format msgid "value %s out of %s range %s..%s" msgstr "數值 %s 已超出 %s 的範圍 %s..%s" -#: src/create.c:339 +#: src/create.c:327 msgid "Generating negative octal headers" msgstr "正在產生負數的八進位標頭" -#: src/create.c:624 src/create.c:687 +#: src/create.c:611 src/create.c:674 #, c-format msgid "%s: file name is too long (max %d); not dumped" msgstr "%s:檔名太長 (最大 %d);未傾印" -#: src/create.c:634 +#: src/create.c:621 #, c-format msgid "%s: file name is too long (cannot be split); not dumped" msgstr "%s:檔名太長 (無法分割);未傾印" -#: src/create.c:661 +#: src/create.c:648 #, c-format msgid "%s: link name is too long; not dumped" msgstr "%s:鏈結名稱太長;未傾印" -#: src/create.c:1078 +#: src/create.c:1062 #, c-format msgid "%s: File shrank by %s byte; padding with zeros" msgid_plural "%s: File shrank by %s bytes; padding with zeros" msgstr[0] "%s:檔案縮小了 %s 位元組;以零值填補" -#: src/create.c:1175 +#: src/create.c:1158 #, c-format msgid "%s: file is on a different filesystem; not dumped" msgstr "%s:檔案位於不同的檔案系統;未傾印" -#: src/create.c:1219 src/create.c:1230 src/incremen.c:590 src/incremen.c:596 +#: src/create.c:1201 src/create.c:1212 src/incremen.c:582 src/incremen.c:588 msgid "contents not dumped" msgstr "內容無法傾印" -#: src/create.c:1362 +#: src/create.c:1416 #, c-format msgid "%s: Unknown file type; file ignored" msgstr "%s:不明檔案類型;忽略該檔案" -#: src/create.c:1472 +#: src/create.c:1527 #, fuzzy, c-format msgid "Missing links to %s." msgstr "失去至 %s 的連結。\n" -#: src/create.c:1543 +#: src/create.c:1688 #, c-format msgid "%s: file is unchanged; not dumped" msgstr "%s:檔案沒有變更;未傾印" -#: src/create.c:1552 +#: src/create.c:1697 #, c-format msgid "%s: file is the archive; not dumped" msgstr "%s:檔案是保存檔;未傾印" -#: src/create.c:1593 src/incremen.c:583 +#: src/create.c:1721 src/incremen.c:575 msgid "directory not dumped" msgstr "目錄未傾印" -#: src/create.c:1664 +#: src/create.c:1793 #, c-format msgid "%s: file changed as we read it" msgstr "%s:檔案在讀取時已變更" -#: src/create.c:1731 +#: src/create.c:1855 #, c-format msgid "%s: socket ignored" msgstr "%s:忽略通訊端" -#: src/create.c:1737 +#: src/create.c:1861 #, c-format msgid "%s: door ignored" msgstr "%s:忽略匣門" -#: src/delete.c:217 src/list.c:185 src/update.c:194 +#: src/delete.c:217 src/list.c:198 src/update.c:203 msgid "Skipping to next header" msgstr "跳至下一個標頭" @@ -964,74 +971,74 @@ msgstr "跳至下一個標頭" msgid "Deleting non-header from archive" msgstr "從保存檔中刪除無標頭者" -#: src/extract.c:211 +#: src/extract.c:277 #, c-format msgid "%s: implausibly old time stamp %s" msgstr "%s:難以確信的舊時間戳記 %s" -#: src/extract.c:229 +#: src/extract.c:295 #, c-format msgid "%s: time stamp %s is %s s in the future" msgstr "%s:時間戳記 %s 代表未來的 %s 秒" -#: src/extract.c:409 +#: src/extract.c:475 #, c-format msgid "%s: Unexpected inconsistency when making directory" msgstr "%s:產生目錄時有未預期的不一致" -#: src/extract.c:613 +#: src/extract.c:709 #, c-format msgid "%s: Directory renamed before its status could be extracted" msgstr "%s:解開目錄狀態之前已更改了名稱" -#: src/extract.c:759 +#: src/extract.c:863 msgid "Extracting contiguous files as regular files" msgstr "正在解開連續檔案為正常檔案" -#: src/extract.c:1039 +#: src/extract.c:1183 msgid "Attempting extraction of symbolic links as hard links" msgstr "嘗試解開符號連結為硬式連結" -#: src/extract.c:1183 +#: src/extract.c:1339 #, c-format msgid "%s: Cannot extract -- file is continued from another volume" msgstr "%s:無法解開 -- 檔案延續自其他卷冊" -#: src/extract.c:1190 src/list.c:1109 +#: src/extract.c:1346 src/list.c:1117 msgid "Unexpected long name header" msgstr "未預期的長名稱標頭" -#: src/extract.c:1197 +#: src/extract.c:1353 #, c-format msgid "%s: Unknown file type `%c', extracted as normal file" msgstr "%s:不明檔案類型「%c」,會以普通檔案的方式解開資料" -#: src/extract.c:1223 +#: src/extract.c:1379 #, c-format msgid "Current %s is newer or same age" msgstr "目前的 %s 較新或相同" -#: src/extract.c:1274 +#: src/extract.c:1431 #, c-format msgid "%s: Was unable to backup this file" msgstr "%s:之前無法備份這個檔案" -#: src/extract.c:1402 +#: src/extract.c:1568 #, c-format msgid "Cannot rename %s to %s" msgstr "無法將 %s 重新命名為 %s" -#: src/incremen.c:482 src/incremen.c:526 +#: src/incremen.c:474 src/incremen.c:518 #, c-format msgid "%s: Directory has been renamed from %s" msgstr "%s:目錄已從 %s 重新命名" -#: src/incremen.c:494 +#: src/incremen.c:486 #, c-format msgid "%s: Directory has been renamed" msgstr "%s:目錄已被重新命名" -#: src/incremen.c:539 +#: src/incremen.c:531 #, c-format msgid "%s: Directory is new" msgstr "%s:目錄是新的" @@ -1141,175 +1148,177 @@ msgstr "%s:正在刪除 %s\n" msgid "%s: Cannot remove" msgstr "%s:無法移除" -#: src/list.c:115 +#: src/list.c:130 #, c-format msgid "%s: Omitting" msgstr "%s:省略中" -#: src/list.c:133 +#: src/list.c:146 #, c-format msgid "block %s: ** Block of NULs **\n" msgstr "區塊 %s:** 空值區塊 **\n" -#: src/list.c:159 +#: src/list.c:172 #, c-format msgid "block %s: ** End of File **\n" msgstr "區塊 %s:** 檔案結尾 **\n" -#: src/list.c:182 src/list.c:1081 src/list.c:1344 +#: src/list.c:195 src/list.c:1089 src/list.c:1352 #, c-format msgid "block %s: " msgstr "區塊 %s:" #. TRANSLATORS: %s is type of the value (gid_t, uid_t, #. etc.) -#: src/list.c:689 +#: src/list.c:704 #, c-format msgid "Blanks in header where numeric %s value expected" msgstr "空白出現在標頭中預期為數值 %s 的地方" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:744 +#: src/list.c:759 #, c-format msgid "Archive octal value %.*s is out of %s range; assuming two's complement" msgstr "保存檔八進位數值 %.*s 超出 %s 範圍;假定為二的補數" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:755 +#: src/list.c:770 #, c-format msgid "Archive octal value %.*s is out of %s range" msgstr "保存檔八進位數值 %.*s 超出 %s 範圍" -#: src/list.c:776 +#: src/list.c:791 msgid "Archive contains obsolescent base-64 headers" msgstr "保存檔含有過時的 base-64 標頭" -#: src/list.c:790 +#: src/list.c:805 #, c-format msgid "Archive signed base-64 string %s is out of %s range" msgstr "保存檔有號 base-64 字串 %s 超出 %s 範圍" -#: src/list.c:821 +#: src/list.c:836 #, c-format msgid "Archive base-256 value is out of %s range" msgstr "保存檔 base-256 值超出 %s 範圍" #. TRANSLATORS: Second %s is a type name (gid_t,uid_t,etc.) -#: src/list.c:850 +#: src/list.c:865 #, c-format msgid "Archive contains %.*s where numeric %s value expected" msgstr "保存檔包含 %.*s 於預期為數值 %s 的地方" #. TRANSLATORS: Second %s is type name (gid_t,uid_t,etc.) -#: src/list.c:872 +#: src/list.c:887 #, c-format msgid "Archive value %s is out of %s range %s..%s" msgstr "保存檔值 %s 已超出 %s 的範圍 %s..%s" -#: src/list.c:1245 +#: src/list.c:1253 #, c-format msgid " link to %s\n" msgstr " 連結到 %s\n" -#: src/list.c:1253 +#: src/list.c:1261 #, c-format msgid " unknown file type %s\n" msgstr " 不明檔案類型 %s\n" -#: src/list.c:1271 +#: src/list.c:1279 #, c-format msgid "--Long Link--\n" msgstr "--長 連 結--\n" -#: src/list.c:1275 +#: src/list.c:1283 #, c-format msgid "--Long Name--\n" msgstr "--長 名 稱--\n" -#: src/list.c:1279 +#: src/list.c:1287 #, c-format msgid "--Volume Header--\n" msgstr "--卷 冊 標 é ­--\n" -#: src/list.c:1287 +#: src/list.c:1295 #, c-format msgid "--Continued at byte %s--\n" msgstr "--於第 %s 位元組繼續--\n" -#: src/list.c:1349 +#: src/list.c:1357 msgid "Creating directory:" msgstr "正在建立目錄:" -#: src/misc.c:502 +#: src/misc.c:298 +#, fuzzy +msgid "Cannot get working directory" +msgstr "無法變更工作目錄" + +#: src/misc.c:571 #, c-format msgid "Renaming %s to %s\n" msgstr "正在將 %s 重新命名為 %s\n" -#: src/misc.c:511 src/misc.c:529 +#: src/misc.c:580 src/misc.c:599 #, c-format msgid "%s: Cannot rename to %s" msgstr "%s:無法重新命名為 %s" -#: src/misc.c:534 +#: src/misc.c:604 #, c-format msgid "Renaming %s back to %s\n" msgstr "將 %s 的名稱還原為 %s\n" -#: src/misc.c:669 -msgid "Cannot save working directory" -msgstr "無法儲存工作目錄" - -#: src/misc.c:675 -msgid "Cannot change working directory" -msgstr "無法變更工作目錄" - -#: src/misc.c:759 +#: src/misc.c:851 #, c-format msgid "%s: File removed before we read it" msgstr "%s:讀取檔案之前已被移除" -#: src/misc.c:774 +#: src/misc.c:866 #, fuzzy, c-format msgid "%s: Directory removed before we read it" msgstr "%s:讀取檔案之前已被移除" -#: src/misc.c:795 +#: src/misc.c:887 msgid "child process" msgstr "子進程" -#: src/misc.c:804 +#: src/misc.c:896 msgid "interprocess channel" msgstr "進程間通道" -#: src/names.c:601 +#: src/names.c:594 #, fuzzy msgid "Pattern matching characters used in file names" msgstr "在檔案名稱中使用的式樣匹配字元。請," -#: src/names.c:603 +#: src/names.c:596 #, fuzzy msgid "" "Use --wildcards to enable pattern matching, or --no-wildcards to suppress " "this warning" msgstr "使用 --wildcards 以啟用式樣匹配,或 --no-wildcards 來" -#: src/names.c:619 src/names.c:637 +#: src/names.c:614 src/names.c:630 #, c-format msgid "%s: Not found in archive" msgstr "%s:在保存檔中找不到" -#: src/names.c:622 +#: src/names.c:615 #, c-format msgid "%s: Required occurrence not found in archive" msgstr "%s:要求項目在保存檔中找不到" -#: src/names.c:894 +#: src/names.c:649 +#, fuzzy, c-format +msgid "Archive label mismatch" +msgstr "保存檔未標誌為符合 %s" + +#: src/names.c:953 #, fuzzy msgid "" "Using -C option inside file list is not allowed with --listed-incremental" msgstr "--preserve-order 與 --listed-incremental 不相容" -#: src/names.c:900 +#: src/names.c:959 #, fuzzy msgid "Only one -C option is allowed with --listed-incremental" msgstr "--preserve-order 與 --listed-incremental 不相容" @@ -1334,7 +1343,7 @@ msgid "" "Unknown quoting style `%s'. Try `%s --quoting-style=help' to get a list." msgstr "不明引號樣式「%s」。嘗試「%s --quoting-style=help」以取得清單。" -#: src/tar.c:347 +#: src/tar.c:348 msgid "" "GNU `tar' saves many files together into a single tape or disk archive, and " "can restore individual files from the archive.\n" @@ -1352,7 +1361,7 @@ msgstr "" " tar -tvf archive.tar # 詳細列出 archive.tar 中的所有檔案。\n" " tar -xf archive.tar # 解開 archive.tar 中的所有檔案。\n" -#: src/tar.c:356 +#: src/tar.c:357 msgid "" "The backup suffix is `~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.\n" "The version control may be set with --backup or VERSION_CONTROL, values " @@ -1371,79 +1380,79 @@ msgstr "" " nil, existing 若有數字的備份檔已經存在則使用數字,否則使用普通方式備份\n" " never, simple 永遠使用普通方式備份\n" -#: src/tar.c:386 +#: src/tar.c:387 msgid "Main operation mode:" msgstr "主要操作模式:" -#: src/tar.c:389 +#: src/tar.c:390 msgid "list the contents of an archive" msgstr "列出保存檔的內容" -#: src/tar.c:391 +#: src/tar.c:392 msgid "extract files from an archive" msgstr "從保存檔中解開檔案" -#: src/tar.c:394 +#: src/tar.c:395 msgid "create a new archive" msgstr "建立新的保存檔" -#: src/tar.c:396 +#: src/tar.c:397 msgid "find differences between archive and file system" msgstr "在保存檔與檔案系統之間找出差異" -#: src/tar.c:399 +#: src/tar.c:400 msgid "append files to the end of an archive" msgstr "加入檔案到保存檔末端" -#: src/tar.c:401 +#: src/tar.c:402 msgid "only append files newer than copy in archive" msgstr "只加入比保存檔中複本還新的檔案" -#: src/tar.c:403 +#: src/tar.c:404 msgid "append tar files to an archive" msgstr "加入 tar 檔案到保存檔中" -#: src/tar.c:406 +#: src/tar.c:407 msgid "delete from the archive (not on mag tapes!)" msgstr "從保存檔中刪除 (並非在磁帶上!)" -#: src/tar.c:408 +#: src/tar.c:409 msgid "test the archive volume label and exit" msgstr "測試保存檔卷冊標籤然後離開" -#: src/tar.c:413 +#: src/tar.c:414 msgid "Operation modifiers:" msgstr "運算變更項:" -#: src/tar.c:416 +#: src/tar.c:417 msgid "handle sparse files efficiently" msgstr "有效率地處理稀疏檔案" -#: src/tar.c:417 +#: src/tar.c:418 msgid "MAJOR[.MINOR]" msgstr "MAJOR[.MINOR]" -#: src/tar.c:418 +#: src/tar.c:419 msgid "set version of the sparse format to use (implies --sparse)" msgstr "設定稀疏格式版本以使用 (意味著 --sparse)" -#: src/tar.c:420 +#: src/tar.c:421 msgid "handle old GNU-format incremental backup" msgstr "處理舊型 GNU-格式之遞增備份" -#: src/tar.c:422 +#: src/tar.c:423 msgid "handle new GNU-format incremental backup" msgstr "處理新型 GNU-格式之遞增備份" -#: src/tar.c:424 +#: src/tar.c:425 msgid "dump level for created listed-incremental archive" msgstr "" -#: src/tar.c:426 +#: src/tar.c:427 msgid "do not exit with nonzero on unreadable files" msgstr "離開無法讀取的檔案時不要回傳非零的值" -#: src/tar.c:428 +#: src/tar.c:429 msgid "" "process only the NUMBERth occurrence of each file in the archive; this " "option is valid only in conjunction with one of the subcommands --delete, --" @@ -1454,120 +1463,120 @@ msgstr "" "delete、--diff、--extract 或 --list 等次命令之一合併使用時才有效,而且要經由" "命令列或是 -T 選項來提供一個檔案序列。預設的數目是 1。" -#: src/tar.c:434 +#: src/tar.c:435 msgid "archive is seekable" msgstr "保存檔是可尋指的" -#: src/tar.c:436 +#: src/tar.c:437 #, fuzzy msgid "archive is not seekable" msgstr "保存檔是可尋指的" -#: src/tar.c:438 +#: src/tar.c:439 msgid "do not check device numbers when creating incremental archives" msgstr "不檢查裝置數量時建立遞增檔案" -#: src/tar.c:441 +#: src/tar.c:442 msgid "check device numbers when creating incremental archives (default)" msgstr "檢查裝置數量時建立遞增檔案 (預設)" -#: src/tar.c:447 +#: src/tar.c:448 msgid "Overwrite control:" msgstr "覆寫控制:" -#: src/tar.c:450 +#: src/tar.c:451 msgid "attempt to verify the archive after writing it" msgstr "嘗試在寫入之後驗證保存檔" -#: src/tar.c:452 +#: src/tar.c:453 msgid "remove files after adding them to the archive" msgstr "在加入檔案至保存檔之後移除它們" -#: src/tar.c:454 +#: src/tar.c:455 msgid "don't replace existing files when extracting" msgstr "解開時不要替換既有的檔案" -#: src/tar.c:456 +#: src/tar.c:457 msgid "don't replace existing files that are newer than their archive copies" msgstr "不要替換既有且比它們在保存檔中複本還新的檔案" -#: src/tar.c:458 +#: src/tar.c:459 msgid "overwrite existing files when extracting" msgstr "解開時覆寫既有檔案" -#: src/tar.c:460 +#: src/tar.c:461 msgid "remove each file prior to extracting over it" msgstr "在解開並覆寫檔案之前先移除它" -#: src/tar.c:462 +#: src/tar.c:463 msgid "empty hierarchies prior to extracting directory" msgstr "在解開目錄之前先清空階層結構" -#: src/tar.c:464 +#: src/tar.c:465 msgid "preserve metadata of existing directories" msgstr "保留既有目錄的後設資料" -#: src/tar.c:466 +#: src/tar.c:467 msgid "overwrite metadata of existing directories when extracting (default)" msgstr "解開時覆寫既有目錄的後設資料 (預設)" -#: src/tar.c:472 +#: src/tar.c:473 msgid "Select output stream:" msgstr "選取輸出串流:" -#: src/tar.c:475 +#: src/tar.c:476 msgid "extract files to standard output" msgstr "解開檔案到標準輸出" -#: src/tar.c:476 src/tar.c:535 src/tar.c:537 tests/genfile.c:191 +#: src/tar.c:477 src/tar.c:536 src/tar.c:538 tests/genfile.c:190 msgid "COMMAND" msgstr "命令" -#: src/tar.c:477 +#: src/tar.c:478 msgid "pipe extracted files to another program" msgstr "將解開的檔案管線引導到另外的程式" -#: src/tar.c:479 +#: src/tar.c:480 msgid "ignore exit codes of children" msgstr "忽略子進程的離開代碼" -#: src/tar.c:481 +#: src/tar.c:482 msgid "treat non-zero exit codes of children as error" msgstr "將子進程的非零離開代碼視為錯誤" -#: src/tar.c:486 +#: src/tar.c:487 msgid "Handling of file attributes:" msgstr "檔案屬性的處理:" -#: src/tar.c:489 +#: src/tar.c:490 msgid "force NAME as owner for added files" msgstr "強制以 NAME 做為加入檔案的擁有者" -#: src/tar.c:491 +#: src/tar.c:492 msgid "force NAME as group for added files" msgstr "強制以 NAME 做為加入檔案的群組" -#: src/tar.c:492 src/tar.c:689 +#: src/tar.c:493 src/tar.c:690 msgid "DATE-OR-FILE" msgstr "檔案的日期" -#: src/tar.c:493 +#: src/tar.c:494 msgid "set mtime for added files from DATE-OR-FILE" msgstr "將加入檔案的 mtime 設定為 DATE-OR-FILE" -#: src/tar.c:494 +#: src/tar.c:495 msgid "CHANGES" msgstr "變更" -#: src/tar.c:495 +#: src/tar.c:496 msgid "force (symbolic) mode CHANGES for added files" msgstr "強制將 (符號) 模式 CHANGES 用於已加入檔案" -#: src/tar.c:497 +#: src/tar.c:498 msgid "METHOD" msgstr "方法" -#: src/tar.c:498 +#: src/tar.c:499 msgid "" "preserve access times on dumped files, either by restoring the times after " "reading (METHOD='replace'; default) or by not setting the times in the first " @@ -1576,183 +1585,183 @@ msgstr "" "保留傾印檔案的存取時間,若非由讀取之後的回復時間(方法=「replace」;預設),就" "是藉由原本不設定時間 (方法=「system」)" -#: src/tar.c:502 +#: src/tar.c:503 msgid "don't extract file modified time" msgstr "不要解開檔案的修改時間" -#: src/tar.c:504 +#: src/tar.c:505 #, fuzzy msgid "" "try extracting files with the same ownership as exists in the archive " "(default for superuser)" msgstr "嘗試以相同的擁有身分去解開檔案" -#: src/tar.c:506 +#: src/tar.c:507 #, fuzzy msgid "extract files as yourself (default for ordinary users)" msgstr "以自己的身分解開檔案" -#: src/tar.c:508 +#: src/tar.c:509 msgid "always use numbers for user/group names" msgstr "總是使用數字做為使用者/群組名稱" -#: src/tar.c:510 +#: src/tar.c:511 msgid "extract information about file permissions (default for superuser)" msgstr "解開檔案權限相關資訊 (預設用於超級使用者)" -#: src/tar.c:514 +#: src/tar.c:515 msgid "" "apply the user's umask when extracting permissions from the archive (default " "for ordinary users)" msgstr "從保存檔解開權限時套用使用者 umask (預設用於一般使用者)" -#: src/tar.c:516 +#: src/tar.c:517 msgid "sort names to extract to match archive" msgstr "解開時依名稱排序以符合保存檔" -#: src/tar.c:519 +#: src/tar.c:520 msgid "same as both -p and -s" msgstr "等同於指定 -p 與 -s" -#: src/tar.c:521 +#: src/tar.c:522 msgid "" "delay setting modification times and permissions of extracted directories " "until the end of extraction" msgstr "延遲設定解開目錄的修改時間和權限,直到解開結束" -#: src/tar.c:524 +#: src/tar.c:525 msgid "cancel the effect of --delay-directory-restore option" msgstr "取消 --delay-directory-restore 選項的效果" -#: src/tar.c:529 +#: src/tar.c:530 msgid "Device selection and switching:" msgstr "裝置選擇與切換:" -#: src/tar.c:531 +#: src/tar.c:532 msgid "ARCHIVE" msgstr "保存檔" -#: src/tar.c:532 +#: src/tar.c:533 msgid "use archive file or device ARCHIVE" msgstr "使用 ARCHIVE 檔案或 ARCHIVE 裝置" -#: src/tar.c:534 +#: src/tar.c:535 msgid "archive file is local even if it has a colon" msgstr "即使具有冒號,保存檔檔案仍位於本地端" -#: src/tar.c:536 +#: src/tar.c:537 msgid "use given rmt COMMAND instead of rmt" msgstr "使用給定的 rmt COMMAND 以代替 rmt" -#: src/tar.c:538 +#: src/tar.c:539 msgid "use remote COMMAND instead of rsh" msgstr "使用遠端 COMMAND 以代替 rsh" -#: src/tar.c:542 +#: src/tar.c:543 msgid "specify drive and density" msgstr "指定磁碟機與記錄密度" -#: src/tar.c:556 +#: src/tar.c:557 msgid "create/list/extract multi-volume archive" msgstr "建立/列表/解開 多重卷冊的保存檔" -#: src/tar.c:558 +#: src/tar.c:559 msgid "change tape after writing NUMBER x 1024 bytes" msgstr "在寫入 NUMBER x 1024 位元組之後更換磁帶" -#: src/tar.c:560 +#: src/tar.c:561 msgid "run script at end of each tape (implies -M)" msgstr "在每卷磁帶末端執行命令稿 (意指 -M)" -#: src/tar.c:563 +#: src/tar.c:564 msgid "use/update the volume number in FILE" msgstr "使用/更新 FILE 中的卷冊號碼" -#: src/tar.c:568 +#: src/tar.c:569 msgid "Device blocking:" msgstr "裝置分區:" -#: src/tar.c:570 +#: src/tar.c:571 msgid "BLOCKS" msgstr "區塊" -#: src/tar.c:571 +#: src/tar.c:572 msgid "BLOCKS x 512 bytes per record" msgstr "每筆記錄含有 BLOCKS x 512 位元組" -#: src/tar.c:573 +#: src/tar.c:574 msgid "NUMBER of bytes per record, multiple of 512" msgstr "每筆記錄 SIZE 位元組,為 512 的倍數" -#: src/tar.c:575 +#: src/tar.c:576 msgid "ignore zeroed blocks in archive (means EOF)" msgstr "忽略保存檔中零值的區塊 (意指 EOF)" -#: src/tar.c:577 +#: src/tar.c:578 msgid "reblock as we read (for 4.2BSD pipes)" msgstr "讀取時重新分區 (用於 4.2BSD 管線)" -#: src/tar.c:582 +#: src/tar.c:583 msgid "Archive format selection:" msgstr "保存檔格式選擇:" -#: src/tar.c:584 tests/genfile.c:154 +#: src/tar.c:585 tests/genfile.c:153 msgid "FORMAT" msgstr "格式" -#: src/tar.c:585 +#: src/tar.c:586 msgid "create archive of the given format" msgstr "以給定格式建立保存檔" -#: src/tar.c:587 +#: src/tar.c:588 msgid "FORMAT is one of the following:" msgstr "符合下列任一 FORMAT:" -#: src/tar.c:588 +#: src/tar.c:589 msgid "old V7 tar format" msgstr "舊式 V7 tar 格式" -#: src/tar.c:591 +#: src/tar.c:592 msgid "GNU format as per tar <= 1.12" msgstr "tar <= 1.12 之 GNU 格式" -#: src/tar.c:593 +#: src/tar.c:594 msgid "GNU tar 1.13.x format" msgstr "GNU tar 1.13.x 格式" -#: src/tar.c:595 +#: src/tar.c:596 msgid "POSIX 1003.1-1988 (ustar) format" msgstr "POSIX 1003.1-1988 (ustar) 格式" -#: src/tar.c:597 +#: src/tar.c:598 msgid "POSIX 1003.1-2001 (pax) format" msgstr "POSIX 1003.1-2001 (pax) 格式" -#: src/tar.c:598 +#: src/tar.c:599 msgid "same as pax" msgstr "等同 pax" -#: src/tar.c:601 +#: src/tar.c:602 msgid "same as --format=v7" msgstr "等同 --format=v7" -#: src/tar.c:604 +#: src/tar.c:605 msgid "same as --format=posix" msgstr "等同 --format=posix" -#: src/tar.c:605 +#: src/tar.c:606 msgid "keyword[[:]=value][,keyword[[:]=value]]..." msgstr "關鍵字[[:]=值][,關鍵字[[:]=值]…]" -#: src/tar.c:606 +#: src/tar.c:607 msgid "control pax keywords" msgstr "控制 pax 的關鍵字" -#: src/tar.c:607 +#: src/tar.c:608 msgid "TEXT" msgstr "文字" -#: src/tar.c:608 +#: src/tar.c:609 msgid "" "create archive with volume name TEXT; at list/extract time, use TEXT as a " "globbing pattern for volume name" @@ -1760,165 +1769,165 @@ msgstr "" "以卷冊名稱 NAME 來建立保存檔。在列表/解開時,使用 TEXT 做為卷冊名稱的萬用比對" "式樣" -#: src/tar.c:613 +#: src/tar.c:614 msgid "Compression options:" msgstr "壓縮選項:" -#: src/tar.c:615 +#: src/tar.c:616 msgid "use archive suffix to determine the compression program" msgstr "利用保存檔字尾決定壓縮程式" -#: src/tar.c:617 +#: src/tar.c:618 msgid "do not use archive suffix to determine the compression program" msgstr "不利用保存檔字尾決定壓縮程式" -#: src/tar.c:619 +#: src/tar.c:620 msgid "PROG" msgstr "程式" -#: src/tar.c:620 +#: src/tar.c:621 msgid "filter through PROG (must accept -d)" msgstr "以 PROG 過濾處理 (必須接受 -d)" -#: src/tar.c:636 +#: src/tar.c:637 msgid "Local file selection:" msgstr "本機檔案選擇:" -#: src/tar.c:639 +#: src/tar.c:640 msgid "add given FILE to the archive (useful if its name starts with a dash)" msgstr "將給定的 FILE 加入保存檔 (如果它的名稱以減號開始時就很有用)" -#: src/tar.c:640 +#: src/tar.c:641 msgid "DIR" msgstr "目錄" -#: src/tar.c:641 +#: src/tar.c:642 msgid "change to directory DIR" msgstr "更改至目錄 DIR" -#: src/tar.c:643 +#: src/tar.c:644 msgid "get names to extract or create from FILE" msgstr "從 FILE 中取得要解開或建立的名稱" -#: src/tar.c:645 +#: src/tar.c:646 msgid "-T reads null-terminated names, disable -C" msgstr "-T 讀取零值終結的名稱,停用 -C" -#: src/tar.c:647 +#: src/tar.c:648 msgid "disable the effect of the previous --null option" msgstr "停用先前 --null 選項的效果" -#: src/tar.c:649 +#: src/tar.c:650 msgid "unquote filenames read with -T (default)" msgstr "去除以 -T 讀取的檔名引號 (預設)" -#: src/tar.c:651 +#: src/tar.c:652 msgid "do not unquote filenames read with -T" msgstr "不去除以 -T 讀取的檔名引號" -#: src/tar.c:652 tests/genfile.c:137 +#: src/tar.c:653 tests/genfile.c:136 msgid "PATTERN" msgstr "式樣" -#: src/tar.c:653 +#: src/tar.c:654 msgid "exclude files, given as a PATTERN" msgstr "排除給定式樣的檔案" -#: src/tar.c:655 +#: src/tar.c:656 msgid "exclude patterns listed in FILE" msgstr "排除 FILE 中所列出的式樣" -#: src/tar.c:657 +#: src/tar.c:658 msgid "" "exclude contents of directories containing CACHEDIR.TAG, except for the tag " "file itself" msgstr "排除包含 CACHEDIR.TAG 的目錄內容,除了該標記檔案本身" -#: src/tar.c:660 +#: src/tar.c:661 msgid "exclude everything under directories containing CACHEDIR.TAG" msgstr "排除包含 CACHEDIR.TAG 的目錄之下所有東西" -#: src/tar.c:663 +#: src/tar.c:664 msgid "exclude directories containing CACHEDIR.TAG" msgstr "排除包含 CACHEDIR.TAG 的目錄" -#: src/tar.c:665 +#: src/tar.c:666 msgid "exclude contents of directories containing FILE, except for FILE itself" msgstr "排除包含 FILE 的目錄內容,除了該檔案本身" -#: src/tar.c:668 +#: src/tar.c:669 msgid "exclude everything under directories containing FILE" msgstr "排除包含 FILE 的目錄之下所有東西" -#: src/tar.c:670 +#: src/tar.c:671 msgid "exclude directories containing FILE" msgstr "排除包含 FILE 的目錄" -#: src/tar.c:672 +#: src/tar.c:673 msgid "exclude version control system directories" msgstr "排除版本控制系統目錄" -#: src/tar.c:674 +#: src/tar.c:675 msgid "exclude backup and lock files" msgstr "" -#: src/tar.c:676 +#: src/tar.c:677 msgid "avoid descending automatically in directories" msgstr "避免自動在目錄中遞降" -#: src/tar.c:678 +#: src/tar.c:679 msgid "stay in local file system when creating archive" msgstr "建立保存檔時保持在本地檔案系統中" -#: src/tar.c:680 +#: src/tar.c:681 msgid "recurse into directories (default)" msgstr "遞迴進入目錄 (預設)" -#: src/tar.c:682 +#: src/tar.c:683 msgid "don't strip leading `/'s from file names" msgstr "不要從檔案名稱中截去前導的 '/'" -#: src/tar.c:684 +#: src/tar.c:685 msgid "follow symlinks; archive and dump the files they point to" msgstr "跟隨符號連結;保存和傾印它們所指涉的檔案" -#: src/tar.c:686 +#: src/tar.c:687 msgid "follow hard links; archive and dump the files they refer to" msgstr "跟隨硬式連結;保存和傾印它們所參考的檔案" -#: src/tar.c:687 +#: src/tar.c:688 msgid "MEMBER-NAME" msgstr "成員-名稱" -#: src/tar.c:688 +#: src/tar.c:689 msgid "begin at member MEMBER-NAME in the archive" msgstr "從保存檔中名為 MEMBER-NAME 的成員開始" -#: src/tar.c:690 +#: src/tar.c:691 msgid "only store files newer than DATE-OR-FILE" msgstr "只儲存比 DATE-OF-FILE 還新的檔案" -#: src/tar.c:692 +#: src/tar.c:693 msgid "DATE" msgstr "日期" -#: src/tar.c:693 +#: src/tar.c:694 msgid "compare date and time when data changed only" msgstr "只有當資料變更時才比較日期和時間" -#: src/tar.c:694 +#: src/tar.c:695 msgid "CONTROL" msgstr "控制" -#: src/tar.c:695 +#: src/tar.c:696 msgid "backup before removal, choose version CONTROL" msgstr "移除之前先備份,選擇版本 CONTROL" -#: src/tar.c:696 src/tar.c:773 src/tar.c:775 tests/genfile.c:170 +#: src/tar.c:697 src/tar.c:776 src/tar.c:778 tests/genfile.c:169 msgid "STRING" msgstr "字串" -#: src/tar.c:697 +#: src/tar.c:698 msgid "" "backup before removal, override usual suffix ('~' unless overridden by " "environment variable SIMPLE_BACKUP_SUFFIX)" @@ -1926,96 +1935,96 @@ msgstr "" "移除之前先備份並覆寫常用後置文字 (「~」除非被環境變數 SIMPLE_BACKUP_SUFFIX 所" "蓋過)" -#: src/tar.c:702 +#: src/tar.c:703 msgid "File name transformations:" msgstr "檔案名稱變換:" -#: src/tar.c:704 +#: src/tar.c:705 msgid "strip NUMBER leading components from file names on extraction" msgstr "從檔案名稱中截去以 NUMBER 為首的成分" -#: src/tar.c:706 +#: src/tar.c:707 msgid "EXPRESSION" msgstr "表示式" -#: src/tar.c:707 +#: src/tar.c:708 msgid "use sed replace EXPRESSION to transform file names" msgstr "利用 sed 將 EXPRESSION 替代為變換檔案名稱" -#: src/tar.c:713 +#: src/tar.c:714 msgid "File name matching options (affect both exclude and include patterns):" msgstr "檔案名稱吻合選項 (同時影響排除和包含式樣同者):" -#: src/tar.c:716 +#: src/tar.c:717 msgid "ignore case" msgstr "忽略大小寫" -#: src/tar.c:718 +#: src/tar.c:719 msgid "patterns match file name start" msgstr "吻合檔案名稱開頭的式樣" -#: src/tar.c:720 +#: src/tar.c:721 msgid "patterns match after any `/' (default for exclusion)" msgstr "式樣吻合任何「/」之後的式樣 (預設排除)" -#: src/tar.c:722 +#: src/tar.c:723 msgid "case sensitive matching (default)" msgstr "大小寫需相符的吻合 (預設)" -#: src/tar.c:724 +#: src/tar.c:725 msgid "use wildcards (default for exclusion)" msgstr "使用萬用字元 (預設排除)" -#: src/tar.c:726 +#: src/tar.c:727 msgid "verbatim string matching" msgstr "逐字進行吻合" -#: src/tar.c:728 +#: src/tar.c:729 msgid "wildcards do not match `/'" msgstr "萬用字元不會吻合「/」" -#: src/tar.c:730 +#: src/tar.c:731 msgid "wildcards match `/' (default for exclusion)" msgstr "萬用字元會吻合「/」(預設排除)" -#: src/tar.c:735 +#: src/tar.c:736 msgid "Informative output:" msgstr "富含資訊的輸出:" -#: src/tar.c:738 +#: src/tar.c:739 msgid "verbosely list files processed" msgstr "詳細列出處理過的檔案" -#: src/tar.c:739 +#: src/tar.c:740 msgid "KEYWORD" msgstr "" -#: src/tar.c:740 +#: src/tar.c:741 #, fuzzy msgid "warning control" msgstr "覆寫控制:" -#: src/tar.c:742 +#: src/tar.c:743 msgid "display progress messages every NUMBERth record (default 10)" msgstr "每幾項記錄顯示一次進度訊息 (預設 10)" -#: src/tar.c:744 +#: src/tar.c:745 msgid "ACTION" msgstr "動作" -#: src/tar.c:745 +#: src/tar.c:746 msgid "execute ACTION on each checkpoint" msgstr "於每個查核點執行 ACTION" -#: src/tar.c:748 +#: src/tar.c:749 msgid "print a message if not all links are dumped" msgstr "如果並非所有連結都被傾印則印出訊息" -#: src/tar.c:749 +#: src/tar.c:750 msgid "SIGNAL" msgstr "信號" -#: src/tar.c:750 +#: src/tar.c:751 msgid "" "print total bytes after processing the archive; with an argument - print " "total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, " @@ -2026,120 +2035,125 @@ msgstr "" "許的信號是:SIGHUP、SIGQUIT、SIGINT、SIGUSR1 和 SIGUSR2;不具 SIG 前綴的名稱" "也是可接受的" -#: src/tar.c:755 -msgid "print file modification dates in UTC" +#: src/tar.c:756 +#, fuzzy +msgid "print file modification times in UTC" msgstr "以 UTC 格式印出檔案修改日期" -#: src/tar.c:757 +#: src/tar.c:758 +msgid "print file time to its full resolution" +msgstr "" + +#: src/tar.c:760 msgid "send verbose output to FILE" msgstr "將詳細輸出送至 FILE" -#: src/tar.c:759 +#: src/tar.c:762 msgid "show block number within archive with each message" msgstr "每則訊息附帶顯示在保存檔中的區塊號碼" -#: src/tar.c:761 +#: src/tar.c:764 msgid "ask for confirmation for every action" msgstr "任何動作都要求確認" -#: src/tar.c:764 +#: src/tar.c:767 msgid "show tar defaults" msgstr "顯示 tar 預設值" -#: src/tar.c:766 +#: src/tar.c:769 msgid "" "when listing or extracting, list each directory that does not match search " "criteria" msgstr "當表列或解開時,列出每一個不符合搜尋條件的目錄" -#: src/tar.c:768 +#: src/tar.c:771 msgid "show file or archive names after transformation" msgstr "顯示變換之後的檔案或保存檔名稱" -#: src/tar.c:771 +#: src/tar.c:774 msgid "STYLE" msgstr "樣式" -#: src/tar.c:772 +#: src/tar.c:775 msgid "set name quoting style; see below for valid STYLE values" msgstr "設定名稱引號樣式;參看下列的有效樣式值" -#: src/tar.c:774 +#: src/tar.c:777 msgid "additionally quote characters from STRING" msgstr "來自 STRING 的額外引號字元" -#: src/tar.c:776 +#: src/tar.c:779 msgid "disable quoting for characters from STRING" msgstr "停用來自字串的引號字元" -#: src/tar.c:781 +#: src/tar.c:784 msgid "Compatibility options:" msgstr "相容選項:" -#: src/tar.c:784 +#: src/tar.c:787 msgid "" "when creating, same as --old-archive; when extracting, same as --no-same-" "owner" msgstr "當建立時,等同於 --old-archive。當解開時,等同於 --no-same-owner" -#: src/tar.c:789 +#: src/tar.c:792 msgid "Other options:" msgstr "其他選項:" -#: src/tar.c:792 +#: src/tar.c:795 msgid "disable use of some potentially harmful options" msgstr "停用某些潛在有害的選項" -#: src/tar.c:927 +#: src/tar.c:930 #, fuzzy msgid "You may not specify more than one `-Acdtrux' or `--test-label' option" msgstr "不可指定「-Acdtrux」當中多於一個的選項" -#: src/tar.c:937 +#: src/tar.c:940 msgid "Conflicting compression options" msgstr "互相抵觸的壓縮選項" -#: src/tar.c:993 +#: src/tar.c:996 #, c-format msgid "Unknown signal name: %s" msgstr "不明的信號名稱:%s" -#: src/tar.c:1017 +#: src/tar.c:1020 msgid "Date sample file not found" msgstr "找不到日期範例檔案" -#: src/tar.c:1025 +#: src/tar.c:1028 #, c-format msgid "Substituting %s for unknown date format %s" msgstr "以 %s 代替不明的日期格式 %s" -#: src/tar.c:1054 +#: src/tar.c:1057 #, c-format msgid "Option %s: Treating date `%s' as %s" msgstr "選項 %1$s: 以 %3$s 格式來處理日期「%2$s」" -#: src/tar.c:1132 +#: src/tar.c:1135 #, c-format msgid "%s: file list already read" msgstr "%s:已經讀取檔案清單" -#: src/tar.c:1198 +#: src/tar.c:1201 #, c-format msgid "%s: file name read contains nul character" msgstr "%s:所讀檔案名稱含有空值字元" -#: src/tar.c:1265 src/tar.c:1269 src/tar.c:1273 src/tar.c:1277 src/tar.c:1281 -#: src/tar.c:1285 +#: src/tar.c:1268 src/tar.c:1272 src/tar.c:1276 src/tar.c:1280 src/tar.c:1284 +#: src/tar.c:1288 #, fuzzy, c-format msgid "filter the archive through %s" msgstr "保存檔以 xz 過濾處理" -#: src/tar.c:1290 +#: src/tar.c:1296 #, fuzzy msgid "Valid arguments for the --quoting-style option are:" msgstr "用於 --quoting-style 選項的有效引數為:" -#: src/tar.c:1294 +#: src/tar.c:1300 msgid "" "\n" "*This* tar defaults to:\n" @@ -2147,53 +2161,53 @@ msgstr "" "\n" "*這個* tar 預設為:\n" -#: src/tar.c:1393 +#: src/tar.c:1402 msgid "Invalid blocking factor" msgstr "無效的分區因子" -#: src/tar.c:1500 +#: src/tar.c:1515 msgid "Invalid tape length" msgstr "無效的磁帶長度" -#: src/tar.c:1511 +#: src/tar.c:1529 #, fuzzy msgid "Invalid incremental level value" msgstr "不當的遞增檔案格式" -#: src/tar.c:1557 +#: src/tar.c:1575 msgid "More than one threshold date" msgstr "一個以上的限定日期" -#: src/tar.c:1612 src/tar.c:1615 +#: src/tar.c:1630 src/tar.c:1633 msgid "Invalid sparse version value" msgstr "無效的稀疏版本值" -#: src/tar.c:1700 +#: src/tar.c:1718 msgid "--atime-preserve='system' is not supported on this platform" msgstr "--atime-preserve='system' 於這個平台未被支援" -#: src/tar.c:1725 +#: src/tar.c:1743 msgid "--checkpoint value is not an integer" msgstr "--checkpoint 值不是整數" -#: src/tar.c:1830 +#: src/tar.c:1848 #, fuzzy msgid "Invalid group" msgstr "%s:無效的群組" -#: src/tar.c:1837 +#: src/tar.c:1855 msgid "Invalid mode given on option" msgstr "選項中的模式無效" -#: src/tar.c:1894 +#: src/tar.c:1912 msgid "Invalid number" msgstr "無效的號碼" -#: src/tar.c:1916 +#: src/tar.c:1934 msgid "Invalid owner" msgstr "無效的擁有者" -#: src/tar.c:1946 +#: src/tar.c:1964 msgid "" "The --preserve option is deprecated, use --preserve-permissions --preserve-" "order instead" @@ -2201,116 +2215,116 @@ msgstr "" "--preserve 選項不宜再用,請以 --preserve-permissions --preserve-order 做為替" "代" -#: src/tar.c:1956 +#: src/tar.c:1975 msgid "Invalid record size" msgstr "無效的記錄大小" -#: src/tar.c:1959 +#: src/tar.c:1978 #, c-format msgid "Record size must be a multiple of %d." msgstr "記錄大小必須是 %d 的倍數。" -#: src/tar.c:2000 +#: src/tar.c:2019 msgid "Invalid number of elements" msgstr "無效的元素號碼" -#: src/tar.c:2020 +#: src/tar.c:2039 msgid "Only one --to-command option allowed" msgstr "只允許一個 --to-command 選項" -#: src/tar.c:2100 +#: src/tar.c:2119 #, c-format msgid "Malformed density argument: %s" msgstr "異常的密度引數:%s" -#: src/tar.c:2126 +#: src/tar.c:2145 #, c-format msgid "Unknown density: `%c'" msgstr "不明的密度:「%c」" -#: src/tar.c:2143 +#: src/tar.c:2162 #, c-format msgid "Options `-[0-7][lmh]' not supported by *this* tar" msgstr "此版本的 tar 不支援「-[0-7][ lmh]」選項" -#: src/tar.c:2156 +#: src/tar.c:2175 msgid "[FILE]..." msgstr "[FILE]…" -#: src/tar.c:2274 +#: src/tar.c:2293 #, c-format msgid "Old option `%c' requires an argument." msgstr "舊的選項「%c」需要一個引數。" -#: src/tar.c:2355 +#: src/tar.c:2374 msgid "--occurrence is meaningless without a file list" msgstr "若無檔案列表,--occurrence 便不具意義" -#: src/tar.c:2361 +#: src/tar.c:2380 msgid "--occurrence cannot be used in the requested operation mode" msgstr "--occurrence 無法於要求的作業模式中使用" -#: src/tar.c:2379 +#: src/tar.c:2398 msgid "Multiple archive files require `-M' option" msgstr "指定多個保存檔時需要「-M」選項" -#: src/tar.c:2384 +#: src/tar.c:2403 msgid "Cannot combine --listed-incremental with --newer" msgstr "無法同時使用 --listed-incremental 及 --newer" -#: src/tar.c:2387 +#: src/tar.c:2406 #, fuzzy msgid "--level is meaningless without --listed-incremental" msgstr "--preserve-order 與 --listed-incremental 不相容" -#: src/tar.c:2404 +#: src/tar.c:2423 #, c-format msgid "%s: Volume label is too long (limit is %lu byte)" msgid_plural "%s: Volume label is too long (limit is %lu bytes)" msgstr[0] "%s:卷冊標籤太長 (限制為 %lu 位元組)" -#: src/tar.c:2417 +#: src/tar.c:2436 msgid "Cannot verify multi-volume archives" msgstr "無法驗證多重卷冊的保存檔" -#: src/tar.c:2419 +#: src/tar.c:2438 msgid "Cannot verify compressed archives" msgstr "無法驗證壓縮過的保存檔" -#: src/tar.c:2425 +#: src/tar.c:2444 msgid "Cannot use multi-volume compressed archives" msgstr "無法使用多重卷冊的壓縮保存檔" -#: src/tar.c:2431 +#: src/tar.c:2450 msgid "Cannot concatenate compressed archives" msgstr "無法串接壓縮過的檔案" -#: src/tar.c:2443 +#: src/tar.c:2462 msgid "--pax-option can be used only on POSIX archives" msgstr "--pax-option 只能用於 POSIX 保存檔" -#: src/tar.c:2461 +#: src/tar.c:2492 msgid "Volume length cannot be less than record size" msgstr "卷冊長度無法少於記錄大小" -#: src/tar.c:2464 +#: src/tar.c:2495 msgid "--preserve-order is not compatible with --listed-incremental" msgstr "--preserve-order 與 --listed-incremental 不相容" -#: src/tar.c:2475 +#: src/tar.c:2506 msgid "Cowardly refusing to create an empty archive" msgstr "低調拒絕建立空白的保存檔" -#: src/tar.c:2501 +#: src/tar.c:2532 msgid "Options `-Aru' are incompatible with `-f -'" msgstr "「-Aru」與「-f -」選項不相容" -#: src/tar.c:2592 +#: src/tar.c:2621 #, fuzzy msgid "You must specify one of the `-Acdtrux' or `--test-label' options" msgstr "必須指定「-Acdtrux」選項的其中一個" -#: src/tar.c:2646 +#: src/tar.c:2675 #, c-format msgid "Exiting with failure status due to previous errors" msgstr "由於先前錯誤而以失敗狀態離開" @@ -2321,84 +2335,84 @@ msgid "%s: File shrank by %s byte" msgid_plural "%s: File shrank by %s bytes" msgstr[0] "%s:檔案縮減了 %s 位元組" -#: src/xheader.c:163 +#: src/xheader.c:164 #, c-format msgid "Keyword %s is unknown or not yet implemented" msgstr "關鍵字 %s 為未知或尚未實作" -#: src/xheader.c:173 +#: src/xheader.c:174 #, fuzzy msgid "Time stamp is out of allowed range" msgstr "號碼超出允許的範圍:%s" -#: src/xheader.c:204 +#: src/xheader.c:205 #, c-format msgid "Pattern %s cannot be used" msgstr "式樣 %s 無法使用" -#: src/xheader.c:218 +#: src/xheader.c:219 #, c-format msgid "Keyword %s cannot be overridden" msgstr "關鍵字 %s 無法被蓋過" -#: src/xheader.c:541 +#: src/xheader.c:542 msgid "Malformed extended header: missing length" msgstr "異常的擴充標頭:長度缺少" -#: src/xheader.c:549 +#: src/xheader.c:550 msgid "Extended header length is out of allowed range" msgstr "擴充標頭長度超出允許範圍" -#: src/xheader.c:556 +#: src/xheader.c:557 #, c-format msgid "Extended header length %*s is out of range" msgstr "擴充標頭長度 %*s 超出範圍" -#: src/xheader.c:568 +#: src/xheader.c:569 msgid "Malformed extended header: missing blank after length" msgstr "異常的擴充標頭:在長度之後缺少空白" -#: src/xheader.c:576 +#: src/xheader.c:577 msgid "Malformed extended header: missing equal sign" msgstr "異常的擴充標頭:缺少等號" -#: src/xheader.c:582 +#: src/xheader.c:583 msgid "Malformed extended header: missing newline" msgstr "異常的擴充標頭:缺少新列" -#: src/xheader.c:620 +#: src/xheader.c:621 #, c-format msgid "Ignoring unknown extended header keyword `%s'" msgstr "忽略不明擴充標頭關鍵字「%s」" -#: src/xheader.c:830 +#: src/xheader.c:831 #, c-format msgid "Generated keyword/value pair is too long (keyword=%s, length=%s)" msgstr "產生的關鍵字/值對太長 (關鍵字=%s,長度=%s)" #. TRANSLATORS: The first %s is the pax extended header keyword #. (atime, gid, etc.). -#: src/xheader.c:862 +#: src/xheader.c:863 #, c-format msgid "Extended header %s=%s is out of range %s..%s" msgstr "擴充標頭 %s=%s 超出範圍 %s..%s" -#: src/xheader.c:993 src/xheader.c:1023 src/xheader.c:1337 +#: src/xheader.c:994 src/xheader.c:1024 src/xheader.c:1338 #, c-format msgid "Malformed extended header: invalid %s=%s" msgstr "異常的擴充標頭:無效的 %s=%s" -#: src/xheader.c:1290 src/xheader.c:1315 src/xheader.c:1365 +#: src/xheader.c:1291 src/xheader.c:1316 src/xheader.c:1366 #, c-format msgid "Malformed extended header: excess %s=%s" msgstr "異常的擴充標頭:過剩的 %s=%s" -#: src/xheader.c:1378 +#: src/xheader.c:1379 #, c-format msgid "Malformed extended header: invalid %s: unexpected delimiter %c" msgstr "異常的擴充標頭:無效的 %s:未預期的分隔符號 %c" -#: src/xheader.c:1388 +#: src/xheader.c:1389 #, c-format msgid "Malformed extended header: invalid %s: odd number of values" msgstr "異常的擴充標頭:無效的 %s:奇怪的數值數量" @@ -2439,7 +2453,7 @@ msgstr "寫入的查核點 %u" msgid "Read checkpoint %u" msgstr "讀取的查核點 %u" -#: tests/genfile.c:112 +#: tests/genfile.c:111 msgid "" "genfile manipulates data files for GNU paxutils test suite.\n" "OPTIONS are:\n" @@ -2447,68 +2461,68 @@ msgstr "" "genfile 在 GNU paxutils 測試套件中用於操控資料檔案。\n" "選項:\n" -#: tests/genfile.c:128 +#: tests/genfile.c:127 msgid "File creation options:" msgstr "檔案建立選項:" -#: tests/genfile.c:129 tests/genfile.c:140 +#: tests/genfile.c:128 tests/genfile.c:139 msgid "SIZE" msgstr "大小" -#: tests/genfile.c:130 +#: tests/genfile.c:129 msgid "Create file of the given SIZE" msgstr "以給定 SIZE 建立檔案。" -#: tests/genfile.c:132 +#: tests/genfile.c:131 msgid "Write to file NAME, instead of standard output" msgstr "寫入檔案 NAME,以代替標準輸出" -#: tests/genfile.c:134 +#: tests/genfile.c:133 msgid "Read file names from FILE" msgstr "從 FILE 讀取檔案名稱" -#: tests/genfile.c:136 +#: tests/genfile.c:135 msgid "-T reads null-terminated names" msgstr "-T 讀取零值終結的名稱" -#: tests/genfile.c:138 +#: tests/genfile.c:137 msgid "Fill the file with the given PATTERN. PATTERN is 'default' or 'zeros'" msgstr "以給定 PATTERN 填充檔案。PATTERN 是「default」或「zeros」" -#: tests/genfile.c:141 +#: tests/genfile.c:140 msgid "Size of a block for sparse file" msgstr "用於稀疏檔案的區塊大小" -#: tests/genfile.c:143 +#: tests/genfile.c:142 msgid "Generate sparse file. Rest of the command line gives the file map." msgstr "產生稀疏檔案。命令列的其餘部份給出檔案對映。" -#: tests/genfile.c:145 +#: tests/genfile.c:144 msgid "OFFSET" msgstr "偏移值" -#: tests/genfile.c:146 +#: tests/genfile.c:145 msgid "Seek to the given offset before writing data" msgstr "寫入資料之前尋指給定的偏移值" -#: tests/genfile.c:152 +#: tests/genfile.c:151 msgid "File statistics options:" msgstr "檔案統計選項:" -#: tests/genfile.c:155 +#: tests/genfile.c:154 msgid "Print contents of struct stat for each given file. Default FORMAT is: " msgstr "列印每個給定檔案的結構狀態內容。預設 FORMAT 為:" -#: tests/genfile.c:162 +#: tests/genfile.c:161 msgid "Synchronous execution options:" msgstr "同步的執行選項:" -#: tests/genfile.c:164 +#: tests/genfile.c:163 #, fuzzy msgid "OPTION" msgstr " [選項…]" -#: tests/genfile.c:165 +#: tests/genfile.c:164 #, fuzzy msgid "" "Execute ARGS. Useful with --checkpoint and one of --cut, --append, --touch, " @@ -2517,19 +2531,19 @@ msgstr "" "執行給定的 COMMAND。同時與 --checkpoint 和 --cut, --append, --touch 之一使用" "會有作用" -#: tests/genfile.c:168 +#: tests/genfile.c:167 msgid "Perform given action (see below) upon reaching checkpoint NUMBER" msgstr "當達到查核點 NUMBER 時實行給定動作 (參看以下)" -#: tests/genfile.c:171 +#: tests/genfile.c:170 msgid "Set date for next --touch option" msgstr "設定後續 --touch 選項所需的日期" -#: tests/genfile.c:174 +#: tests/genfile.c:173 msgid "Display executed checkpoints and exit status of COMMAND" msgstr "顯示已執行的查核點以及 COMMAND 的離開狀態" -#: tests/genfile.c:179 +#: tests/genfile.c:178 msgid "" "Synchronous execution actions. These are executed when checkpoint number " "given by --checkpoint option is reached." @@ -2537,150 +2551,164 @@ msgstr "" "同步的執行動作。當到達由 --checkpoint 選項所給定的查核點編號時,這些動作會被" "執行。" -#: tests/genfile.c:182 +#: tests/genfile.c:181 msgid "" "Truncate FILE to the size specified by previous --length option (or 0, if it " "is not given)" msgstr "依先前 --length 選項指定的大小來截斷檔案 (如果它未被給定就是 0)" -#: tests/genfile.c:186 +#: tests/genfile.c:185 msgid "Append SIZE bytes to FILE. SIZE is given by previous --length option." msgstr "附加 SIZE 位元組到 FILE。SIZE 是由先前 --length 選項所給定。" -#: tests/genfile.c:189 +#: tests/genfile.c:188 msgid "Update the access and modification times of FILE" msgstr "更新檔案的存取和修改時間" -#: tests/genfile.c:192 +#: tests/genfile.c:191 msgid "Execute COMMAND" msgstr "執行 COMMAND" -#: tests/genfile.c:195 +#: tests/genfile.c:194 msgid "Unlink FILE" msgstr "" -#: tests/genfile.c:245 +#: tests/genfile.c:244 #, c-format msgid "Invalid size: %s" msgstr "無效的大小:%s" -#: tests/genfile.c:250 +#: tests/genfile.c:249 #, c-format msgid "Number out of allowed range: %s" msgstr "號碼超出允許的範圍:%s" -#: tests/genfile.c:253 +#: tests/genfile.c:252 #, c-format msgid "Negative size: %s" msgstr "負值大小:%s" -#: tests/genfile.c:266 tests/genfile.c:568 +#: tests/genfile.c:265 tests/genfile.c:567 #, c-format msgid "stat(%s) failed" msgstr "狀態(%s) 失敗" -#: tests/genfile.c:269 +#: tests/genfile.c:268 #, c-format msgid "requested file length %lu, actual %lu" msgstr "要求檔案長度 %lu,實際則是 %lu" -#: tests/genfile.c:273 +#: tests/genfile.c:272 #, c-format msgid "created file is not sparse" msgstr "建立的不是稀疏檔案" -#: tests/genfile.c:362 +#: tests/genfile.c:361 #, c-format msgid "Error parsing number near `%s'" msgstr "剖析數字接近「%s」時發生錯誤" -#: tests/genfile.c:368 +#: tests/genfile.c:367 #, c-format msgid "Unknown date format" msgstr "不明的日期格式" -#: tests/genfile.c:392 +#: tests/genfile.c:391 msgid "[ARGS...]" msgstr "[引數…]" -#: tests/genfile.c:429 tests/genfile.c:469 tests/genfile.c:522 -#: tests/genfile.c:672 tests/genfile.c:686 +#: tests/genfile.c:428 tests/genfile.c:468 tests/genfile.c:521 +#: tests/genfile.c:671 tests/genfile.c:685 #, c-format msgid "cannot open `%s'" msgstr "無法開啟「%s」" -#: tests/genfile.c:435 +#: tests/genfile.c:434 msgid "cannot seek" msgstr "無法尋指" -#: tests/genfile.c:452 +#: tests/genfile.c:451 #, c-format msgid "file name contains null character" msgstr "檔案名稱含有空字元" -#: tests/genfile.c:517 +#: tests/genfile.c:516 #, c-format msgid "cannot generate sparse files on standard output, use --file option" msgstr "無法於標準輸出產生稀疏檔案,使用 --file 選項" -#: tests/genfile.c:595 +#: tests/genfile.c:594 #, c-format msgid "incorrect mask (near `%s')" msgstr "不正確遮罩 (接近「%s」)" -#: tests/genfile.c:601 tests/genfile.c:634 +#: tests/genfile.c:600 tests/genfile.c:633 #, c-format msgid "Unknown field `%s'" msgstr "不明的欄位「%s」" -#: tests/genfile.c:661 +#: tests/genfile.c:660 #, c-format msgid "cannot set time on `%s'" msgstr "無法設定時間為「%s」" -#: tests/genfile.c:700 +#: tests/genfile.c:699 #, fuzzy, c-format msgid "cannot unlink `%s'" msgstr "無法開啟「%s」" -#: tests/genfile.c:826 +#: tests/genfile.c:825 #, c-format msgid "Command exited successfully\n" msgstr "成功離開命令\n" -#: tests/genfile.c:828 +#: tests/genfile.c:827 #, c-format msgid "Command failed with status %d\n" msgstr "命令以狀態 %d 失敗\n" -#: tests/genfile.c:832 +#: tests/genfile.c:831 #, c-format msgid "Command terminated on signal %d\n" msgstr "命令於信號 %d 終止\n" -#: tests/genfile.c:834 +#: tests/genfile.c:833 #, c-format msgid "Command stopped on signal %d\n" msgstr "命令於信號 %d 停止\n" -#: tests/genfile.c:837 +#: tests/genfile.c:836 #, c-format msgid "Command dumped core\n" msgstr "命令傾印核心\n" -#: tests/genfile.c:840 +#: tests/genfile.c:839 #, c-format msgid "Command terminated\n" msgstr "命令終止\n" -#: tests/genfile.c:872 +#: tests/genfile.c:871 #, c-format msgid "--stat requires file names" msgstr "--stat 需要檔案名稱" +#, fuzzy +#~ msgid "Cannot restore working directory" +#~ msgstr "無法儲存工作目錄" + +#, fuzzy +#~ msgid "Cannot resolve hostname %s" +#~ msgstr "無法將 %s 重新命名為 %s" + +#~ msgid "suppress this warning." +#~ msgstr "抑制這個警告。" + #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s:不合法的選項 -- %c\n" +#~ msgid "Reading %s\n" +#~ msgstr "正在讀取 %s\n" + #~ msgid "" #~ "\n" #~ "Report bugs to <%s>.\n" @@ -2688,15 +2716,6 @@ msgstr "--stat 需要檔案名稱" #~ "\n" #~ "將錯誤回報給 <%s>。\n" -#~ msgid "Reading %s\n" -#~ msgstr "正在讀取 %s\n" - -#~ msgid "Error is not recoverable: exiting now" -#~ msgstr "發生無法復原的錯誤:立刻離開" - -#~ msgid "suppress this warning." -#~ msgstr "抑制這個警告。" - #~ msgid "filter the archive through bzip2" #~ msgstr "保存檔以 bzip2 過濾處理" @@ -2745,3 +2764,6 @@ msgstr "--stat 需要檔案名稱" #~ msgid "Premature end of file" #~ msgstr "檔案突然結束" + +#~ msgid "Error is not recoverable: exiting now" +#~ msgstr "發生無法復原的錯誤:立刻離開" diff --git a/rmt/Makefile.in b/rmt/Makefile.in index de66f74..93f1989 100644 --- a/rmt/Makefile.in +++ b/rmt/Makefile.in @@ -40,11 +40,11 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/argmatch.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/backupfile.m4 \ - $(top_srcdir)/m4/bison.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/canonicalize.m4 \ + $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/backupfile.m4 $(top_srcdir)/m4/bison.m4 \ + $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/canonicalize.m4 \ $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/chown.m4 \ - $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/cloexec.m4 \ $(top_srcdir)/m4/close-stream.m4 $(top_srcdir)/m4/close.m4 \ $(top_srcdir)/m4/closeout.m4 $(top_srcdir)/m4/codeset.m4 \ $(top_srcdir)/m4/d-ino.m4 $(top_srcdir)/m4/dirent-safer.m4 \ @@ -57,17 +57,17 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/fchdir.m4 $(top_srcdir)/m4/fclose.m4 \ $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopendir.m4 \ - $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpending.m4 \ - $(top_srcdir)/m4/fseeko.m4 $(top_srcdir)/m4/ftruncate.m4 \ + $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \ + $(top_srcdir)/m4/fpending.m4 $(top_srcdir)/m4/fseeko.m4 \ + $(top_srcdir)/m4/futimens.m4 \ $(top_srcdir)/m4/getcwd-abort-bug.m4 \ $(top_srcdir)/m4/getcwd-path-max.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdate.m4 $(top_srcdir)/m4/getdelim.m4 \ - $(top_srcdir)/m4/getdtablesize.m4 $(top_srcdir)/m4/getline.m4 \ - $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \ - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gettime.m4 \ - $(top_srcdir)/m4/gettimeofday.m4 $(top_srcdir)/m4/glibc21.m4 \ - $(top_srcdir)/m4/gnulib-common.m4 \ + $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ + $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ + $(top_srcdir)/m4/getpagesize.m4 $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \ + $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ $(top_srcdir)/m4/gnulib-comp.m4 $(top_srcdir)/m4/hash.m4 \ $(top_srcdir)/m4/human.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \ @@ -77,54 +77,61 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/lchown.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \ - $(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-zh.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \ - $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/malloc.m4 \ - $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/mbchar.m4 \ - $(top_srcdir)/m4/mbiter.m4 $(top_srcdir)/m4/mbrtowc.m4 \ - $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbsrtowcs.m4 \ - $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/memchr.m4 \ - $(top_srcdir)/m4/mempcpy.m4 $(top_srcdir)/m4/memrchr.m4 \ - $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkdtemp.m4 \ + $(top_srcdir)/m4/libunistring-base.m4 \ + $(top_srcdir)/m4/link-follow.m4 $(top_srcdir)/m4/link.m4 \ + $(top_srcdir)/m4/linkat.m4 $(top_srcdir)/m4/localcharset.m4 \ + $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ + $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \ + $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ + $(top_srcdir)/m4/mbchar.m4 $(top_srcdir)/m4/mbiter.m4 \ + $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ + $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ + $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ + $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mkdir.m4 \ + $(top_srcdir)/m4/mkdtemp.m4 $(top_srcdir)/m4/mkfifo.m4 \ + $(top_srcdir)/m4/mkfifoat.m4 $(top_srcdir)/m4/mknod.m4 \ $(top_srcdir)/m4/mktime.m4 $(top_srcdir)/m4/mmap-anon.m4 \ $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/modechange.m4 \ $(top_srcdir)/m4/multiarch.m4 $(top_srcdir)/m4/nl_langinfo.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/paxutils.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/priv-set.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/quote.m4 \ - $(top_srcdir)/m4/quotearg.m4 $(top_srcdir)/m4/rawmemchr.m4 \ - $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rmdir.m4 \ + $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/parse-datetime.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/paxutils.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/priv-set.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \ + $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/readlink.m4 \ + $(top_srcdir)/m4/readlinkat.m4 $(top_srcdir)/m4/realloc.m4 \ + $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rename.m4 \ + $(top_srcdir)/m4/renameat.m4 $(top_srcdir)/m4/rmdir.m4 \ $(top_srcdir)/m4/rmt.m4 $(top_srcdir)/m4/rpmatch.m4 \ $(top_srcdir)/m4/rtapelib.m4 $(top_srcdir)/m4/safe-read.m4 \ - $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/same.m4 \ - $(top_srcdir)/m4/save-cwd.m4 $(top_srcdir)/m4/savedir.m4 \ - $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/sleep.m4 $(top_srcdir)/m4/snprintf.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/stpcpy.m4 $(top_srcdir)/m4/strcase.m4 \ - $(top_srcdir)/m4/strchrnul.m4 $(top_srcdir)/m4/strdup.m4 \ - $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/string_h.m4 \ - $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strndup.m4 \ - $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoimax.m4 \ - $(top_srcdir)/m4/strtol.m4 $(top_srcdir)/m4/strtoll.m4 \ - $(top_srcdir)/m4/strtoul.m4 $(top_srcdir)/m4/strtoull.m4 \ - $(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/sys_stat_h.m4 \ - $(top_srcdir)/m4/sys_time_h.m4 $(top_srcdir)/m4/sysexits.m4 \ - $(top_srcdir)/m4/system.m4 $(top_srcdir)/m4/tempname.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/unistd-safer.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlink.m4 $(top_srcdir)/m4/unlinkdir.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/utimbuf.m4 \ - $(top_srcdir)/m4/utimens.m4 $(top_srcdir)/m4/utimes.m4 \ + $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/save-cwd.m4 \ + $(top_srcdir)/m4/savedir.m4 $(top_srcdir)/m4/setenv.m4 \ + $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ + $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \ + $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ + $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ + $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ + $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ + $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ + $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ + $(top_srcdir)/m4/strtoimax.m4 $(top_srcdir)/m4/strtol.m4 \ + $(top_srcdir)/m4/strtoll.m4 $(top_srcdir)/m4/strtoul.m4 \ + $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/strtoumax.m4 \ + $(top_srcdir)/m4/symlink.m4 $(top_srcdir)/m4/symlinkat.m4 \ + $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \ + $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/system.m4 \ + $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd-safer.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \ + $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/utimbuf.m4 $(top_srcdir)/m4/utimens.m4 \ + $(top_srcdir)/m4/utimensat.m4 $(top_srcdir)/m4/utimes.m4 \ $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/vasprintf.m4 \ $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/vsnprintf.m4 \ $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/wchar_h.m4 \ @@ -179,6 +186,7 @@ ALLOCA_H = @ALLOCA_H@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ +ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOM4TE = @AUTOM4TE@ @@ -276,6 +284,7 @@ GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ +GNULIB_GRANTPT = @GNULIB_GRANTPT@ GNULIB_IMAXABS = @GNULIB_IMAXABS@ GNULIB_IMAXDIV = @GNULIB_IMAXDIV@ GNULIB_LCHMOD = @GNULIB_LCHMOD@ @@ -331,10 +340,12 @@ GNULIB_POPEN = @GNULIB_POPEN@ GNULIB_PREAD = @GNULIB_PREAD@ GNULIB_PRINTF = @GNULIB_PRINTF@ GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ +GNULIB_PTSNAME = @GNULIB_PTSNAME@ GNULIB_PUTC = @GNULIB_PUTC@ GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ GNULIB_PUTENV = @GNULIB_PUTENV@ GNULIB_PUTS = @GNULIB_PUTS@ +GNULIB_PWRITE = @GNULIB_PWRITE@ GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ GNULIB_READLINK = @GNULIB_READLINK@ @@ -359,6 +370,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ GNULIB_STRDUP = @GNULIB_STRDUP@ GNULIB_STRERROR = @GNULIB_STRERROR@ +GNULIB_STRNCAT = @GNULIB_STRNCAT@ GNULIB_STRNDUP = @GNULIB_STRNDUP@ GNULIB_STRNLEN = @GNULIB_STRNLEN@ GNULIB_STRPBRK = @GNULIB_STRPBRK@ @@ -375,11 +387,16 @@ GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@ GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ GNULIB_SYMLINK = @GNULIB_SYMLINK@ GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ +GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ GNULIB_TIMEGM = @GNULIB_TIMEGM@ +GNULIB_TIME_R = @GNULIB_TIME_R@ +GNULIB_TMPFILE = @GNULIB_TMPFILE@ +GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@ GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ GNULIB_UNLINK = @GNULIB_UNLINK@ GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ +GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ GNULIB_UNSETENV = @GNULIB_UNSETENV@ GNULIB_USLEEP = @GNULIB_USLEEP@ GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ @@ -397,20 +414,23 @@ GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ GNULIB_WCTOB = @GNULIB_WCTOB@ GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ GNULIB_WRITE = @GNULIB_WRITE@ +GNULIB__EXIT = @GNULIB__EXIT@ GREP = @GREP@ HAVE_ALPHASORT = @HAVE_ALPHASORT@ HAVE_ATOLL = @HAVE_ATOLL@ HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_CALLOC_POSIX = @HAVE_CALLOC_POSIX@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ HAVE_CHOWN = @HAVE_CHOWN@ HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ +HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ +HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ +HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ @@ -418,7 +438,6 @@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR = @HAVE_DECL_STRERROR@ HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ @@ -434,12 +453,15 @@ HAVE_DUP2 = @HAVE_DUP2@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_FACCESSAT = @HAVE_FACCESSAT@ +HAVE_FCHDIR = @HAVE_FCHDIR@ HAVE_FCHMODAT = @HAVE_FCHMODAT@ HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ HAVE_FCNTL = @HAVE_FCNTL@ HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ +HAVE_FSEEKO = @HAVE_FSEEKO@ HAVE_FSTATAT = @HAVE_FSTATAT@ HAVE_FSYNC = @HAVE_FSYNC@ +HAVE_FTELLO = @HAVE_FTELLO@ HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ HAVE_FUTIMENS = @HAVE_FUTIMENS@ HAVE_GETDOMAINNAME = @HAVE_GETDOMAINNAME@ @@ -451,25 +473,29 @@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ -HAVE_GETUSERSHELL = @HAVE_GETUSERSHELL@ +HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ +HAVE_ISWBLANK = @HAVE_ISWBLANK@ HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ +HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ +HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ HAVE_LCHMOD = @HAVE_LCHMOD@ HAVE_LCHOWN = @HAVE_LCHOWN@ HAVE_LINK = @HAVE_LINK@ HAVE_LINKAT = @HAVE_LINKAT@ +HAVE_LOCALTIME_R = @HAVE_LOCALTIME_R@ HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MALLOC_POSIX = @HAVE_MALLOC_POSIX@ HAVE_MBRLEN = @HAVE_MBRLEN@ HAVE_MBRTOWC = @HAVE_MBRTOWC@ HAVE_MBSINIT = @HAVE_MBSINIT@ HAVE_MBSLEN = @HAVE_MBSLEN@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ +HAVE_MEMCHR = @HAVE_MEMCHR@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ @@ -479,18 +505,21 @@ HAVE_MKNOD = @HAVE_MKNOD@ HAVE_MKNODAT = @HAVE_MKNODAT@ HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ +HAVE_MKSTEMP = @HAVE_MKSTEMP@ HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ +HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ HAVE_OPENAT = @HAVE_OPENAT@ HAVE_OS_H = @HAVE_OS_H@ HAVE_PIPE2 = @HAVE_PIPE2@ HAVE_PREAD = @HAVE_PREAD@ +HAVE_PTSNAME = @HAVE_PTSNAME@ +HAVE_PWRITE = @HAVE_PWRITE@ HAVE_RANDOM_H = @HAVE_RANDOM_H@ HAVE_RANDOM_R = @HAVE_RANDOM_R@ HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ HAVE_READLINK = @HAVE_READLINK@ HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOC_POSIX = @HAVE_REALLOC_POSIX@ HAVE_REALPATH = @HAVE_REALPATH@ HAVE_RENAMEAT = @HAVE_RENAMEAT@ HAVE_RPMATCH = @HAVE_RPMATCH@ @@ -507,6 +536,7 @@ HAVE_STRCASECMP = @HAVE_STRCASECMP@ HAVE_STRCASESTR = @HAVE_STRCASESTR@ HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ HAVE_STRPBRK = @HAVE_STRPBRK@ +HAVE_STRPTIME = @HAVE_STRPTIME@ HAVE_STRSEP = @HAVE_STRSEP@ HAVE_STRTOD = @HAVE_STRTOD@ HAVE_STRTOLL = @HAVE_STRTOLL@ @@ -523,8 +553,11 @@ HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ +HAVE_TIMEGM = @HAVE_TIMEGM@ +HAVE_TTYNAME_R = @HAVE_TTYNAME_R@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ +HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_UNSETENV = @HAVE_UNSETENV@ HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -539,6 +572,7 @@ HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ HAVE_WINT_T = @HAVE_WINT_T@ HAVE__BOOL = @HAVE__BOOL@ +HAVE__EXIT = @HAVE__EXIT@ INCLUDE_NEXT = @INCLUDE_NEXT@ INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ INSTALL = @INSTALL@ @@ -557,6 +591,8 @@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ +LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ LIB_SETSOCKOPT = @LIB_SETSOCKOPT@ LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ @@ -623,21 +659,24 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ POSUB = @POSUB@ +PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@ +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ PU_RMT_PROG = @PU_RMT_PROG@ RANLIB = @RANLIB@ REPLACE_BTOWC = @REPLACE_BTOWC@ +REPLACE_CALLOC = @REPLACE_CALLOC@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ +REPLACE_DIRFD = @REPLACE_DIRFD@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_FCHDIR = @REPLACE_FCHDIR@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ @@ -660,6 +699,7 @@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ +REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ REPLACE_LCHOWN = @REPLACE_LCHOWN@ REPLACE_LINK = @REPLACE_LINK@ @@ -667,6 +707,7 @@ REPLACE_LINKAT = @REPLACE_LINKAT@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ +REPLACE_MALLOC = @REPLACE_MALLOC@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ @@ -692,7 +733,9 @@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PUTENV = @REPLACE_PUTENV@ +REPLACE_PWRITE = @REPLACE_PWRITE@ REPLACE_READLINK = @REPLACE_READLINK@ +REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -704,17 +747,21 @@ REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRDUP = @REPLACE_STRDUP@ REPLACE_STRERROR = @REPLACE_STRERROR@ +REPLACE_STRNCAT = @REPLACE_STRNCAT@ REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRPTIME = @REPLACE_STRPTIME@ +REPLACE_STRNLEN = @REPLACE_STRNLEN@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ REPLACE_STRSTR = @REPLACE_STRSTR@ REPLACE_STRTOD = @REPLACE_STRTOD@ REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TMPFILE = @REPLACE_TMPFILE@ +REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ REPLACE_UNLINK = @REPLACE_UNLINK@ REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ REPLACE_UNSETENV = @REPLACE_UNSETENV@ @@ -784,6 +831,7 @@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ +gltests_WITNESS = @gltests_WITNESS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ diff --git a/rmt/rmt.c b/rmt/rmt.c index a3897eb..fff83b8 100644 --- a/rmt/rmt.c +++ b/rmt/rmt.c @@ -61,7 +61,7 @@ FILE *dbgout; } \ } \ while (0) - + static void @@ -74,13 +74,13 @@ trimnl (char *str) str[len-1] = 0; } } - + char *input_buf_ptr = NULL; size_t input_buf_size = 0; -char * +static char * rmt_read (void) { ssize_t rc = getline (&input_buf_ptr, &input_buf_size, stdin); @@ -94,32 +94,34 @@ rmt_read (void) return NULL; } -void +static void rmt_write (const char *fmt, ...) { va_list ap; va_start (ap, fmt); vfprintf (stdout, fmt, ap); + fflush (stdout); VDEBUG (10, "S: ", fmt, ap); } -void +static void rmt_reply (uintmax_t code) { char buf[UINTMAX_STRSIZE_BOUND]; rmt_write ("A%s\n", umaxtostr (code, buf)); } -void +static void rmt_error_message (int code, const char *msg) { DEBUG1 (10, "S: E%d\n", code); DEBUG1 (10, "S: %s\n", msg); DEBUG1 (1, "error: %s\n", msg); fprintf (stdout, "E%d\n%s\n", code, msg); + fflush (stdout); } -void +static void rmt_error (int code) { rmt_error_message (code, strerror (code)); @@ -152,7 +154,7 @@ struct rmt_kw #define RMT_KW(s,v) { #s, sizeof (#s) - 1, v } -int +static int xlat_kw (const char *s, const char *pfx, struct rmt_kw const *kw, int *valp, const char **endp) { @@ -167,7 +169,7 @@ xlat_kw (const char *s, const char *pfx, slen -= pfxlen; } } - + for (; kw->name; kw++) { if (slen >= kw->len @@ -182,7 +184,7 @@ xlat_kw (const char *s, const char *pfx, return 1; } -const char * +static const char * skip_ws (const char *s) { while (*s && c_isblank (*s)) @@ -222,47 +224,60 @@ static struct rmt_kw const open_flag_kw[] = { NULL } }; -int +static int decode_open_flag (const char *mstr, int *pmode) { + int numeric_mode = 0; int mode = 0; + const char *p; - while (mstr) + mstr = skip_ws (mstr); + if (c_isdigit (*mstr)) { - int v; - const char *p; - - mstr = skip_ws (mstr); - if (*mstr == 0) - break; - else if (c_isdigit (*mstr)) - v = strtol (mstr, (char**) &p, 10); - else if (xlat_kw (mstr, "O_", open_flag_kw, &v, &p)) - { - rmt_error_message (EINVAL, "invalid open mode"); - return 1; - } + numeric_mode = strtol (mstr, (char**) &p, 10); + mstr = skip_ws (p); + } - mode |= v; - - if (*p && c_isblank (*p)) - p = skip_ws (p); - if (*p == 0) - break; - else if (*p == '|') - { - /* FIXMEL - if (p[1] == 0) - rmt_error_message (EINVAL, "invalid open mode"); - */ - mstr = p + 1; - } - else + if (*mstr) + { + while (mstr) { - rmt_error_message (EINVAL, "invalid open mode"); - return 1; + int v; + + mstr = skip_ws (mstr); + if (*mstr == 0) + break; + else if (c_isdigit (*mstr)) + v = strtol (mstr, (char**) &p, 10); + else if (xlat_kw (mstr, "O_", open_flag_kw, &v, &p)) + { + rmt_error_message (EINVAL, "invalid open mode"); + return 1; + } + + mode |= v; + + if (*p && c_isblank (*p)) + p = skip_ws (p); + if (*p == 0) + break; + else if (*p == '|') + { + /* FIXMEL + if (p[1] == 0) + rmt_error_message (EINVAL, "invalid open mode"); + */ + mstr = p + 1; + } + else + { + rmt_error_message (EINVAL, "invalid open mode"); + return 1; + } } } + else + mode = numeric_mode; *pmode = mode; return 0; } @@ -271,12 +286,12 @@ decode_open_flag (const char *mstr, int *pmode) /* Syntax ------ O\n\n - + Function -------- Opens the with given . If a device had already been opened, it is closed before opening the new one. - + Arguments --------- - name of the device to open. @@ -288,22 +303,26 @@ decode_open_flag (const char *mstr, int *pmode) 64|512 CREAT|TRUNC + In addition, a compined form is also allowed, i.e. a decimal mode followed + by its symbolic representation. In this case the symbolic representation + is given preference. + Reply ----- - A0\n on success, E\n\n on error. - + A0\n on success, E0\n\n on error. + Extensions ---------- - The BSD version allows only decimal number as . + BSD version allows only decimal number as */ - + static void open_device (char *str) { char *device = xstrdup (str); char *flag_str; int flag; - + flag_str = rmt_read (); if (!flag_str) { @@ -327,7 +346,7 @@ open_device (char *str) /* Syntax ------ C[]\n - + Function -------- Close the currently open device. @@ -335,13 +354,13 @@ open_device (char *str) Arguments --------- Any arguments are silently ignored. - + Reply ----- - A0\n on success, E\n\n on error. + A0\n on success, E0\n\n on error. */ static void -close_device () +close_device (void) { if (close (device_fd) < 0) rmt_error (errno); @@ -355,12 +374,12 @@ close_device () /* Syntax ------ L\n\n - + Function -------- Perform an lseek(2) on the currently open device with the specified parameters. - + Arguments --------- - Where to measure offset from. Valid values are: @@ -370,11 +389,11 @@ close_device () Reply ----- A\n on success. The is the new offset in file. - E\n\n on error. + E0\n\n on error. Extensions ---------- - The BSD version allows only 0,1,2 as . + BSD version allows only 0,1,2 as . */ static struct rmt_kw const seek_whence_kw[] = @@ -384,15 +403,15 @@ static struct rmt_kw const seek_whence_kw[] = RMT_KW(END, SEEK_END), { NULL } }; - -void + +static void lseek_device (const char *str) { char *p; int whence; off_t off; uintmax_t n; - + if (str[0] && str[1] == 0) { switch (str[0]) @@ -427,7 +446,7 @@ lseek_device (const char *str) rmt_error_message (EINVAL, N_("Invalid seek offset")); return; } - + if (n != off || errno == ERANGE) { rmt_error_message (EINVAL, N_("Seek offset out of range")); @@ -444,37 +463,37 @@ lseek_device (const char *str) /* Syntax ------ R\n - + Function -------- Read bytes of data from the current device. - + Arguments --------- - number of bytes to read. - + Reply ----- On success: A\n, followed by bytes of data read from the device. - On error: E\n\n + On error: E0\n\n */ -void +static void read_device (const char *str) { char *p; size_t size; uintmax_t n; size_t status; - + n = size = strtoumax (str, &p, 10); if (*p) { rmt_error_message (EINVAL, N_("Invalid byte count")); return; } - + if (n != size || errno == ERANGE) { rmt_error_message (EINVAL, N_("Byte count out of range")); @@ -495,37 +514,37 @@ read_device (const char *str) /* Syntax ------ W\n followed by bytes of input data. - + Function -------- Write data onto the current device. - + Arguments --------- - number of bytes. - + Reply ----- On success: A\n, where is number of bytes actually written. - On error: E\n\n + On error: E0\n\n */ -void +static void write_device (const char *str) { char *p; size_t size; uintmax_t n; size_t status; - + n = size = strtoumax (str, &p, 10); if (*p) { rmt_error_message (EINVAL, N_("Invalid byte count")); return; } - + if (n != size || errno == ERANGE) { rmt_error_message (EINVAL, N_("Byte count out of range")); @@ -552,30 +571,30 @@ write_device (const char *str) /* Syntax ------ I\n\n - + Function -------- Perform a MTIOCOP ioctl(2) command using the specified paramedters. - + Arguments --------- - MTIOCOP operation code. - mt_count. - + Reply ----- On success: A0\n - On error: E\n\n + On error: E0\n\n */ -void +static void iocop_device (const char *str) { char *p; long opcode; off_t count; uintmax_t n; - + opcode = strtol (str, &p, 10); if (*p) { @@ -589,13 +608,13 @@ iocop_device (const char *str) rmt_error_message (EINVAL, N_("Invalid byte count")); return; } - + if (n != count || errno == ERANGE) { rmt_error_message (EINVAL, N_("Byte count out of range")); return; } - + #ifdef MTIOCTOP { struct mtop mtop; @@ -621,23 +640,23 @@ iocop_device (const char *str) /* Syntax ------ S\n - + Function -------- Return the status of the open device, as obtained with a MTIOCGET ioctl call. - + Arguments --------- None - + Reply ----- On success: A\n followed by bytes of data. - On error: E\n\n + On error: E0\n\n */ -void +static void status_device (const char *str) { if (*str) @@ -661,7 +680,7 @@ status_device (const char *str) rmt_error_message (ENOSYS, N_("Operation not supported")); #endif } - + const char *argp_program_version = "rmt (" PACKAGE_NAME ") " VERSION; @@ -689,13 +708,13 @@ parse_opt (int key, char *arg, struct argp_state *state) case 'd': dbglev = strtol (arg, NULL, 0); break; - + case DEBUG_FILE_OPTION: dbgout = fopen (arg, "w"); if (!dbgout) error (EXIT_FAILURE, errno, _("cannot open %s"), arg); break; - + case ARGP_KEY_FINI: if (dbglev) { @@ -705,13 +724,13 @@ parse_opt (int key, char *arg, struct argp_state *state) else if (dbgout) dbglev = 1; break; - + default: return ARGP_ERR_UNKNOWN; } return 0; } - + static struct argp argp = { options, parse_opt, @@ -742,7 +761,7 @@ main (int argc, char **argv) char *buf; int idx; int stop = 0; - + set_program_name (argv[0]); argp_version_setup ("rmt", rmt_authors); @@ -752,7 +771,7 @@ main (int argc, char **argv) bindtextdomain (PACKAGE, LOCALEDIR); textdomain (PACKAGE); } - + if (argp_parse (&argp, argc, argv, ARGP_IN_ORDER, &idx, NULL)) exit (EXIT_FAILURE); if (idx != argc) @@ -764,7 +783,7 @@ main (int argc, char **argv) error (EXIT_FAILURE, errno, _("cannot open %s"), argv[idx]); dbglev = 1; } - + while (!stop && (buf = rmt_read ()) != NULL) { switch (buf[0]) @@ -773,36 +792,36 @@ main (int argc, char **argv) close_device (); stop = 1; break; - + case 'I': iocop_device (buf + 1); break; - + case 'L': lseek_device (buf + 1); break; - + case 'O': open_device (buf + 1); break; - + case 'R': read_device (buf + 1); break; - + case 'S': status_device (buf + 1); break; - + case 'W': write_device (buf + 1); break; - + default: DEBUG1 (1, "garbage input %s\n", buf); rmt_error_message (EINVAL, N_("Garbage command")); return EXIT_FAILURE; /* exit status used to be 3 */ - } + } } if (device_fd >= 0) close_device (); diff --git a/scripts/Makefile.in b/scripts/Makefile.in index 5da72c5..cd8a8be 100644 --- a/scripts/Makefile.in +++ b/scripts/Makefile.in @@ -41,11 +41,11 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/argmatch.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/backupfile.m4 \ - $(top_srcdir)/m4/bison.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/canonicalize.m4 \ + $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/backupfile.m4 $(top_srcdir)/m4/bison.m4 \ + $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/canonicalize.m4 \ $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/chown.m4 \ - $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/cloexec.m4 \ $(top_srcdir)/m4/close-stream.m4 $(top_srcdir)/m4/close.m4 \ $(top_srcdir)/m4/closeout.m4 $(top_srcdir)/m4/codeset.m4 \ $(top_srcdir)/m4/d-ino.m4 $(top_srcdir)/m4/dirent-safer.m4 \ @@ -58,17 +58,17 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/fchdir.m4 $(top_srcdir)/m4/fclose.m4 \ $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopendir.m4 \ - $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpending.m4 \ - $(top_srcdir)/m4/fseeko.m4 $(top_srcdir)/m4/ftruncate.m4 \ + $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \ + $(top_srcdir)/m4/fpending.m4 $(top_srcdir)/m4/fseeko.m4 \ + $(top_srcdir)/m4/futimens.m4 \ $(top_srcdir)/m4/getcwd-abort-bug.m4 \ $(top_srcdir)/m4/getcwd-path-max.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdate.m4 $(top_srcdir)/m4/getdelim.m4 \ - $(top_srcdir)/m4/getdtablesize.m4 $(top_srcdir)/m4/getline.m4 \ - $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \ - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gettime.m4 \ - $(top_srcdir)/m4/gettimeofday.m4 $(top_srcdir)/m4/glibc21.m4 \ - $(top_srcdir)/m4/gnulib-common.m4 \ + $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ + $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ + $(top_srcdir)/m4/getpagesize.m4 $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \ + $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ $(top_srcdir)/m4/gnulib-comp.m4 $(top_srcdir)/m4/hash.m4 \ $(top_srcdir)/m4/human.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \ @@ -78,54 +78,61 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/lchown.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \ - $(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-zh.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \ - $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/malloc.m4 \ - $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/mbchar.m4 \ - $(top_srcdir)/m4/mbiter.m4 $(top_srcdir)/m4/mbrtowc.m4 \ - $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbsrtowcs.m4 \ - $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/memchr.m4 \ - $(top_srcdir)/m4/mempcpy.m4 $(top_srcdir)/m4/memrchr.m4 \ - $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkdtemp.m4 \ + $(top_srcdir)/m4/libunistring-base.m4 \ + $(top_srcdir)/m4/link-follow.m4 $(top_srcdir)/m4/link.m4 \ + $(top_srcdir)/m4/linkat.m4 $(top_srcdir)/m4/localcharset.m4 \ + $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ + $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \ + $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ + $(top_srcdir)/m4/mbchar.m4 $(top_srcdir)/m4/mbiter.m4 \ + $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ + $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ + $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ + $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mkdir.m4 \ + $(top_srcdir)/m4/mkdtemp.m4 $(top_srcdir)/m4/mkfifo.m4 \ + $(top_srcdir)/m4/mkfifoat.m4 $(top_srcdir)/m4/mknod.m4 \ $(top_srcdir)/m4/mktime.m4 $(top_srcdir)/m4/mmap-anon.m4 \ $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/modechange.m4 \ $(top_srcdir)/m4/multiarch.m4 $(top_srcdir)/m4/nl_langinfo.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/paxutils.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/priv-set.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/quote.m4 \ - $(top_srcdir)/m4/quotearg.m4 $(top_srcdir)/m4/rawmemchr.m4 \ - $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rmdir.m4 \ + $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/parse-datetime.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/paxutils.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/priv-set.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \ + $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/readlink.m4 \ + $(top_srcdir)/m4/readlinkat.m4 $(top_srcdir)/m4/realloc.m4 \ + $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rename.m4 \ + $(top_srcdir)/m4/renameat.m4 $(top_srcdir)/m4/rmdir.m4 \ $(top_srcdir)/m4/rmt.m4 $(top_srcdir)/m4/rpmatch.m4 \ $(top_srcdir)/m4/rtapelib.m4 $(top_srcdir)/m4/safe-read.m4 \ - $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/same.m4 \ - $(top_srcdir)/m4/save-cwd.m4 $(top_srcdir)/m4/savedir.m4 \ - $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/sleep.m4 $(top_srcdir)/m4/snprintf.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/stpcpy.m4 $(top_srcdir)/m4/strcase.m4 \ - $(top_srcdir)/m4/strchrnul.m4 $(top_srcdir)/m4/strdup.m4 \ - $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/string_h.m4 \ - $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strndup.m4 \ - $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoimax.m4 \ - $(top_srcdir)/m4/strtol.m4 $(top_srcdir)/m4/strtoll.m4 \ - $(top_srcdir)/m4/strtoul.m4 $(top_srcdir)/m4/strtoull.m4 \ - $(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/sys_stat_h.m4 \ - $(top_srcdir)/m4/sys_time_h.m4 $(top_srcdir)/m4/sysexits.m4 \ - $(top_srcdir)/m4/system.m4 $(top_srcdir)/m4/tempname.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/unistd-safer.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlink.m4 $(top_srcdir)/m4/unlinkdir.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/utimbuf.m4 \ - $(top_srcdir)/m4/utimens.m4 $(top_srcdir)/m4/utimes.m4 \ + $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/save-cwd.m4 \ + $(top_srcdir)/m4/savedir.m4 $(top_srcdir)/m4/setenv.m4 \ + $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ + $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \ + $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ + $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ + $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ + $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ + $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ + $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ + $(top_srcdir)/m4/strtoimax.m4 $(top_srcdir)/m4/strtol.m4 \ + $(top_srcdir)/m4/strtoll.m4 $(top_srcdir)/m4/strtoul.m4 \ + $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/strtoumax.m4 \ + $(top_srcdir)/m4/symlink.m4 $(top_srcdir)/m4/symlinkat.m4 \ + $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \ + $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/system.m4 \ + $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd-safer.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \ + $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/utimbuf.m4 $(top_srcdir)/m4/utimens.m4 \ + $(top_srcdir)/m4/utimensat.m4 $(top_srcdir)/m4/utimes.m4 \ $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/vasprintf.m4 \ $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/vsnprintf.m4 \ $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/wchar_h.m4 \ @@ -180,6 +187,7 @@ ALLOCA_H = @ALLOCA_H@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ +ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOM4TE = @AUTOM4TE@ @@ -277,6 +285,7 @@ GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ +GNULIB_GRANTPT = @GNULIB_GRANTPT@ GNULIB_IMAXABS = @GNULIB_IMAXABS@ GNULIB_IMAXDIV = @GNULIB_IMAXDIV@ GNULIB_LCHMOD = @GNULIB_LCHMOD@ @@ -332,10 +341,12 @@ GNULIB_POPEN = @GNULIB_POPEN@ GNULIB_PREAD = @GNULIB_PREAD@ GNULIB_PRINTF = @GNULIB_PRINTF@ GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ +GNULIB_PTSNAME = @GNULIB_PTSNAME@ GNULIB_PUTC = @GNULIB_PUTC@ GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ GNULIB_PUTENV = @GNULIB_PUTENV@ GNULIB_PUTS = @GNULIB_PUTS@ +GNULIB_PWRITE = @GNULIB_PWRITE@ GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ GNULIB_READLINK = @GNULIB_READLINK@ @@ -360,6 +371,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ GNULIB_STRDUP = @GNULIB_STRDUP@ GNULIB_STRERROR = @GNULIB_STRERROR@ +GNULIB_STRNCAT = @GNULIB_STRNCAT@ GNULIB_STRNDUP = @GNULIB_STRNDUP@ GNULIB_STRNLEN = @GNULIB_STRNLEN@ GNULIB_STRPBRK = @GNULIB_STRPBRK@ @@ -376,11 +388,16 @@ GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@ GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ GNULIB_SYMLINK = @GNULIB_SYMLINK@ GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ +GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ GNULIB_TIMEGM = @GNULIB_TIMEGM@ +GNULIB_TIME_R = @GNULIB_TIME_R@ +GNULIB_TMPFILE = @GNULIB_TMPFILE@ +GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@ GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ GNULIB_UNLINK = @GNULIB_UNLINK@ GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ +GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ GNULIB_UNSETENV = @GNULIB_UNSETENV@ GNULIB_USLEEP = @GNULIB_USLEEP@ GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ @@ -398,20 +415,23 @@ GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ GNULIB_WCTOB = @GNULIB_WCTOB@ GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ GNULIB_WRITE = @GNULIB_WRITE@ +GNULIB__EXIT = @GNULIB__EXIT@ GREP = @GREP@ HAVE_ALPHASORT = @HAVE_ALPHASORT@ HAVE_ATOLL = @HAVE_ATOLL@ HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_CALLOC_POSIX = @HAVE_CALLOC_POSIX@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ HAVE_CHOWN = @HAVE_CHOWN@ HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ +HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ +HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ +HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ @@ -419,7 +439,6 @@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR = @HAVE_DECL_STRERROR@ HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ @@ -435,12 +454,15 @@ HAVE_DUP2 = @HAVE_DUP2@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_FACCESSAT = @HAVE_FACCESSAT@ +HAVE_FCHDIR = @HAVE_FCHDIR@ HAVE_FCHMODAT = @HAVE_FCHMODAT@ HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ HAVE_FCNTL = @HAVE_FCNTL@ HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ +HAVE_FSEEKO = @HAVE_FSEEKO@ HAVE_FSTATAT = @HAVE_FSTATAT@ HAVE_FSYNC = @HAVE_FSYNC@ +HAVE_FTELLO = @HAVE_FTELLO@ HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ HAVE_FUTIMENS = @HAVE_FUTIMENS@ HAVE_GETDOMAINNAME = @HAVE_GETDOMAINNAME@ @@ -452,25 +474,29 @@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ -HAVE_GETUSERSHELL = @HAVE_GETUSERSHELL@ +HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ +HAVE_ISWBLANK = @HAVE_ISWBLANK@ HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ +HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ +HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ HAVE_LCHMOD = @HAVE_LCHMOD@ HAVE_LCHOWN = @HAVE_LCHOWN@ HAVE_LINK = @HAVE_LINK@ HAVE_LINKAT = @HAVE_LINKAT@ +HAVE_LOCALTIME_R = @HAVE_LOCALTIME_R@ HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MALLOC_POSIX = @HAVE_MALLOC_POSIX@ HAVE_MBRLEN = @HAVE_MBRLEN@ HAVE_MBRTOWC = @HAVE_MBRTOWC@ HAVE_MBSINIT = @HAVE_MBSINIT@ HAVE_MBSLEN = @HAVE_MBSLEN@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ +HAVE_MEMCHR = @HAVE_MEMCHR@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ @@ -480,18 +506,21 @@ HAVE_MKNOD = @HAVE_MKNOD@ HAVE_MKNODAT = @HAVE_MKNODAT@ HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ +HAVE_MKSTEMP = @HAVE_MKSTEMP@ HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ +HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ HAVE_OPENAT = @HAVE_OPENAT@ HAVE_OS_H = @HAVE_OS_H@ HAVE_PIPE2 = @HAVE_PIPE2@ HAVE_PREAD = @HAVE_PREAD@ +HAVE_PTSNAME = @HAVE_PTSNAME@ +HAVE_PWRITE = @HAVE_PWRITE@ HAVE_RANDOM_H = @HAVE_RANDOM_H@ HAVE_RANDOM_R = @HAVE_RANDOM_R@ HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ HAVE_READLINK = @HAVE_READLINK@ HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOC_POSIX = @HAVE_REALLOC_POSIX@ HAVE_REALPATH = @HAVE_REALPATH@ HAVE_RENAMEAT = @HAVE_RENAMEAT@ HAVE_RPMATCH = @HAVE_RPMATCH@ @@ -508,6 +537,7 @@ HAVE_STRCASECMP = @HAVE_STRCASECMP@ HAVE_STRCASESTR = @HAVE_STRCASESTR@ HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ HAVE_STRPBRK = @HAVE_STRPBRK@ +HAVE_STRPTIME = @HAVE_STRPTIME@ HAVE_STRSEP = @HAVE_STRSEP@ HAVE_STRTOD = @HAVE_STRTOD@ HAVE_STRTOLL = @HAVE_STRTOLL@ @@ -524,8 +554,11 @@ HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ +HAVE_TIMEGM = @HAVE_TIMEGM@ +HAVE_TTYNAME_R = @HAVE_TTYNAME_R@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ +HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_UNSETENV = @HAVE_UNSETENV@ HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -540,6 +573,7 @@ HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ HAVE_WINT_T = @HAVE_WINT_T@ HAVE__BOOL = @HAVE__BOOL@ +HAVE__EXIT = @HAVE__EXIT@ INCLUDE_NEXT = @INCLUDE_NEXT@ INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ INSTALL = @INSTALL@ @@ -558,6 +592,8 @@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ +LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ LIB_SETSOCKOPT = @LIB_SETSOCKOPT@ LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ @@ -624,21 +660,24 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ POSUB = @POSUB@ +PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@ +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ PU_RMT_PROG = @PU_RMT_PROG@ RANLIB = @RANLIB@ REPLACE_BTOWC = @REPLACE_BTOWC@ +REPLACE_CALLOC = @REPLACE_CALLOC@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ +REPLACE_DIRFD = @REPLACE_DIRFD@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_FCHDIR = @REPLACE_FCHDIR@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ @@ -661,6 +700,7 @@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ +REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ REPLACE_LCHOWN = @REPLACE_LCHOWN@ REPLACE_LINK = @REPLACE_LINK@ @@ -668,6 +708,7 @@ REPLACE_LINKAT = @REPLACE_LINKAT@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ +REPLACE_MALLOC = @REPLACE_MALLOC@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ @@ -693,7 +734,9 @@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PUTENV = @REPLACE_PUTENV@ +REPLACE_PWRITE = @REPLACE_PWRITE@ REPLACE_READLINK = @REPLACE_READLINK@ +REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -705,17 +748,21 @@ REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRDUP = @REPLACE_STRDUP@ REPLACE_STRERROR = @REPLACE_STRERROR@ +REPLACE_STRNCAT = @REPLACE_STRNCAT@ REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRPTIME = @REPLACE_STRPTIME@ +REPLACE_STRNLEN = @REPLACE_STRNLEN@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ REPLACE_STRSTR = @REPLACE_STRSTR@ REPLACE_STRTOD = @REPLACE_STRTOD@ REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TMPFILE = @REPLACE_TMPFILE@ +REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ REPLACE_UNLINK = @REPLACE_UNLINK@ REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ REPLACE_UNSETENV = @REPLACE_UNSETENV@ @@ -785,6 +832,7 @@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ +gltests_WITNESS = @gltests_WITNESS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ diff --git a/scripts/backup-specs b/scripts/backup-specs index 47d4f16..ae8df8a 100644 --- a/scripts/backup-specs +++ b/scripts/backup-specs @@ -65,9 +65,9 @@ XLIST=exclude_files SLEEP_TIME=15 # Script to be run when it's time to insert a new tape in for the next -# volume. Administrators may want to tailor this script for their site. +# volume. Administrators may want to tailor this script for their site. # If this variable isn't set, tar will use some default behavior which is -# probably defined in the manual. +# probably defined in the manual. #DUMP_REMIND_SCRIPT='rsh apple-gunkies /home/gd2/dump/dump-remind' # Message to display on the terminal while waiting for dump time. Usually @@ -75,7 +75,7 @@ SLEEP_TIME=15 # entertaining than this. The awk script here saves some redundant # repetition, but is not really all that desirable. SLEEP_MESSAGE="`awk ' - BEGIN { + BEGIN { for (i = 0; i < 30; i++) print \" \" \ \"D O N O T T O U C H T H I S T E R M I N A L !!!!!\" diff --git a/scripts/dump-remind.in b/scripts/dump-remind.in index 0b95f4b..a3f013f 100644 --- a/scripts/dump-remind.in +++ b/scripts/dump-remind.in @@ -2,14 +2,14 @@ # This file is included in the GNU tar distribution as an example. It is # not used by default unless the proper line is uncommented in backup-specs. # System administrators will probably want to customize this and -# backup-specs for their site. +# backup-specs for their site. # # This script should be run by tar with --info-script (-F) to inform # interested parties that a tape for the next volume of the backup needs to -# be put in the tape drive. +# be put in the tape drive. # -# Include location of `sendmail' and GNU finger. +# Include location of `sendmail' and GNU finger. PATH="/usr/lib:/usr/local/gnubin:${PATH}" export PATH @@ -27,7 +27,7 @@ MT_OFFLINE # # Certain users (like `root') aren't real users, and shouldn't be notified. # Neither should `zippy', `elvis', etc. (on the GNU machines) since they're -# just test accounts. +# just test accounts. recipients="` finger .clients 2> /dev/null \ | sed -ne ' @@ -69,8 +69,8 @@ Cc: ${ADMINISTRATOR} Subject: Backup needs new tape for volume ${TAR_VOLUME} Reply-To: ${ADMINISTRATOR} -This is an automated report from the backup script running on -`hostname`. +This is an automated report from the backup script running on +`hostname`. Volume ${TAR_VOLUME} of the backup needs to be put in the tape drive. Usually whoever prepared the backup leaves labeled tapes on top of the @@ -92,8 +92,8 @@ Cc: ${ADMINISTRATOR} Subject: Volume ${TAR_VOLUME} for backup has been added Reply-To: ${ADMINISTRATOR} -This is an automated report from the backup script running on -`hostname`. +This is an automated report from the backup script running on +`hostname`. The backup has been continued, so for now no further attention is required. __EOF__ diff --git a/src/Makefile.am b/src/Makefile.am index fcbac33..de310f4 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -48,4 +48,4 @@ INCLUDES = -I$(top_srcdir)/gnu -I../ -I../gnu -I$(top_srcdir)/lib -I../lib LDADD = ../lib/libtar.a ../gnu/libgnu.a $(LIBINTL) $(LIBICONV) -tar_LDADD = $(LDADD) $(LIB_CLOCK_GETTIME) +tar_LDADD = $(LDADD) $(LIB_CLOCK_GETTIME) $(LIB_EACCESS) diff --git a/src/Makefile.in b/src/Makefile.in index 164869c..41151f2 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -47,11 +47,11 @@ DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/argmatch.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/backupfile.m4 \ - $(top_srcdir)/m4/bison.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/canonicalize.m4 \ + $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/backupfile.m4 $(top_srcdir)/m4/bison.m4 \ + $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/canonicalize.m4 \ $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/chown.m4 \ - $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/cloexec.m4 \ $(top_srcdir)/m4/close-stream.m4 $(top_srcdir)/m4/close.m4 \ $(top_srcdir)/m4/closeout.m4 $(top_srcdir)/m4/codeset.m4 \ $(top_srcdir)/m4/d-ino.m4 $(top_srcdir)/m4/dirent-safer.m4 \ @@ -64,17 +64,17 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/fchdir.m4 $(top_srcdir)/m4/fclose.m4 \ $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopendir.m4 \ - $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpending.m4 \ - $(top_srcdir)/m4/fseeko.m4 $(top_srcdir)/m4/ftruncate.m4 \ + $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \ + $(top_srcdir)/m4/fpending.m4 $(top_srcdir)/m4/fseeko.m4 \ + $(top_srcdir)/m4/futimens.m4 \ $(top_srcdir)/m4/getcwd-abort-bug.m4 \ $(top_srcdir)/m4/getcwd-path-max.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdate.m4 $(top_srcdir)/m4/getdelim.m4 \ - $(top_srcdir)/m4/getdtablesize.m4 $(top_srcdir)/m4/getline.m4 \ - $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \ - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gettime.m4 \ - $(top_srcdir)/m4/gettimeofday.m4 $(top_srcdir)/m4/glibc21.m4 \ - $(top_srcdir)/m4/gnulib-common.m4 \ + $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ + $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ + $(top_srcdir)/m4/getpagesize.m4 $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \ + $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ $(top_srcdir)/m4/gnulib-comp.m4 $(top_srcdir)/m4/hash.m4 \ $(top_srcdir)/m4/human.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \ @@ -84,54 +84,61 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/lchown.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \ - $(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-zh.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \ - $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/malloc.m4 \ - $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/mbchar.m4 \ - $(top_srcdir)/m4/mbiter.m4 $(top_srcdir)/m4/mbrtowc.m4 \ - $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbsrtowcs.m4 \ - $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/memchr.m4 \ - $(top_srcdir)/m4/mempcpy.m4 $(top_srcdir)/m4/memrchr.m4 \ - $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkdtemp.m4 \ + $(top_srcdir)/m4/libunistring-base.m4 \ + $(top_srcdir)/m4/link-follow.m4 $(top_srcdir)/m4/link.m4 \ + $(top_srcdir)/m4/linkat.m4 $(top_srcdir)/m4/localcharset.m4 \ + $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ + $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \ + $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ + $(top_srcdir)/m4/mbchar.m4 $(top_srcdir)/m4/mbiter.m4 \ + $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ + $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ + $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ + $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mkdir.m4 \ + $(top_srcdir)/m4/mkdtemp.m4 $(top_srcdir)/m4/mkfifo.m4 \ + $(top_srcdir)/m4/mkfifoat.m4 $(top_srcdir)/m4/mknod.m4 \ $(top_srcdir)/m4/mktime.m4 $(top_srcdir)/m4/mmap-anon.m4 \ $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/modechange.m4 \ $(top_srcdir)/m4/multiarch.m4 $(top_srcdir)/m4/nl_langinfo.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/paxutils.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/priv-set.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/quote.m4 \ - $(top_srcdir)/m4/quotearg.m4 $(top_srcdir)/m4/rawmemchr.m4 \ - $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rmdir.m4 \ + $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/parse-datetime.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/paxutils.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/priv-set.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \ + $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/readlink.m4 \ + $(top_srcdir)/m4/readlinkat.m4 $(top_srcdir)/m4/realloc.m4 \ + $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rename.m4 \ + $(top_srcdir)/m4/renameat.m4 $(top_srcdir)/m4/rmdir.m4 \ $(top_srcdir)/m4/rmt.m4 $(top_srcdir)/m4/rpmatch.m4 \ $(top_srcdir)/m4/rtapelib.m4 $(top_srcdir)/m4/safe-read.m4 \ - $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/same.m4 \ - $(top_srcdir)/m4/save-cwd.m4 $(top_srcdir)/m4/savedir.m4 \ - $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/sleep.m4 $(top_srcdir)/m4/snprintf.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/stpcpy.m4 $(top_srcdir)/m4/strcase.m4 \ - $(top_srcdir)/m4/strchrnul.m4 $(top_srcdir)/m4/strdup.m4 \ - $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/string_h.m4 \ - $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strndup.m4 \ - $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoimax.m4 \ - $(top_srcdir)/m4/strtol.m4 $(top_srcdir)/m4/strtoll.m4 \ - $(top_srcdir)/m4/strtoul.m4 $(top_srcdir)/m4/strtoull.m4 \ - $(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/sys_stat_h.m4 \ - $(top_srcdir)/m4/sys_time_h.m4 $(top_srcdir)/m4/sysexits.m4 \ - $(top_srcdir)/m4/system.m4 $(top_srcdir)/m4/tempname.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/unistd-safer.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlink.m4 $(top_srcdir)/m4/unlinkdir.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/utimbuf.m4 \ - $(top_srcdir)/m4/utimens.m4 $(top_srcdir)/m4/utimes.m4 \ + $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/save-cwd.m4 \ + $(top_srcdir)/m4/savedir.m4 $(top_srcdir)/m4/setenv.m4 \ + $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ + $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \ + $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ + $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ + $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ + $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ + $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ + $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ + $(top_srcdir)/m4/strtoimax.m4 $(top_srcdir)/m4/strtol.m4 \ + $(top_srcdir)/m4/strtoll.m4 $(top_srcdir)/m4/strtoul.m4 \ + $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/strtoumax.m4 \ + $(top_srcdir)/m4/symlink.m4 $(top_srcdir)/m4/symlinkat.m4 \ + $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \ + $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/system.m4 \ + $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd-safer.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \ + $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/utimbuf.m4 $(top_srcdir)/m4/utimens.m4 \ + $(top_srcdir)/m4/utimensat.m4 $(top_srcdir)/m4/utimes.m4 \ $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/vasprintf.m4 \ $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/vsnprintf.m4 \ $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/wchar_h.m4 \ @@ -195,6 +202,7 @@ ALLOCA_H = @ALLOCA_H@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ +ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOM4TE = @AUTOM4TE@ @@ -292,6 +300,7 @@ GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ +GNULIB_GRANTPT = @GNULIB_GRANTPT@ GNULIB_IMAXABS = @GNULIB_IMAXABS@ GNULIB_IMAXDIV = @GNULIB_IMAXDIV@ GNULIB_LCHMOD = @GNULIB_LCHMOD@ @@ -347,10 +356,12 @@ GNULIB_POPEN = @GNULIB_POPEN@ GNULIB_PREAD = @GNULIB_PREAD@ GNULIB_PRINTF = @GNULIB_PRINTF@ GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ +GNULIB_PTSNAME = @GNULIB_PTSNAME@ GNULIB_PUTC = @GNULIB_PUTC@ GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ GNULIB_PUTENV = @GNULIB_PUTENV@ GNULIB_PUTS = @GNULIB_PUTS@ +GNULIB_PWRITE = @GNULIB_PWRITE@ GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ GNULIB_READLINK = @GNULIB_READLINK@ @@ -375,6 +386,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ GNULIB_STRDUP = @GNULIB_STRDUP@ GNULIB_STRERROR = @GNULIB_STRERROR@ +GNULIB_STRNCAT = @GNULIB_STRNCAT@ GNULIB_STRNDUP = @GNULIB_STRNDUP@ GNULIB_STRNLEN = @GNULIB_STRNLEN@ GNULIB_STRPBRK = @GNULIB_STRPBRK@ @@ -391,11 +403,16 @@ GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@ GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ GNULIB_SYMLINK = @GNULIB_SYMLINK@ GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ +GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ GNULIB_TIMEGM = @GNULIB_TIMEGM@ +GNULIB_TIME_R = @GNULIB_TIME_R@ +GNULIB_TMPFILE = @GNULIB_TMPFILE@ +GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@ GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ GNULIB_UNLINK = @GNULIB_UNLINK@ GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ +GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ GNULIB_UNSETENV = @GNULIB_UNSETENV@ GNULIB_USLEEP = @GNULIB_USLEEP@ GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ @@ -413,20 +430,23 @@ GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ GNULIB_WCTOB = @GNULIB_WCTOB@ GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ GNULIB_WRITE = @GNULIB_WRITE@ +GNULIB__EXIT = @GNULIB__EXIT@ GREP = @GREP@ HAVE_ALPHASORT = @HAVE_ALPHASORT@ HAVE_ATOLL = @HAVE_ATOLL@ HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_CALLOC_POSIX = @HAVE_CALLOC_POSIX@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ HAVE_CHOWN = @HAVE_CHOWN@ HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ +HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ +HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ +HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ @@ -434,7 +454,6 @@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR = @HAVE_DECL_STRERROR@ HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ @@ -450,12 +469,15 @@ HAVE_DUP2 = @HAVE_DUP2@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_FACCESSAT = @HAVE_FACCESSAT@ +HAVE_FCHDIR = @HAVE_FCHDIR@ HAVE_FCHMODAT = @HAVE_FCHMODAT@ HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ HAVE_FCNTL = @HAVE_FCNTL@ HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ +HAVE_FSEEKO = @HAVE_FSEEKO@ HAVE_FSTATAT = @HAVE_FSTATAT@ HAVE_FSYNC = @HAVE_FSYNC@ +HAVE_FTELLO = @HAVE_FTELLO@ HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ HAVE_FUTIMENS = @HAVE_FUTIMENS@ HAVE_GETDOMAINNAME = @HAVE_GETDOMAINNAME@ @@ -467,25 +489,29 @@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ -HAVE_GETUSERSHELL = @HAVE_GETUSERSHELL@ +HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ +HAVE_ISWBLANK = @HAVE_ISWBLANK@ HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ +HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ +HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ HAVE_LCHMOD = @HAVE_LCHMOD@ HAVE_LCHOWN = @HAVE_LCHOWN@ HAVE_LINK = @HAVE_LINK@ HAVE_LINKAT = @HAVE_LINKAT@ +HAVE_LOCALTIME_R = @HAVE_LOCALTIME_R@ HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MALLOC_POSIX = @HAVE_MALLOC_POSIX@ HAVE_MBRLEN = @HAVE_MBRLEN@ HAVE_MBRTOWC = @HAVE_MBRTOWC@ HAVE_MBSINIT = @HAVE_MBSINIT@ HAVE_MBSLEN = @HAVE_MBSLEN@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ +HAVE_MEMCHR = @HAVE_MEMCHR@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ @@ -495,18 +521,21 @@ HAVE_MKNOD = @HAVE_MKNOD@ HAVE_MKNODAT = @HAVE_MKNODAT@ HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ +HAVE_MKSTEMP = @HAVE_MKSTEMP@ HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ +HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ HAVE_OPENAT = @HAVE_OPENAT@ HAVE_OS_H = @HAVE_OS_H@ HAVE_PIPE2 = @HAVE_PIPE2@ HAVE_PREAD = @HAVE_PREAD@ +HAVE_PTSNAME = @HAVE_PTSNAME@ +HAVE_PWRITE = @HAVE_PWRITE@ HAVE_RANDOM_H = @HAVE_RANDOM_H@ HAVE_RANDOM_R = @HAVE_RANDOM_R@ HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ HAVE_READLINK = @HAVE_READLINK@ HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOC_POSIX = @HAVE_REALLOC_POSIX@ HAVE_REALPATH = @HAVE_REALPATH@ HAVE_RENAMEAT = @HAVE_RENAMEAT@ HAVE_RPMATCH = @HAVE_RPMATCH@ @@ -523,6 +552,7 @@ HAVE_STRCASECMP = @HAVE_STRCASECMP@ HAVE_STRCASESTR = @HAVE_STRCASESTR@ HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ HAVE_STRPBRK = @HAVE_STRPBRK@ +HAVE_STRPTIME = @HAVE_STRPTIME@ HAVE_STRSEP = @HAVE_STRSEP@ HAVE_STRTOD = @HAVE_STRTOD@ HAVE_STRTOLL = @HAVE_STRTOLL@ @@ -539,8 +569,11 @@ HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ +HAVE_TIMEGM = @HAVE_TIMEGM@ +HAVE_TTYNAME_R = @HAVE_TTYNAME_R@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ +HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_UNSETENV = @HAVE_UNSETENV@ HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -555,6 +588,7 @@ HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ HAVE_WINT_T = @HAVE_WINT_T@ HAVE__BOOL = @HAVE__BOOL@ +HAVE__EXIT = @HAVE__EXIT@ INCLUDE_NEXT = @INCLUDE_NEXT@ INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ INSTALL = @INSTALL@ @@ -573,6 +607,8 @@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ +LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ LIB_SETSOCKOPT = @LIB_SETSOCKOPT@ LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ @@ -639,21 +675,24 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ POSUB = @POSUB@ +PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@ +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ PU_RMT_PROG = @PU_RMT_PROG@ RANLIB = @RANLIB@ REPLACE_BTOWC = @REPLACE_BTOWC@ +REPLACE_CALLOC = @REPLACE_CALLOC@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ +REPLACE_DIRFD = @REPLACE_DIRFD@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_FCHDIR = @REPLACE_FCHDIR@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ @@ -676,6 +715,7 @@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ +REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ REPLACE_LCHOWN = @REPLACE_LCHOWN@ REPLACE_LINK = @REPLACE_LINK@ @@ -683,6 +723,7 @@ REPLACE_LINKAT = @REPLACE_LINKAT@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ +REPLACE_MALLOC = @REPLACE_MALLOC@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ @@ -708,7 +749,9 @@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PUTENV = @REPLACE_PUTENV@ +REPLACE_PWRITE = @REPLACE_PWRITE@ REPLACE_READLINK = @REPLACE_READLINK@ +REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -720,17 +763,21 @@ REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRDUP = @REPLACE_STRDUP@ REPLACE_STRERROR = @REPLACE_STRERROR@ +REPLACE_STRNCAT = @REPLACE_STRNCAT@ REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRPTIME = @REPLACE_STRPTIME@ +REPLACE_STRNLEN = @REPLACE_STRNLEN@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ REPLACE_STRSTR = @REPLACE_STRSTR@ REPLACE_STRTOD = @REPLACE_STRTOD@ REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TMPFILE = @REPLACE_TMPFILE@ +REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ REPLACE_UNLINK = @REPLACE_UNLINK@ REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ REPLACE_UNSETENV = @REPLACE_UNSETENV@ @@ -800,6 +847,7 @@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ +gltests_WITNESS = @gltests_WITNESS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -854,7 +902,7 @@ tar_SOURCES = \ INCLUDES = -I$(top_srcdir)/gnu -I../ -I../gnu -I$(top_srcdir)/lib -I../lib LDADD = ../lib/libtar.a ../gnu/libgnu.a $(LIBINTL) $(LIBICONV) -tar_LDADD = $(LDADD) $(LIB_CLOCK_GETTIME) +tar_LDADD = $(LDADD) $(LIB_CLOCK_GETTIME) $(LIB_EACCESS) all: all-am .SUFFIXES: diff --git a/src/arith.h b/src/arith.h index bcd1c0a..a2abfe8 100644 --- a/src/arith.h +++ b/src/arith.h @@ -22,6 +22,6 @@ blocked in 1 kB boundaries. We'll need arbitrary precision arithmetic anyway once we get into the 2**64 range, so there's no point doing anything fancy before then. */ - + #define TARLONG_FORMAT "%.0f" typedef double tarlong; diff --git a/src/buffer.c b/src/buffer.c index 8147def..ef4bbac 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -54,7 +54,7 @@ enum access_mode access_mode; /* how do we handle the archive */ off_t records_read; /* number of records read from this archive */ off_t records_written; /* likewise, for records written */ extern off_t records_skipped; /* number of records skipped at the start - of the archive, defined in delete.c */ + of the archive, defined in delete.c */ static off_t record_start_block; /* block ordinal at record_start */ @@ -77,7 +77,6 @@ static bool read_full_records = false; /* We're reading, but we just read the last block and it's time to update. Declared in update.c - As least EXTERN like this one as possible. (?? --gray) FIXME: Either eliminate it or move it to common.h. */ extern bool time_to_start_writing; @@ -101,19 +100,94 @@ static int global_volno = 1; /* volume number to print in external bool write_archive_to_stdout; -/* Used by flush_read and flush_write to store the real info about saved - names. */ -static char *real_s_name; -static off_t real_s_totsize; -static off_t real_s_sizeleft; - /* Multi-volume tracking support */ -static char *save_name; /* name of the file we are currently writing */ -static off_t save_totsize; /* total size of file we are writing, only - valid if save_name is nonzero */ -static off_t save_sizeleft; /* where we are in the file we are writing, - only valid if save_name is nonzero */ + +/* When creating a multi-volume archive, each `bufmap' represents + a member stored (perhaps partly) in the current record buffer. + After flushing the record to the output media, all bufmaps that + represent fully written members are removed from the list, then + the sizeleft and start numbers in the remaining bufmaps are updated. + + When reading from a multi-volume archive, the list degrades to a + single element, which keeps information about the member currently + being read. +*/ + +struct bufmap +{ + struct bufmap *next; /* Pointer to the next map entry */ + size_t start; /* Offset of the first data block */ + char *file_name; /* Name of the stored file */ + off_t sizetotal; /* Size of the stored file */ + off_t sizeleft; /* Size left to read/write */ +}; +static struct bufmap *bufmap_head, *bufmap_tail; + +/* This variable, when set, inhibits updating the bufmap chain after + a write. This is necessary when writing extended POSIX headers. */ +static int inhibit_map; + +void +mv_begin_write (const char *file_name, off_t totsize, off_t sizeleft) +{ + if (multi_volume_option) + { + struct bufmap *bp = xmalloc (sizeof bp[0]); + if (bufmap_tail) + bufmap_tail->next = bp; + else + bufmap_head = bp; + bufmap_tail = bp; + + bp->next = NULL; + bp->start = current_block - record_start; + bp->file_name = xstrdup (file_name); + bp->sizetotal = totsize; + bp->sizeleft = sizeleft; + } +} + +static struct bufmap * +bufmap_locate (size_t off) +{ + struct bufmap *map; + + for (map = bufmap_head; map; map = map->next) + { + if (!map->next + || off < map->next->start * BLOCKSIZE) + break; + } + return map; +} + +static void +bufmap_free (struct bufmap *mark) +{ + struct bufmap *map; + for (map = bufmap_head; map && map != mark; ) + { + struct bufmap *next = map->next; + free (map->file_name); + free (map); + map = next; + } + bufmap_head = map; + if (!bufmap_head) + bufmap_tail = bufmap_head; +} + +static void +bufmap_reset (struct bufmap *map, ssize_t fixup) +{ + bufmap_free (map); + if (map) + { + for (; map; map = map->next) + map->start += fixup; + } +} static struct tar_stat_info dummy; @@ -125,32 +199,23 @@ buffer_write_global_xheader () } void -mv_begin (struct tar_stat_info *st) +mv_begin_read (struct tar_stat_info *st) { - if (multi_volume_option) - { - assign_string (&save_name, st->orig_file_name); - save_totsize = save_sizeleft = st->stat.st_size; - } + mv_begin_write (st->orig_file_name, st->stat.st_size, st->stat.st_size); } void mv_end () { if (multi_volume_option) - assign_string (&save_name, 0); -} - -void -mv_total_size (off_t size) -{ - save_totsize = size; + bufmap_free (NULL); } void mv_size_left (off_t size) { - save_sizeleft = size; + if (bufmap_head) + bufmap_head->sizeleft = size; } @@ -175,8 +240,8 @@ set_start_time () last_stat_time = start_time; } -void -set_volume_start_time () +static void +set_volume_start_time (void) { gettime (&volume_start_time); last_stat_time = volume_start_time; @@ -211,9 +276,9 @@ struct zip_magic { enum compress_type type; size_t length; - char *magic; - char *program; - char *option; + char const *magic; + char const *program; + char const *option; }; static struct zip_magic const magic[] = { @@ -225,7 +290,7 @@ static struct zip_magic const magic[] = { { ct_lzip, 4, "LZIP", LZIP_PROGRAM, "--lzip" }, { ct_lzma, 6, "\xFFLZMA", LZMA_PROGRAM, "--lzma" }, { ct_lzop, 4, "\211LZO", LZOP_PROGRAM, "--lzop" }, - { ct_xz, 6, "\0xFD7zXZ", XZ_PROGRAM, "-J" }, + { ct_xz, 6, "\xFD" "7zXZ", XZ_PROGRAM, "-J" }, }; #define NMAGIC (sizeof(magic)/sizeof(magic[0])) @@ -234,7 +299,7 @@ static struct zip_magic const magic[] = { #define compress_program(t) magic[t].program /* Check if the file ARCHIVE is a compressed archive. */ -enum compress_type +static enum compress_type check_compressed_archive (bool *pshort) { struct zip_magic const *p; @@ -243,14 +308,14 @@ check_compressed_archive (bool *pshort) if (!pshort) pshort = &temp; - + /* Prepare global data needed for find_next_block: */ record_end = record_start; /* set up for 1st record = # 0 */ sfr = read_full_records; read_full_records = true; /* Suppress fatal error on reading a partial record */ *pshort = find_next_block () == 0; - + /* Restore global values */ read_full_records = sfr; @@ -267,7 +332,7 @@ check_compressed_archive (bool *pshort) /* Guess if the archive is seekable. */ static void -guess_seekable_archive () +guess_seekable_archive (void) { struct stat st; @@ -288,7 +353,7 @@ guess_seekable_archive () seekable_archive = !!seek_option; return; } - + if (!multi_volume_option && !use_compress_program_option && fstat (archive, &st) == 0) seekable_archive = S_ISREG (st.st_mode); @@ -299,8 +364,8 @@ guess_seekable_archive () /* Open an archive named archive_name_array[0]. Detect if it is a compressed archive of known type and use corresponding decompression program if so */ -int -open_compressed_archive () +static int +open_compressed_archive (void) { archive = rmtopen (archive_name_array[0], O_RDONLY | O_BINARY, MODE_RW, rsh_command_option); @@ -320,11 +385,11 @@ open_compressed_archive () if (shortfile) ERROR ((0, 0, _("This does not look like a tar archive"))); return archive; - + case ct_none: if (shortfile) ERROR ((0, 0, _("This does not look like a tar archive"))); - set_comression_program_by_suffix (archive_name_array[0], NULL); + set_compression_program_by_suffix (archive_name_array[0], NULL); if (!use_compress_program_option) return archive; break; @@ -334,10 +399,10 @@ open_compressed_archive () break; } } - + /* FD is not needed any more */ rmtclose (archive); - + hit_eof = false; /* It might have been set by find_next_block in check_compressed_archive */ @@ -486,7 +551,7 @@ xclose (int fd) } static void -init_buffer () +init_buffer (void) { if (! record_buffer_aligned[record_index]) record_buffer_aligned[record_index] = @@ -511,8 +576,6 @@ _open_archive (enum access_mode wanted_access) FATAL_ERROR ((0, 0, _("No archive name given"))); tar_stat_destroy (¤t_stat_info); - save_name = 0; - real_s_name = 0; record_index = 0; init_buffer (); @@ -657,7 +720,7 @@ _open_archive (enum access_mode wanted_access) } /* Perform a write to flush the buffer. */ -ssize_t +static ssize_t _flush_write (void) { ssize_t status; @@ -672,7 +735,21 @@ _flush_write (void) status = record_size; else status = sys_write_archive_buffer (); - + + if (status && multi_volume_option && !inhibit_map) + { + struct bufmap *map = bufmap_locate (status); + if (map) + { + size_t delta = status - map->start * BLOCKSIZE; + if (delta > map->sizeleft) + delta = map->sizeleft; + map->sizeleft -= delta; + if (map->sizeleft == 0) + map = map->next; + bufmap_reset (map, map ? (- map->start) : 0); + } + } return status; } @@ -713,7 +790,7 @@ archive_read_error (void) } static bool -archive_is_dev () +archive_is_dev (void) { struct stat st; @@ -861,7 +938,7 @@ seek_archive (off_t size) if (size <= skipped) return 0; - + /* Compute number of records to skip */ nrec = (size - skipped) / record_size; if (nrec == 0) @@ -907,12 +984,9 @@ close_archive (void) sys_wait_for_child (child_pid, hit_eof); tar_stat_destroy (¤t_stat_info); - if (save_name) - free (save_name); - if (real_s_name) - free (real_s_name); free (record_buffer[0]); free (record_buffer[1]); + bufmap_free (NULL); } /* Called to initialize the global volume number. */ @@ -956,7 +1030,7 @@ closeout_volume_number (void) static void -increase_volume_number () +increase_volume_number (void) { global_volno++; if (global_volno < 0) @@ -964,13 +1038,13 @@ increase_volume_number () volno++; } -void +static void change_tape_menu (FILE *read_file) { char *input_buffer = NULL; size_t size = 0; bool stop = false; - + while (!stop) { fputc ('\007', stderr); @@ -1088,7 +1162,7 @@ new_volume (enum access_mode mode) assign_string (&continued_file_name, NULL); continued_file_size = continued_file_offset = 0; current_block = record_start; - + if (rmtclose (archive) != 0) close_error (*archive_name_cursor); @@ -1177,13 +1251,13 @@ read_header0 (struct tar_stat_info *info) return false; } -bool -try_new_volume () +static bool +try_new_volume (void) { size_t status; union block *header; enum access_mode acc; - + switch (subcommand_option) { case APPEND_SUBCOMMAND: @@ -1199,7 +1273,7 @@ try_new_volume () if (!new_volume (acc)) return true; - + while ((status = rmtread (archive, record_start->buffer, record_size)) == SAFE_READ_ERROR) archive_read_error (); @@ -1222,10 +1296,10 @@ try_new_volume () ERROR ((0, 0, _("This does not look like a tar archive"))); return false; } - + xheader_decode (&dummy); /* decodes values from the global header */ tar_stat_destroy (&dummy); - + /* The initial global header must be immediately followed by an extended PAX header for the first member in this volume. However, in some cases tar may split volumes in the middle @@ -1237,7 +1311,7 @@ try_new_volume () HEADER_FAILURE, which is ignored. See also tests/multiv07.at */ - + switch (read_header (&header, &dummy, read_header_auto)) { case HEADER_SUCCESS: @@ -1280,30 +1354,30 @@ try_new_volume () break; } - if (real_s_name) + if (bufmap_head) { uintmax_t s; if (!continued_file_name - || strcmp (continued_file_name, real_s_name)) + || strcmp (continued_file_name, bufmap_head->file_name)) { if ((archive_format == GNU_FORMAT || archive_format == OLDGNU_FORMAT) - && strlen (real_s_name) >= NAME_FIELD_SIZE - && strncmp (continued_file_name, real_s_name, + && strlen (bufmap_head->file_name) >= NAME_FIELD_SIZE + && strncmp (continued_file_name, bufmap_head->file_name, NAME_FIELD_SIZE) == 0) WARN ((0, 0, _("%s is possibly continued on this volume: header contains truncated name"), - quote (real_s_name))); + quote (bufmap_head->file_name))); else { WARN ((0, 0, _("%s is not continued on this volume"), - quote (real_s_name))); + quote (bufmap_head->file_name))); return false; } } s = continued_file_size + continued_file_offset; - if (real_s_totsize != s || s < continued_file_offset) + if (bufmap_head->sizetotal != s || s < continued_file_offset) { char totsizebuf[UINTMAX_STRSIZE_BOUND]; char s1buf[UINTMAX_STRSIZE_BOUND]; @@ -1311,23 +1385,24 @@ try_new_volume () WARN ((0, 0, _("%s is the wrong size (%s != %s + %s)"), quote (continued_file_name), - STRINGIFY_BIGINT (save_totsize, totsizebuf), + STRINGIFY_BIGINT (bufmap_head->sizetotal, totsizebuf), STRINGIFY_BIGINT (continued_file_size, s1buf), STRINGIFY_BIGINT (continued_file_offset, s2buf))); return false; } - if (real_s_totsize - real_s_sizeleft != continued_file_offset) + if (bufmap_head->sizetotal - bufmap_head->sizeleft != + continued_file_offset) { char totsizebuf[UINTMAX_STRSIZE_BOUND]; char s1buf[UINTMAX_STRSIZE_BOUND]; char s2buf[UINTMAX_STRSIZE_BOUND]; WARN ((0, 0, _("This volume is out of sequence (%s - %s != %s)"), - STRINGIFY_BIGINT (real_s_totsize, totsizebuf), - STRINGIFY_BIGINT (real_s_sizeleft, s1buf), + STRINGIFY_BIGINT (bufmap_head->sizetotal, totsizebuf), + STRINGIFY_BIGINT (bufmap_head->sizeleft, s1buf), STRINGIFY_BIGINT (continued_file_offset, s2buf))); - + return false; } } @@ -1348,7 +1423,7 @@ drop_volume_label_suffix (const char *label) if (len < 1) return NULL; - + for (p = label + len - 1; p > label && isdigit ((unsigned char) *p); p--) ; if (p > label && p - (VOLUME_TEXT_LEN - 1) > label) @@ -1365,7 +1440,7 @@ drop_volume_label_suffix (const char *label) return NULL; } - + /* Check LABEL against the volume label, seen as a globbing pattern. Return true if the pattern matches. In case of failure, retry matching a volume sequence number before giving up in @@ -1374,7 +1449,7 @@ static bool check_label_pattern (const char *label) { char *string; - bool result; + bool result = false; if (fnmatch (volume_label_option, label, 0) == 0) return true; @@ -1399,7 +1474,7 @@ match_volume_label (void) if (!volume_label) { union block *label = find_next_block (); - + if (!label) FATAL_ERROR ((0, 0, _("Archive not labeled to match %s"), quote (volume_label_option))); @@ -1425,11 +1500,11 @@ match_volume_label (void) tar_stat_destroy (&st); } } - + if (!volume_label) FATAL_ERROR ((0, 0, _("Archive not labeled to match %s"), quote (volume_label_option))); - + if (!check_label_pattern (volume_label)) FATAL_ERROR ((0, 0, _("Volume %s does not match %s"), quote_n (0, volume_label), @@ -1477,26 +1552,24 @@ add_volume_label (void) } static void -add_chunk_header () +add_chunk_header (struct bufmap *map) { if (archive_format == POSIX_FORMAT) { off_t block_ordinal; union block *blk; struct tar_stat_info st; - static size_t real_s_part_no; /* FIXME */ - real_s_part_no++; memset (&st, 0, sizeof st); - st.orig_file_name = st.file_name = real_s_name; + st.orig_file_name = st.file_name = map->file_name; st.stat.st_mode = S_IFREG|S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH; st.stat.st_uid = getuid (); st.stat.st_gid = getgid (); st.orig_file_name = xheader_format_name (&st, "%d/GNUFileParts.%p/%f.%n", - real_s_part_no); + volno); st.file_name = st.orig_file_name; - st.archive_file_size = st.stat.st_size = real_s_sizeleft; + st.archive_file_size = st.stat.st_size = map->sizeleft; block_ordinal = current_block_ordinal (); blk = start_header (&st); @@ -1520,27 +1593,23 @@ write_volume_label (void) /* Write GNU multi-volume header */ static void -gnu_add_multi_volume_header (void) +gnu_add_multi_volume_header (struct bufmap *map) { int tmp; union block *block = find_next_block (); - if (strlen (real_s_name) > NAME_FIELD_SIZE) + if (strlen (map->file_name) > NAME_FIELD_SIZE) WARN ((0, 0, _("%s: file name too long to be stored in a GNU multivolume header, truncated"), - quotearg_colon (real_s_name))); + quotearg_colon (map->file_name))); memset (block, 0, BLOCKSIZE); - /* FIXME: Michael P Urban writes: [a long name file] is being written - when a new volume rolls around [...] Looks like the wrong value is - being preserved in real_s_name, though. */ - - strncpy (block->header.name, real_s_name, NAME_FIELD_SIZE); + strncpy (block->header.name, map->file_name, NAME_FIELD_SIZE); block->header.typeflag = GNUTYPE_MULTIVOL; - OFF_TO_CHARS (real_s_sizeleft, block->header.size); - OFF_TO_CHARS (real_s_totsize - real_s_sizeleft, + OFF_TO_CHARS (map->sizeleft, block->header.size); + OFF_TO_CHARS (map->sizetotal - map->sizeleft, block->oldgnu_header.offset); tmp = verbose_option; @@ -1553,40 +1622,17 @@ gnu_add_multi_volume_header (void) /* Add a multi volume header to the current archive. The exact header format depends on the archive format. */ static void -add_multi_volume_header (void) +add_multi_volume_header (struct bufmap *map) { if (archive_format == POSIX_FORMAT) { - off_t d = real_s_totsize - real_s_sizeleft; - xheader_store ("GNU.volume.filename", &dummy, real_s_name); - xheader_store ("GNU.volume.size", &dummy, &real_s_sizeleft); + off_t d = map->sizetotal - map->sizeleft; + xheader_store ("GNU.volume.filename", &dummy, map->file_name); + xheader_store ("GNU.volume.size", &dummy, &map->sizeleft); xheader_store ("GNU.volume.offset", &dummy, &d); } else - gnu_add_multi_volume_header (); -} - -/* Synchronize multi-volume globals */ -static void -multi_volume_sync () -{ - if (multi_volume_option) - { - if (save_name) - { - assign_string (&real_s_name, - safer_name_suffix (save_name, false, - absolute_names_option)); - real_s_totsize = save_totsize; - real_s_sizeleft = save_sizeleft; - } - else - { - assign_string (&real_s_name, 0); - real_s_totsize = 0; - real_s_sizeleft = 0; - } - } + gnu_add_multi_volume_header (map); } @@ -1599,7 +1645,7 @@ simple_flush_read (void) size_t status; /* result from system call */ checkpoint_run (false); - + /* Clear the count of errors. This only applies to a single call to flush_read. */ @@ -1658,7 +1704,7 @@ _gnu_flush_read (void) size_t status; /* result from system call */ checkpoint_run (false); - + /* Clear the count of errors. This only applies to a single call to flush_read. */ @@ -1673,8 +1719,6 @@ _gnu_flush_read (void) archive_write_error (status); } - multi_volume_sync (); - for (;;) { status = rmtread (archive, record_start->buffer, record_size); @@ -1726,36 +1770,36 @@ _gnu_flush_write (size_t buffer_level) char *copy_ptr; size_t copy_size; size_t bufsize; - tarlong wrt; - + struct bufmap *map; + status = _flush_write (); if (status != record_size && !multi_volume_option) archive_write_error (status); else { if (status) - records_written++; + records_written++; bytes_written += status; } if (status == record_size) { - multi_volume_sync (); return; } + map = bufmap_locate (status); + if (status % BLOCKSIZE) { ERROR ((0, 0, _("write did not end on a block boundary"))); archive_write_error (status); } - + /* In multi-volume mode. */ /* ENXIO is for the UNIX PC. */ if (status < 0 && errno != ENOSPC && errno != EIO && errno != ENXIO) archive_write_error (status); - real_s_sizeleft -= status; if (!new_volume (ACCESS_WRITE)) return; @@ -1767,25 +1811,28 @@ _gnu_flush_write (size_t buffer_level) copy_ptr = record_start->buffer + status; copy_size = buffer_level - status; - + /* Switch to the next buffer */ record_index = !record_index; init_buffer (); + inhibit_map = 1; + if (volume_label_option) add_volume_label (); - if (real_s_name) - add_multi_volume_header (); + if (map) + add_multi_volume_header (map); write_extended (true, &dummy, find_next_block ()); tar_stat_destroy (&dummy); - - if (real_s_name) - add_chunk_header (); - wrt = bytes_written; + + if (map) + add_chunk_header (map); header = find_next_block (); + bufmap_reset (map, header - record_start); bufsize = available_space_after (header); + inhibit_map = 0; while (bufsize < copy_size) { memcpy (header->buffer, copy_ptr, bufsize); @@ -1798,16 +1845,6 @@ _gnu_flush_write (size_t buffer_level) memcpy (header->buffer, copy_ptr, copy_size); memset (header->buffer + copy_size, 0, bufsize - copy_size); set_next_block_after (header + (copy_size - 1) / BLOCKSIZE); - if (multi_volume_option && wrt < bytes_written) - { - /* The value of bytes_written has changed while moving data; - that means that flush_archive was executed at least once in - between, and, as a consequence, copy_size bytes were not written - to disk. We need to update sizeleft variables to compensate for - that. */ - save_sizeleft += copy_size; - multi_volume_sync (); - } find_next_block (); } @@ -1841,6 +1878,7 @@ open_archive (enum access_mode wanted_access) switch (wanted_access) { case ACCESS_READ: + case ACCESS_UPDATE: if (volume_label_option) match_volume_label (); break; @@ -1850,9 +1888,6 @@ open_archive (enum access_mode wanted_access) if (volume_label_option) write_volume_label (); break; - - default: - break; } set_volume_start_time (); } diff --git a/src/checkpoint.c b/src/checkpoint.c index 9f031f7..a2896ab 100644 --- a/src/checkpoint.c +++ b/src/checkpoint.c @@ -77,7 +77,7 @@ void checkpoint_compile_action (const char *str) { struct checkpoint_action *act; - + if (strcmp (str, ".") == 0 || strcmp (str, "dot") == 0) alloc_action (cop_dot); else if (strcmp (str, "bell") == 0) @@ -119,14 +119,14 @@ checkpoint_finish_compile () { if (!checkpoint_action) /* Provide a historical default */ - checkpoint_compile_action ("echo"); + checkpoint_compile_action ("echo"); } else if (checkpoint_action) /* Otherwise, set default checkpoint rate */ checkpoint_option = DEFAULT_CHECKPOINT; } -char * +static char * expand_checkpoint_string (const char *input, bool do_write, unsigned cpn) { const char *opstr = do_write ? gettext ("write") : gettext ("read"); @@ -147,7 +147,7 @@ expand_checkpoint_string (const char *input, bool do_write, unsigned cpn) case 'u': outlen += cpslen - 2; break; - + case 's': outlen += opstrlen - 2; } @@ -164,11 +164,11 @@ expand_checkpoint_string (const char *input, bool do_write, unsigned cpn) case 'u': op = stpcpy (op, cps); break; - + case 's': op = stpcpy (op, opstr); break; - + default: *op++ = '%'; *op++ = *ip; @@ -188,7 +188,7 @@ run_checkpoint_actions (bool do_write) { struct checkpoint_action *p; FILE *tty = NULL; - + for (p = checkpoint_action; p; p = p->next) { switch (p->opcode) @@ -207,7 +207,7 @@ run_checkpoint_actions (bool do_write) fflush (tty); } break; - + case cop_echo: { char *tmp; @@ -232,7 +232,7 @@ run_checkpoint_actions (bool do_write) free (tmp); } break; - + case cop_ttyout: if (!tty) tty = fopen ("/dev/tty", "w"); @@ -245,11 +245,11 @@ run_checkpoint_actions (bool do_write) free (tmp); } break; - + case cop_sleep: sleep (p->v.time); break; - + case cop_exec: sys_exec_checkpoint_script (p->v.command, archive_name_cursor[0], @@ -266,5 +266,4 @@ checkpoint_run (bool do_write) { if (checkpoint_option && !(++checkpoint % checkpoint_option)) run_checkpoint_actions (do_write); -} - +} diff --git a/src/common.h b/src/common.h index d2de528..192cf9e 100644 --- a/src/common.h +++ b/src/common.h @@ -1,7 +1,7 @@ /* Common declarations for the tar program. Copyright (C) 1988, 1992, 1993, 1994, 1996, 1997, 1999, 2000, 2001, - 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, + 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it @@ -105,6 +105,8 @@ GLOBAL bool absolute_names_option; /* Display file times in UTC */ GLOBAL bool utc_option; +/* Output file timestamps to the full resolution */ +GLOBAL bool full_time_option; /* This variable tells how to interpret newer_mtime_option, below. If zero, files get archived if their mtime is not less than newer_mtime_option. @@ -335,12 +337,12 @@ struct name int matching_flags; /* wildcard flags if name is a pattern */ bool cmdline; /* true if this name was given in the command line */ - + int change_dir; /* Number of the directory to change to. Set with the -C option. */ uintmax_t found_count; /* number of times a matching file has been found */ - + /* The following members are used for incremental dumps only, if this struct name represents a directory; see incremen.c */ @@ -355,6 +357,11 @@ struct name GLOBAL dev_t ar_dev; GLOBAL ino_t ar_ino; +/* Flags for reading, searching, and fstatatting files. */ +GLOBAL int open_read_flags; +GLOBAL int open_searchdir_flags; +GLOBAL int fstatat_flags; + GLOBAL int seek_option; GLOBAL bool seekable_archive; @@ -425,9 +432,10 @@ void archive_read_error (void); off_t seek_archive (off_t size); void set_start_time (void); -void mv_begin (struct tar_stat_info *st); +void mv_begin_write (const char *file_name, off_t totsize, off_t sizeleft); + +void mv_begin_read (struct tar_stat_info *st); void mv_end (void); -void mv_total_size (off_t size); void mv_size_left (off_t size); void buffer_write_global_xheader (void); @@ -443,13 +451,14 @@ enum dump_status }; void add_exclusion_tag (const char *name, enum exclusion_tag_type type, - bool (*)(const char*)); -bool cachedir_file_p (const char *name); + bool (*predicate) (int)); +bool cachedir_file_p (int fd); +char *get_directory_entries (struct tar_stat_info *st); -bool file_dumpable_p (struct tar_stat_info *st); void create_archive (void); void pad_archive (off_t size_left); -void dump_file (const char *st, bool top_level, dev_t parent_device); +void dump_file (struct tar_stat_info *parent, char const *name, + char const *fullname); union block *start_header (struct tar_stat_info *st); void finish_header (struct tar_stat_info *st, union block *header, off_t block_ordinal); @@ -459,33 +468,18 @@ union block * write_extended (bool global, struct tar_stat_info *st, union block *start_private_header (const char *name, size_t size, time_t t); void write_eot (void); void check_links (void); +int subfile_open (struct tar_stat_info const *dir, char const *file, int flags); +void restore_parent_fd (struct tar_stat_info const *st); void exclusion_tag_warning (const char *dirname, const char *tagname, const char *message); -enum exclusion_tag_type check_exclusion_tags (const char *dirname, +enum exclusion_tag_type check_exclusion_tags (struct tar_stat_info const *st, const char **tag_file_name); - -#define GID_TO_CHARS(val, where) gid_to_chars (val, where, sizeof (where)) -#define MAJOR_TO_CHARS(val, where) major_to_chars (val, where, sizeof (where)) -#define MINOR_TO_CHARS(val, where) minor_to_chars (val, where, sizeof (where)) -#define MODE_TO_CHARS(val, where) mode_to_chars (val, where, sizeof (where)) + #define OFF_TO_CHARS(val, where) off_to_chars (val, where, sizeof (where)) -#define SIZE_TO_CHARS(val, where) size_to_chars (val, where, sizeof (where)) #define TIME_TO_CHARS(val, where) time_to_chars (val, where, sizeof (where)) -#define UID_TO_CHARS(val, where) uid_to_chars (val, where, sizeof (where)) -#define UINTMAX_TO_CHARS(val, where) uintmax_to_chars (val, where, sizeof (where)) -#define UNAME_TO_CHARS(name,buf) string_to_chars (name, buf, sizeof(buf)) -#define GNAME_TO_CHARS(name,buf) string_to_chars (name, buf, sizeof(buf)) - -bool gid_to_chars (gid_t gid, char *buf, size_t size); -bool major_to_chars (major_t m, char *buf, size_t size); -bool minor_to_chars (minor_t m, char *buf, size_t size); -bool mode_to_chars (mode_t m, char *buf, size_t size); + bool off_to_chars (off_t off, char *buf, size_t size); -bool size_to_chars (size_t v, char *buf, size_t size); bool time_to_chars (time_t t, char *buf, size_t size); -bool uid_to_chars (uid_t uid, char *buf, size_t size); -bool uintmax_to_chars (uintmax_t v, char *buf, size_t size); -void string_to_chars (char const *s, char *buf, size_t size); /* Module diffarch.c. */ @@ -507,18 +501,8 @@ bool rename_directory (char *src, char *dst); void delete_archive_members (void); /* Module incremen.c. */ -typedef struct dumpdir *dumpdir_t; -typedef struct dumpdir_iter *dumpdir_iter_t; - -dumpdir_t dumpdir_create0 (const char *contents, const char *cmask); -dumpdir_t dumpdir_create (const char *contents); -void dumpdir_free (dumpdir_t); -char *dumpdir_locate (dumpdir_t dump, const char *name); -char *dumpdir_next (dumpdir_iter_t itr); -char *dumpdir_first (dumpdir_t dump, int all, dumpdir_iter_t *pitr); - -struct directory *scan_directory (char *dir, dev_t device, bool cmdline); -void name_fill_directory (struct name *name, dev_t device, bool cmdline); + +struct directory *scan_directory (struct tar_stat_info *st); const char *directory_contents (struct directory *dir); const char *safe_directory_contents (struct directory *dir); @@ -531,7 +515,7 @@ void read_directory_file (void); void write_directory_file (void); void purge_directory (char const *directory_name); void list_dumpdir (char *buffer, size_t size); -void update_parent_directory (const char *name); +void update_parent_directory (struct tar_stat_info *st); size_t dumpdir_size (const char *p); bool is_dumpdir (struct tar_stat_info *stat_info); @@ -568,25 +552,10 @@ void decode_header (union block *header, struct tar_stat_info *stat_info, enum archive_format *format_pointer, int do_user_group); char const *tartime (struct timespec t, bool full_time); -#define GID_FROM_HEADER(where) gid_from_header (where, sizeof (where)) -#define MAJOR_FROM_HEADER(where) major_from_header (where, sizeof (where)) -#define MINOR_FROM_HEADER(where) minor_from_header (where, sizeof (where)) -#define MODE_FROM_HEADER(where, hbits) \ - mode_from_header (where, sizeof (where), hbits) #define OFF_FROM_HEADER(where) off_from_header (where, sizeof (where)) -#define SIZE_FROM_HEADER(where) size_from_header (where, sizeof (where)) -#define TIME_FROM_HEADER(where) time_from_header (where, sizeof (where)) -#define UID_FROM_HEADER(where) uid_from_header (where, sizeof (where)) #define UINTMAX_FROM_HEADER(where) uintmax_from_header (where, sizeof (where)) -gid_t gid_from_header (const char *buf, size_t size); -major_t major_from_header (const char *buf, size_t size); -minor_t minor_from_header (const char *buf, size_t size); -mode_t mode_from_header (const char *buf, size_t size, unsigned *hbits); off_t off_from_header (const char *buf, size_t size); -size_t size_from_header (const char *buf, size_t size); -time_t time_from_header (const char *buf, size_t size); -uid_t uid_from_header (const char *buf, size_t size); uintmax_t uintmax_from_header (const char *buf, size_t size); void list_archive (void); @@ -605,7 +574,6 @@ void skip_member (void); /* Module misc.c. */ void assign_string (char **dest, const char *src); -char *quote_copy_string (const char *str); int unquote_string (char *str); char *zap_slashes (char *name); char *normalize_filename (const char *name); @@ -623,6 +591,8 @@ enum { BILLION = 1000000000, LOG10_BILLION = 9 }; enum { TIMESPEC_STRSIZE_BOUND = UINTMAX_STRSIZE_BOUND + LOG10_BILLION + sizeof "-." - 1 }; +bool must_be_dot_or_slash (char const *); + enum remove_option { ORDINARY_REMOVE_OPTION, @@ -641,8 +611,10 @@ int remove_any_file (const char *file_name, enum remove_option option); bool maybe_backup_file (const char *file_name, bool this_is_the_archive); void undo_last_backup (void); -int deref_stat (bool deref, char const *name, struct stat *buf); +int deref_stat (char const *name, struct stat *buf); +extern int chdir_current; +extern int chdir_fd; int chdir_arg (char const *dir); void chdir_do (int dir); int chdir_count (void); @@ -667,11 +639,12 @@ pid_t xfork (void); void xpipe (int fd[2]); void *page_aligned_alloc (void **ptr, size_t size); -int set_file_atime (int fd, char const *file, - struct timespec const timespec[2]); +int set_file_atime (int fd, int parentfd, char const *file, + struct timespec atime); /* Module names.c. */ +extern size_t name_count; extern struct name *gnu_list_name; void gid_to_gname (gid_t gid, char **gname); @@ -690,6 +663,7 @@ struct name *addname (char const *string, int change_dir, void remname (struct name *name); bool name_match (const char *name); void names_notfound (void); +void label_notfound (void); void collect_and_sort_names (void); struct name *name_scan (const char *name); struct name const *name_from_list (void); @@ -716,9 +690,9 @@ bool contains_dot_dot (char const *name); void usage (int); int confirm (const char *message_action, const char *name); -void request_stdin (const char *option); void tar_stat_init (struct tar_stat_info *st); +bool tar_stat_close (struct tar_stat_info *st); void tar_stat_destroy (struct tar_stat_info *st); void usage (int) __attribute__ ((noreturn)); int tar_timespec_cmp (struct timespec a, struct timespec b); @@ -734,7 +708,6 @@ void update_archive (void); /* Module xheader.c. */ -void xheader_init (struct xheader *xhdr); void xheader_decode (struct tar_stat_info *stat); void xheader_decode_global (struct xheader *xhdr); void xheader_store (char const *keyword, struct tar_stat_info *st, @@ -800,12 +773,11 @@ bool utf8_convert (bool to_utf, char const *input, char **output); void set_transform_expr (const char *expr); bool transform_name (char **pinput, int type); -bool transform_member_name (char **pinput, int type); bool transform_name_fp (char **pinput, int type, char *(*fun)(char *, void *), void *); /* Module suffix.c */ -void set_comression_program_by_suffix (const char *name, const char *defprog); +void set_compression_program_by_suffix (const char *name, const char *defprog); /* Module checkpoint.c */ void checkpoint_compile_action (const char *str); @@ -836,7 +808,7 @@ void checkpoint_run (bool do_write); /* The warnings composing WARN_VERBOSE_WARNINGS are enabled by default in verbose mode */ #define WARN_VERBOSE_WARNINGS (WARN_RENAME_DIRECTORY|WARN_NEW_DIRECTORY) -#define WARN_ALL (0xffffffff & ~WARN_VERBOSE_WARNINGS) +#define WARN_ALL (~WARN_VERBOSE_WARNINGS) void set_warning_option (const char *arg); @@ -856,4 +828,3 @@ void finish_deferred_unlinks (void); /* Module exit.c */ extern void (*fatal_exit_hook) (void); - diff --git a/src/compare.c b/src/compare.c index f4e92da..6b7e6d8 100644 --- a/src/compare.c +++ b/src/compare.c @@ -122,7 +122,7 @@ read_and_process (struct tar_stat_info *st, int (*processor) (size_t, char *)) size_t data_size; off_t size = st->stat.st_size; - mv_begin (st); + mv_begin_read (st); while (size) { data_block = find_next_block (); @@ -151,7 +151,7 @@ read_and_process (struct tar_stat_info *st, int (*processor) (size_t, char *)) static int get_stat_data (char const *file_name, struct stat *stat_data) { - int status = deref_stat (dereference_option, file_name, stat_data); + int status = deref_stat (file_name, stat_data); if (status != 0) { @@ -217,12 +217,7 @@ diff_file (void) } else { - int atime_flag = - (atime_preserve_option == system_atime_preserve - ? O_NOATIME - : 0); - - diff_handle = open (file_name, O_RDONLY | O_BINARY | atime_flag); + diff_handle = openat (chdir_fd, file_name, open_read_flags); if (diff_handle < 0) { @@ -241,10 +236,9 @@ diff_file (void) if (atime_preserve_option == replace_atime_preserve) { - struct timespec ts[2]; - ts[0] = get_stat_atime (&stat_data); - ts[1] = get_stat_mtime (&stat_data); - if (set_file_atime (diff_handle, file_name, ts) != 0) + struct timespec atime = get_stat_atime (&stat_data); + if (set_file_atime (diff_handle, chdir_fd, file_name, atime) + != 0) utime_error (file_name); } @@ -277,7 +271,8 @@ diff_symlink (void) size_t len = strlen (current_stat_info.link_name); char *linkbuf = alloca (len + 1); - int status = readlink (current_stat_info.file_name, linkbuf, len + 1); + int status = readlinkat (chdir_fd, current_stat_info.file_name, + linkbuf, len + 1); if (status < 0) { @@ -331,7 +326,7 @@ static int dumpdir_cmp (const char *a, const char *b) { size_t len; - + while (*a) switch (*a) { @@ -345,7 +340,7 @@ dumpdir_cmp (const char *a, const char *b) a += len; b += len; break; - + case 'D': if (strcmp(a, b)) return 1; @@ -353,7 +348,7 @@ dumpdir_cmp (const char *a, const char *b) a += len; b += len; break; - + case 'R': case 'T': case 'X': @@ -369,7 +364,7 @@ diff_dumpdir (void) dev_t dev = 0; struct stat stat_data; - if (deref_stat (true, current_stat_info.file_name, &stat_data)) + if (deref_stat (current_stat_info.file_name, &stat_data) != 0) { if (errno == ENOENT) stat_warn (current_stat_info.file_name); @@ -379,8 +374,7 @@ diff_dumpdir (void) else dev = stat_data.st_dev; - dumpdir_buffer = directory_contents - (scan_directory (current_stat_info.file_name, dev, false)); + dumpdir_buffer = directory_contents (scan_directory (¤t_stat_info)); if (dumpdir_buffer) { @@ -422,7 +416,8 @@ diff_multivol (void) return; } - fd = open (current_stat_info.file_name, O_RDONLY | O_BINARY); + + fd = openat (chdir_fd, current_stat_info.file_name, open_read_flags); if (fd < 0) { @@ -452,7 +447,6 @@ diff_archive (void) { set_next_block_after (current_header); - decode_header (current_header, ¤t_stat_info, ¤t_format, 1); /* Print the block from current_header and current_stat_info. */ @@ -578,8 +572,8 @@ verify_volume (void) flush_read (); while (1) { - enum read_header status = read_header (¤t_header, - ¤t_stat_info, + enum read_header status = read_header (¤t_header, + ¤t_stat_info, read_header_auto); if (status == HEADER_FAILURE) @@ -609,7 +603,7 @@ verify_volume (void) { char buf[UINTMAX_STRSIZE_BOUND]; - status = read_header (¤t_header, ¤t_stat_info, + status = read_header (¤t_header, ¤t_stat_info, read_header_auto); if (status == HEADER_ZERO_BLOCK) break; @@ -618,7 +612,7 @@ verify_volume (void) STRINGIFY_BIGINT (current_block_ordinal (), buf))); } } - + diff_archive (); tar_stat_destroy (¤t_stat_info); } diff --git a/src/create.c b/src/create.c index c69d340..05af0d9 100644 --- a/src/create.c +++ b/src/create.c @@ -26,11 +26,15 @@ #include "common.h" #include +/* Error number to use when an impostor is discovered. + Pretend the impostor isn't there. */ +enum { IMPOSTOR_ERRNO = ENOENT }; + struct link { dev_t dev; ino_t ino; - size_t nlink; + nlink_t nlink; char name[1]; }; @@ -39,7 +43,7 @@ struct exclusion_tag const char *name; size_t length; enum exclusion_tag_type type; - bool (*predicate) (const char *name); + bool (*predicate) (int fd); struct exclusion_tag *next; }; @@ -47,7 +51,7 @@ static struct exclusion_tag *exclusion_tags; void add_exclusion_tag (const char *name, enum exclusion_tag_type type, - bool (*predicate) (const char *name)) + bool (*predicate) (int fd)) { struct exclusion_tag *tag = xmalloc (sizeof tag[0]); tag->next = exclusion_tags; @@ -71,39 +75,24 @@ exclusion_tag_warning (const char *dirname, const char *tagname, message)); } -enum exclusion_tag_type -check_exclusion_tags (const char *dirname, const char **tag_file_name) +enum exclusion_tag_type +check_exclusion_tags (struct tar_stat_info const *st, char const **tag_file_name) { - static char *tagname; - static size_t tagsize; struct exclusion_tag *tag; - size_t dlen = strlen (dirname); - int addslash = !ISSLASH (dirname[dlen-1]); - size_t noff = 0; - + for (tag = exclusion_tags; tag; tag = tag->next) { - size_t size = dlen + addslash + tag->length + 1; - if (size > tagsize) - { - tagsize = size; - tagname = xrealloc (tagname, tagsize); - } - - if (noff == 0) - { - strcpy (tagname, dirname); - noff = dlen; - if (addslash) - tagname[noff++] = '/'; - } - strcpy (tagname + noff, tag->name); - if (access (tagname, F_OK) == 0 - && (!tag->predicate || tag->predicate (tagname))) + int tagfd = subfile_open (st, tag->name, open_read_flags); + if (0 <= tagfd) { - if (tag_file_name) - *tag_file_name = tag->name; - return tag->type; + bool satisfied = !tag->predicate || tag->predicate (tagfd); + close (tagfd); + if (satisfied) + { + if (tag_file_name) + *tag_file_name = tag->name; + return tag->type; + } } } @@ -121,22 +110,13 @@ check_exclusion_tags (const char *dirname, const char **tag_file_name) #define CACHEDIR_SIGNATURE_SIZE (sizeof CACHEDIR_SIGNATURE - 1) bool -cachedir_file_p (const char *name) +cachedir_file_p (int fd) { - bool tag_present = false; - int fd = open (name, O_RDONLY); - if (fd >= 0) - { - static char tagbuf[CACHEDIR_SIGNATURE_SIZE]; + char tagbuf[CACHEDIR_SIGNATURE_SIZE]; - if (read (fd, tagbuf, CACHEDIR_SIGNATURE_SIZE) - == CACHEDIR_SIGNATURE_SIZE - && memcmp (tagbuf, CACHEDIR_SIGNATURE, CACHEDIR_SIGNATURE_SIZE) == 0) - tag_present = true; - - close (fd); - } - return tag_present; + return + (read (fd, tagbuf, CACHEDIR_SIGNATURE_SIZE) == CACHEDIR_SIGNATURE_SIZE + && memcmp (tagbuf, CACHEDIR_SIGNATURE, CACHEDIR_SIGNATURE_SIZE) == 0); } @@ -214,6 +194,14 @@ to_base256 (int negative, uintmax_t value, char *where, size_t size) while (i); } +#define GID_TO_CHARS(val, where) gid_to_chars (val, where, sizeof (where)) +#define MAJOR_TO_CHARS(val, where) major_to_chars (val, where, sizeof (where)) +#define MINOR_TO_CHARS(val, where) minor_to_chars (val, where, sizeof (where)) +#define MODE_TO_CHARS(val, where) mode_to_chars (val, where, sizeof (where)) +#define UID_TO_CHARS(val, where) uid_to_chars (val, where, sizeof (where)) + +#define UNAME_TO_CHARS(name,buf) string_to_chars (name, buf, sizeof(buf)) +#define GNAME_TO_CHARS(name,buf) string_to_chars (name, buf, sizeof(buf)) static bool to_chars (int negative, uintmax_t value, size_t valsize, @@ -263,7 +251,7 @@ to_chars_subst (int negative, int gnu_format, uintmax_t value, size_t valsize, 1. In OLDGNU_FORMAT all strings in a tar header end in \0 2. Incremental archives use oldgnu_header. - + Apart from this they are completely identical. */ uintmax_t s = (negsub &= archive_format == GNU_FORMAT) ? - sub : sub; char subbuf[UINTMAX_STRSIZE_BOUND + 1]; @@ -368,25 +356,25 @@ gid_substitute (int *negative) return r; } -bool +static bool gid_to_chars (gid_t v, char *p, size_t s) { return to_chars (v < 0, (uintmax_t) v, sizeof v, gid_substitute, p, s, "gid_t"); } -bool +static bool major_to_chars (major_t v, char *p, size_t s) { return to_chars (v < 0, (uintmax_t) v, sizeof v, 0, p, s, "major_t"); } -bool +static bool minor_to_chars (minor_t v, char *p, size_t s) { return to_chars (v < 0, (uintmax_t) v, sizeof v, 0, p, s, "minor_t"); } -bool +static bool mode_to_chars (mode_t v, char *p, size_t s) { /* In the common case where the internal and external mode bits are the same, @@ -432,12 +420,6 @@ off_to_chars (off_t v, char *p, size_t s) return to_chars (v < 0, (uintmax_t) v, sizeof v, 0, p, s, "off_t"); } -bool -size_to_chars (size_t v, char *p, size_t s) -{ - return to_chars (0, (uintmax_t) v, sizeof v, 0, p, s, "size_t"); -} - bool time_to_chars (time_t v, char *p, size_t s) { @@ -460,19 +442,19 @@ uid_substitute (int *negative) return r; } -bool +static bool uid_to_chars (uid_t v, char *p, size_t s) { return to_chars (v < 0, (uintmax_t) v, sizeof v, uid_substitute, p, s, "uid_t"); } -bool +static bool uintmax_to_chars (uintmax_t v, char *p, size_t s) { return to_chars (0, v, sizeof v, 0, p, s, "uintmax_t"); } -void +static void string_to_chars (char const *str, char *p, size_t s) { tar_copy_str (p, str, s); @@ -480,20 +462,25 @@ string_to_chars (char const *str, char *p, size_t s) } -/* A file is considered dumpable if it is sparse and both --sparse and --totals +/* A directory is always considered dumpable. + Otherwise, only regular and contiguous files are considered dumpable. + Such a file is dumpable if it is sparse and both --sparse and --totals are specified. Otherwise, it is dumpable unless any of the following conditions occur: a) it is empty *and* world-readable, or b) current archive is /dev/null */ -bool -file_dumpable_p (struct tar_stat_info *st) +static bool +file_dumpable_p (struct stat const *st) { + if (S_ISDIR (st->st_mode)) + return true; + if (! (S_ISREG (st->st_mode) || S_ISCTG (st->st_mode))) + return false; if (dev_null_output) - return totals_option && sparse_option && ST_IS_SPARSE (st->stat); - return !(st->archive_file_size == 0 - && (st->stat.st_mode & MODE_R) == MODE_R); + return totals_option && sparse_option && ST_IS_SPARSE (*st); + return ! (st->st_size == 0 && (st->st_mode & MODE_R) == MODE_R); } @@ -618,7 +605,7 @@ write_ustar_long_name (const char *name) size_t length = strlen (name); size_t i, nlen; union block *header; - + if (length > PREFIX_FIELD_SIZE + NAME_FIELD_SIZE + 1) { ERROR ((0, 0, _("%s: file name is too long (max %d); not dumped"), @@ -713,7 +700,7 @@ write_extended (bool global, struct tar_stat_info *st, union block *old_header) char *p; int type; time_t t; - + if (st->xhdr.buffer || st->xhdr.stk == NULL) return old_header; @@ -1012,7 +999,6 @@ pad_archive (off_t size_left) union block *blk; while (size_left > 0) { - mv_size_left (size_left); blk = find_next_block (); memset (blk->buffer, 0, BLOCKSIZE); set_next_block_after (blk); @@ -1038,12 +1024,10 @@ dump_regular_file (int fd, struct tar_stat_info *st) finish_header (st, blk, block_ordinal); - mv_begin (st); + mv_begin_write (st->file_name, st->stat.st_size, st->stat.st_size); while (size_left > 0) { size_t bufsize, count; - - mv_size_left (size_left); blk = find_next_block (); @@ -1058,7 +1042,7 @@ dump_regular_file (int fd, struct tar_stat_info *st) memset (blk->buffer + size_left, 0, BLOCKSIZE - count); } - count = (fd < 0) ? bufsize : safe_read (fd, blk->buffer, bufsize); + count = (fd <= 0) ? bufsize : safe_read (fd, blk->buffer, bufsize); if (count == SAFE_READ_ERROR) { read_diag_details (st->orig_file_name, @@ -1080,7 +1064,7 @@ dump_regular_file (int fd, struct tar_stat_info *st) size_left), quotearg_colon (st->orig_file_name), STRINGIFY_BIGINT (size_left, buf))); - if (! ignore_failed_read_option) + if (! ignore_failed_read_option) set_exit_status (TAREXIT_DIFFERS); pad_archive (size_left - (bufsize - count)); return dump_status_short; @@ -1090,11 +1074,13 @@ dump_regular_file (int fd, struct tar_stat_info *st) } +/* Copy info from the directory identified by ST into the archive. + DIRECTORY contains the directory's entries. */ + static void -dump_dir0 (char *directory, - struct tar_stat_info *st, bool top_level, dev_t parent_device) +dump_dir0 (struct tar_stat_info *st, char const *directory) { - dev_t our_device = st->stat.st_dev; + bool top_level = ! st->parent; const char *tag_file_name; union block *blk = NULL; off_t block_ordinal = current_block_ordinal (); @@ -1129,7 +1115,7 @@ dump_dir0 (char *directory, size_t bufsize; ssize_t count; const char *buffer, *p_buffer; - + block_ordinal = current_block_ordinal (); buffer = safe_directory_contents (gnu_list_name->directory); totsize = dumpdir_size (buffer); @@ -1137,12 +1123,10 @@ dump_dir0 (char *directory, finish_header (st, blk, block_ordinal); p_buffer = buffer; size_left = totsize; - - mv_begin (st); - mv_total_size (totsize); + + mv_begin_write (st->file_name, totsize, totsize); while (size_left > 0) { - mv_size_left (size_left); blk = find_next_block (); bufsize = available_space_after (blk); if (size_left < bufsize) @@ -1157,7 +1141,6 @@ dump_dir0 (char *directory, p_buffer += bufsize; set_next_block_after (blk + (bufsize - 1) / BLOCKSIZE); } - mv_end (); } return; } @@ -1167,7 +1150,7 @@ dump_dir0 (char *directory, if (one_file_system_option && !top_level - && parent_device != st->stat.st_dev) + && st->parent->stat.st_dev != st->stat.st_dev) { if (verbose_option) WARNOPT (WARN_XDEV, @@ -1179,13 +1162,13 @@ dump_dir0 (char *directory, { char *name_buf; size_t name_size; - - switch (check_exclusion_tags (st->orig_file_name, &tag_file_name)) + + switch (check_exclusion_tags (st, &tag_file_name)) { case exclusion_tag_all: /* Handled in dump_file0 */ break; - + case exclusion_tag_none: { char const *entry; @@ -1196,7 +1179,6 @@ dump_dir0 (char *directory, name_size = name_len = strlen (name_buf); /* Now output all the files in the directory. */ - /* FIXME: Should speed this up by cd-ing into the dir. */ for (entry = directory; (entry_len = strlen (entry)) != 0; entry += entry_len + 1) { @@ -1207,9 +1189,9 @@ dump_dir0 (char *directory, } strcpy (name_buf + name_len, entry); if (!excluded_name (name_buf)) - dump_file (name_buf, false, our_device); + dump_file (st, entry, name_buf); } - + free (name_buf); } break; @@ -1221,10 +1203,10 @@ dump_dir0 (char *directory, name_buf = xmalloc (name_size); strcpy (name_buf, st->orig_file_name); strcat (name_buf, tag_file_name); - dump_file (name_buf, false, our_device); + dump_file (st, tag_file_name, name_buf); free (name_buf); break; - + case exclusion_tag_under: exclusion_tag_warning (st->orig_file_name, tag_file_name, _("contents not dumped")); @@ -1246,23 +1228,73 @@ ensure_slash (char **pstr) (*pstr)[len] = '\0'; } +/* If we just ran out of file descriptors, release a file descriptor + in the directory chain somewhere leading from DIR->parent->parent + up through the root. Return true if successful, false (preserving + errno == EMFILE) otherwise. + + Do not release DIR's file descriptor, or DIR's parent, as other + code assumes that they work. On some operating systems, another + process can claim file descriptor resources as we release them, and + some calls or their emulations require multiple file descriptors, + so callers should not give up if a single release doesn't work. */ + +static bool +open_failure_recover (struct tar_stat_info const *dir) +{ + if (errno == EMFILE && dir && dir->parent) + { + struct tar_stat_info *p; + for (p = dir->parent->parent; p; p = p->parent) + if (0 < p->fd && (! p->parent || p->parent->fd <= 0)) + { + tar_stat_close (p); + return true; + } + errno = EMFILE; + } + + return false; +} + +/* Return the directory entries of ST, in a dynamically allocated buffer, + each entry followed by '\0' and the last followed by an extra '\0'. + Return null on failure, setting errno. */ +char * +get_directory_entries (struct tar_stat_info *st) +{ + while (! (st->dirstream = fdopendir (st->fd))) + if (! open_failure_recover (st)) + return 0; + return streamsavedir (st->dirstream); +} + +/* Dump the directory ST. Return true if successful, false (emitting + diagnostics) otherwise. Get ST's entries, recurse through its + subdirectories, and clean up file descriptors afterwards. */ static bool -dump_dir (int fd, struct tar_stat_info *st, bool top_level, - dev_t parent_device) +dump_dir (struct tar_stat_info *st) { - char *directory = fdsavedir (fd); - if (!directory) + char *directory = get_directory_entries (st); + if (! directory) { savedir_diag (st->orig_file_name); return false; } - dump_dir0 (directory, st, top_level, parent_device); + dump_dir0 (st, directory); + restore_parent_fd (st); free (directory); return true; } + +/* Number of links a file can have without having to be entered into + the link table. Typically this is 1, but in trickier circumstances + it is 0. */ +static nlink_t trivial_link_count; + /* Main functions of this module. */ @@ -1271,6 +1303,8 @@ create_archive (void) { struct name const *p; + trivial_link_count = name_count <= 1 && ! dereference_option; + open_archive (ACCESS_WRITE); buffer_write_global_xheader (); @@ -1284,12 +1318,13 @@ create_archive (void) while ((p = name_from_list ()) != NULL) if (!excluded_name (p->name)) - dump_file (p->name, p->cmdline, (dev_t) 0); + dump_file (0, p->name, p->name); blank_name_list (); while ((p = name_from_list ()) != NULL) if (!excluded_name (p->name)) { + struct tar_stat_info st; size_t plen = strlen (p->name); if (buffer_size <= plen) { @@ -1300,6 +1335,7 @@ create_archive (void) memcpy (buffer, p->name, plen); if (! ISSLASH (buffer[plen - 1])) buffer[plen++] = DIRECTORY_SEPARATOR; + tar_stat_init (&st); q = directory_contents (gnu_list_name->directory); if (q) while (*q) @@ -1307,6 +1343,23 @@ create_archive (void) size_t qlen = strlen (q); if (*q == 'Y') { + if (! st.orig_file_name) + { + int fd = openat (chdir_fd, p->name, + open_searchdir_flags); + if (fd < 0) + { + open_diag (p->name); + break; + } + st.fd = fd; + if (fstat (fd, &st.stat) != 0) + { + stat_diag (p->name); + break; + } + st.orig_file_name = xstrdup (p->name); + } if (buffer_size < plen + qlen) { while ((buffer_size *=2 ) < plen + qlen) @@ -1314,10 +1367,11 @@ create_archive (void) buffer = xrealloc (buffer, buffer_size); } strcpy (buffer + plen, q + 1); - dump_file (buffer, false, (dev_t) 0); + dump_file (&st, q + 1, buffer); } q += qlen + 1; } + tar_stat_destroy (&st); } free (buffer); } @@ -1326,7 +1380,7 @@ create_archive (void) const char *name; while ((name = name_next (1)) != NULL) if (!excluded_name (name)) - dump_file (name, true, (dev_t) 0); + dump_file (0, name, name); } write_eot (); @@ -1378,7 +1432,8 @@ static Hash_table *link_table; static bool dump_hard_link (struct tar_stat_info *st) { - if (link_table && (st->stat.st_nlink > 1 || remove_files_option)) + if (link_table + && (trivial_link_count < st->stat.st_nlink || remove_files_option)) { struct link lp; struct link *duplicate; @@ -1425,7 +1480,7 @@ file_count_links (struct tar_stat_info *st) { if (hard_dereference_option) return; - if (st->stat.st_nlink > 1) + if (trivial_link_count < st->stat.st_nlink) { struct link *duplicate; char *linkname = NULL; @@ -1433,7 +1488,7 @@ file_count_links (struct tar_stat_info *st) assign_string (&linkname, st->orig_file_name); transform_name (&linkname, XFORM_LINK); - + lp = xmalloc (offsetof (struct link, name) + strlen (linkname) + 1); lp->ino = st->stat.st_ino; @@ -1441,13 +1496,13 @@ file_count_links (struct tar_stat_info *st) lp->nlink = st->stat.st_nlink; strcpy (lp->name, linkname); free (linkname); - + if (! ((link_table || (link_table = hash_initialize (0, 0, hash_link, compare_links, 0))) && (duplicate = hash_insert (link_table, lp)))) xalloc_die (); - + if (duplicate != lp) abort (); lp->nlink--; @@ -1474,26 +1529,96 @@ check_links (void) } } -/* Dump a single file, recursing on directories. P is the file name - to dump. TOP_LEVEL tells whether this is a top-level call; zero - means no, positive means yes, and negative means the top level - of an incremental dump. PARENT_DEVICE is the device of P's - parent directory; it is examined only if TOP_LEVEL is zero. */ +/* Assuming DIR is the working directory, open FILE, using FLAGS to + control the open. A null DIR means to use ".". If we are low on + file descriptors, try to release one or more from DIR's parents to + reuse it. */ +int +subfile_open (struct tar_stat_info const *dir, char const *file, int flags) +{ + int fd; + + static bool initialized; + if (! initialized) + { + /* Initialize any tables that might be needed when file + descriptors are exhausted, and whose initialization might + require a file descriptor. This includes the system message + catalog and tar's message catalog. */ + initialized = true; + strerror (ENOENT); + gettext (""); + } + + while ((fd = openat (dir ? dir->fd : chdir_fd, file, flags)) < 0 + && open_failure_recover (dir)) + continue; + return fd; +} + +/* Restore the file descriptor for ST->parent, if it was temporarily + closed to conserve file descriptors. On failure, set the file + descriptor to the negative of the corresponding errno value. Call + this every time a subdirectory is ascended from. */ +void +restore_parent_fd (struct tar_stat_info const *st) +{ + struct tar_stat_info *parent = st->parent; + if (parent && ! parent->fd) + { + int parentfd = openat (st->fd, "..", open_searchdir_flags); + struct stat parentstat; + + if (parentfd < 0) + parentfd = - errno; + else if (! (fstat (parentfd, &parentstat) == 0 + && parent->stat.st_ino == parentstat.st_ino + && parent->stat.st_dev == parentstat.st_dev)) + { + close (parentfd); + parentfd = IMPOSTOR_ERRNO; + } + + if (parentfd < 0) + { + int origfd = openat (chdir_fd, parent->orig_file_name, + open_searchdir_flags); + if (0 <= origfd) + { + if (fstat (parentfd, &parentstat) == 0 + && parent->stat.st_ino == parentstat.st_ino + && parent->stat.st_dev == parentstat.st_dev) + parentfd = origfd; + else + close (origfd); + } + } + + parent->fd = parentfd; + } +} + +/* Dump a single file, recursing on directories. ST is the file's + status info, NAME its name relative to the parent directory, and P + its full name (which may be relative to the working directory). */ /* FIXME: One should make sure that for *every* path leading to setting exit_status to failure, a clear diagnostic has been issued. */ static void -dump_file0 (struct tar_stat_info *st, const char *p, - bool top_level, dev_t parent_device) +dump_file0 (struct tar_stat_info *st, char const *name, char const *p) { union block *header; char type; off_t original_size; struct timespec original_ctime; - struct timespec restore_times[2]; off_t block_ordinal = -1; + int fd = 0; bool is_dir; + struct tar_stat_info const *parent = st->parent; + bool top_level = ! parent; + int parentfd = top_level ? chdir_fd : parent->fd; + void (*diag) (char const *) = 0; if (interactive_option && !confirm ("add", p)) return; @@ -1504,14 +1629,34 @@ dump_file0 (struct tar_stat_info *st, const char *p, transform_name (&st->file_name, XFORM_REGFILE); - if (deref_stat (dereference_option, p, &st->stat) != 0) + if (parentfd < 0 && ! top_level) + { + errno = - parentfd; + diag = open_diag; + } + else if (fstatat (parentfd, name, &st->stat, fstatat_flags) != 0) + diag = stat_diag; + else if (file_dumpable_p (&st->stat)) + { + fd = subfile_open (parent, name, open_read_flags); + if (fd < 0) + diag = open_diag; + else + { + st->fd = fd; + if (fstat (fd, &st->stat) != 0) + diag = stat_diag; + } + } + if (diag) { - file_removed_diag (p, top_level, stat_diag); + file_removed_diag (p, top_level, diag); return; } + st->archive_file_size = original_size = st->stat.st_size; - st->atime = restore_times[0] = get_stat_atime (&st->stat); - st->mtime = restore_times[1] = get_stat_mtime (&st->stat); + st->atime = get_stat_atime (&st->stat); + st->mtime = get_stat_mtime (&st->stat); st->ctime = original_ctime = get_stat_ctime (&st->stat); #ifdef S_ISHIDDEN @@ -1529,10 +1674,10 @@ dump_file0 (struct tar_stat_info *st, const char *p, /* See if we want only new files, and check if this one is too old to put in the archive. - + This check is omitted if incremental_option is set *and* the requested file is not explicitely listed in the command line. */ - + if (!(incremental_option && !is_individual_file (p)) && !S_ISDIR (st->stat.st_mode) && OLDER_TAR_STAT_TIME (*st, m) @@ -1562,51 +1707,31 @@ dump_file0 (struct tar_stat_info *st, const char *p, if (is_dir || S_ISREG (st->stat.st_mode) || S_ISCTG (st->stat.st_mode)) { bool ok; - int fd = -1; struct stat final_stat; - if (is_dir || file_dumpable_p (st)) - { - fd = open (p, - (O_RDONLY | O_BINARY - | (is_dir ? O_DIRECTORY | O_NONBLOCK : 0) - | (atime_preserve_option == system_atime_preserve - ? O_NOATIME - : 0))); - if (fd < 0) - { - file_removed_diag (p, top_level, open_diag); - return; - } - } - if (is_dir) { const char *tag_file_name; ensure_slash (&st->orig_file_name); ensure_slash (&st->file_name); - if (check_exclusion_tags (st->orig_file_name, &tag_file_name) - == exclusion_tag_all) + if (check_exclusion_tags (st, &tag_file_name) == exclusion_tag_all) { exclusion_tag_warning (st->orig_file_name, tag_file_name, _("directory not dumped")); - if (fd >= 0) - close (fd); return; } - - ok = dump_dir (fd, st, top_level, parent_device); - /* dump_dir consumes FD if successful. */ - if (ok) - fd = -1; + ok = dump_dir (st); + + fd = st->fd; + parentfd = top_level ? chdir_fd : parent->fd; } else { enum dump_status status; - if (fd != -1 && sparse_option && ST_IS_SPARSE (st->stat)) + if (fd && sparse_option && ST_IS_SPARSE (st->stat)) { status = sparse_dump_file (fd, st); if (status == dump_status_not_implemented) @@ -1619,7 +1744,6 @@ dump_file0 (struct tar_stat_info *st, const char *p, { case dump_status_ok: case dump_status_short: - mv_end (); file_count_links (st); break; @@ -1635,21 +1759,26 @@ dump_file0 (struct tar_stat_info *st, const char *p, if (ok) { - /* If possible, reopen a directory if we are preserving - atimes, so that we can set just the atime on systems with - _FIOSATIME. */ - if (fd < 0 && is_dir - && atime_preserve_option == replace_atime_preserve) - fd = open (p, O_RDONLY | O_BINARY | O_DIRECTORY | O_NONBLOCK); - - if ((fd < 0 - ? deref_stat (dereference_option, p, &final_stat) - : fstat (fd, &final_stat)) - != 0) + if (fd < 0) { - file_removed_diag (p, top_level, stat_diag); + errno = - fd; ok = false; } + else if (fd == 0) + { + if (parentfd < 0 && ! top_level) + { + errno = - parentfd; + ok = false; + } + else + ok = fstatat (parentfd, name, &final_stat, fstatat_flags) == 0; + } + else + ok = fstat (fd, &final_stat) == 0; + + if (! ok) + file_removed_diag (p, top_level, stat_diag); } if (ok) @@ -1666,16 +1795,11 @@ dump_file0 (struct tar_stat_info *st, const char *p, set_exit_status (TAREXIT_DIFFERS); } else if (atime_preserve_option == replace_atime_preserve - && set_file_atime (fd, p, restore_times) != 0) + && set_file_atime (fd, parentfd, name, st->atime) != 0) utime_error (p); } - if (0 <= fd && close (fd) != 0) - { - close_diag (p); - ok = false; - } - + ok &= tar_stat_close (st); if (ok && remove_files_option) queue_deferred_unlink (p, is_dir); @@ -1690,7 +1814,7 @@ dump_file0 (struct tar_stat_info *st, const char *p, if (linklen != st->stat.st_size || linklen + 1 == 0) xalloc_die (); buffer = (char *) alloca (linklen + 1); - size = readlink (p, buffer, linklen + 1); + size = readlinkat (parentfd, name, buffer, linklen + 1); if (size < 0) { file_removed_diag (p, top_level, readlink_diag); @@ -1769,13 +1893,20 @@ dump_file0 (struct tar_stat_info *st, const char *p, queue_deferred_unlink (p, false); } +/* Dump a file, recursively. PARENT describes the file's parent + directory, NAME is the file's name relative to PARENT, and FULLNAME + its full name, possibly relative to the working directory. NAME + may contain slashes at the top level of invocation. */ + void -dump_file (const char *p, bool top_level, dev_t parent_device) +dump_file (struct tar_stat_info *parent, char const *name, + char const *fullname) { struct tar_stat_info st; tar_stat_init (&st); - dump_file0 (&st, p, top_level, parent_device); - if (listed_incremental_option) - update_parent_directory (p); + st.parent = parent; + dump_file0 (&st, name, fullname); + if (parent && listed_incremental_option) + update_parent_directory (parent); tar_stat_destroy (&st); } diff --git a/src/delete.c b/src/delete.c index 75dc01f..a0a6d67 100644 --- a/src/delete.c +++ b/src/delete.c @@ -262,7 +262,7 @@ delete_archive_members (void) if (current_block == record_end) flush_archive (); - status = read_header (¤t_header, ¤t_stat_info, + status = read_header (¤t_header, ¤t_stat_info, read_header_auto); xheader_decode (¤t_stat_info); @@ -296,7 +296,7 @@ delete_archive_members (void) set_next_block_after (current_header); blocks_to_skip = (current_stat_info.stat.st_size + BLOCKSIZE - 1) / BLOCKSIZE; - + while (record_end - current_block <= blocks_to_skip) { blocks_to_skip -= (record_end - current_block); diff --git a/src/exit.c b/src/exit.c index ad4d27c..d1ddaf9 100644 --- a/src/exit.c +++ b/src/exit.c @@ -1,4 +1,4 @@ -/* This file is part of GNU tar. +/* This file is part of GNU tar. Copyright (C) 2009 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it diff --git a/src/extract.c b/src/extract.c index 32a883f..0d23d4a 100644 --- a/src/extract.c +++ b/src/extract.c @@ -21,10 +21,9 @@ #include #include -#include #include -#include #include +#include #include "common.h" @@ -32,20 +31,24 @@ static bool we_are_root; /* true if our effective uid == 0 */ static mode_t newdir_umask; /* umask when creating new directories */ static mode_t current_umask; /* current umask (which is set to 0 if -p) */ -/* Status of the permissions of a file that we are extracting. */ -enum permstatus -{ - /* This file may have existed already; its permissions are unknown. */ - UNKNOWN_PERMSTATUS, +#define ALL_MODE_BITS ((mode_t) ~ (mode_t) 0) - /* This file was created using the permissions from the archive, - except with S_IRWXG | S_IRWXO masked out if 0 < same_owner_option. */ - ARCHIVED_PERMSTATUS, +#if ! HAVE_FCHMOD && ! defined fchmod +# define fchmod(fd, mode) (errno = ENOSYS, -1) +#endif +#if ! HAVE_FCHOWN && ! defined fchown +# define fchown(fd, uid, gid) (errno = ENOSYS, -1) +#endif - /* This is an intermediate directory; the archive did not specify - its permissions. */ - INTERDIR_PERMSTATUS -}; +/* Return true if an error number ERR means the system call is + supported in this case. */ +static bool +implemented (int err) +{ + return ! (err == ENOSYS + || err == ENOTSUP + || (EOPNOTSUPP != ENOTSUP && err == EOPNOTSUPP)); +} /* List of directories whose statuses we need to extract after we've finished extracting their subsidiary files. If you consider each @@ -58,18 +61,44 @@ enum permstatus struct delayed_set_stat { + /* Next directory in list. */ struct delayed_set_stat *next; + + /* Metadata for this directory. */ dev_t dev; ino_t ino; - mode_t mode; + mode_t mode; /* The desired mode is MODE & ~ current_umask. */ uid_t uid; gid_t gid; struct timespec atime; struct timespec mtime; - size_t file_name_len; - mode_t invert_permissions; - enum permstatus permstatus; + + /* An estimate of the directory's current mode, along with a mask + specifying which bits of this estimate are known to be correct. + If CURRENT_MODE_MASK is zero, CURRENT_MODE's value doesn't + matter. */ + mode_t current_mode; + mode_t current_mode_mask; + + /* This directory is an intermediate directory that was created + as an ancestor of some other directory; it was not mentioned + in the archive, so do not set its uid, gid, atime, or mtime, + and don't alter its mode outside of MODE_RWX. */ + bool interdir; + + /* Whether symbolic links should be followed when accessing the + directory. */ + int atflag; + + /* Do not set the status of this directory until after delayed + links are created. */ bool after_links; + + /* Directory that the name is relative to. */ + int change_dir; + + /* Length and contents of name. */ + size_t file_name_len; char file_name[1]; }; @@ -81,17 +110,25 @@ struct delayed_link /* The next delayed link in the list. */ struct delayed_link *next; - /* The device, inode number and last-modified time of the placeholder. */ + /* The device, inode number and ctime of the placeholder. Use + ctime, not mtime, to make false matches less likely if some + other process removes the placeholder. */ dev_t dev; ino_t ino; - struct timespec mtime; + struct timespec ctime; /* True if the link is symbolic. */ bool is_symlink; - /* The desired owner and group of the link, if it is a symlink. */ + /* The desired metadata, valid only the link is symbolic. */ + mode_t mode; uid_t uid; gid_t gid; + struct timespec atime; + struct timespec mtime; + + /* The directory that the sources and target are relative to. */ + int change_dir; /* A list of sources for this link. The sources are all to be hard-linked together. */ @@ -131,75 +168,104 @@ extr_init (void) } } -/* If restoring permissions, restore the mode for FILE_NAME from - information given in *STAT_INFO (where *CUR_INFO gives - the current status if CUR_INFO is nonzero); otherwise invert the - INVERT_PERMISSIONS bits from the file's current permissions. - PERMSTATUS specifies the status of the file's permissions. - TYPEFLAG specifies the type of the file. */ -static void -set_mode (char const *file_name, - struct stat const *stat_info, - struct stat const *cur_info, - mode_t invert_permissions, enum permstatus permstatus, - char typeflag) +/* Use fchmod if possible, fchmodat otherwise. */ +static int +fd_chmod (int fd, char const *file, mode_t mode, int atflag) { - mode_t mode; - bool failed; - - if (0 < same_permissions_option - && permstatus != INTERDIR_PERMSTATUS) + if (0 <= fd) { - mode = stat_info->st_mode; - - /* If we created the file and it has a mode that we set already - with O_CREAT, then its mode is often set correctly already. - But if we are changing ownership, the mode's group and and - other permission bits were omitted originally, so it's less - likely that the mode is OK now. Also, on many hosts, some - directories inherit the setgid bits from their parents, so we - we must set directories' modes explicitly. */ - if ((permstatus == ARCHIVED_PERMSTATUS - && ! (mode & ~ (0 < same_owner_option ? S_IRWXU : MODE_RWX))) - && typeflag != DIRTYPE - && typeflag != GNUTYPE_DUMPDIR) - return; + int result = fchmod (fd, mode); + if (result == 0 || implemented (errno)) + return result; } - else if (! invert_permissions) - return; - else + return fchmodat (chdir_fd, file, mode, atflag); +} + +/* Use fchown if possible, fchownat otherwise. */ +static int +fd_chown (int fd, char const *file, uid_t uid, gid_t gid, int atflag) +{ + if (0 <= fd) { - /* We must inspect a directory's current permissions, since the - directory may have inherited its setgid bit from its parent. + int result = fchown (fd, uid, gid); + if (result == 0 || implemented (errno)) + return result; + } + return fchownat (chdir_fd, file, uid, gid, atflag); +} - INVERT_PERMISSIONS happens to be nonzero only for directories - that we created, so there's no point optimizing this code for - other cases. */ - struct stat st; - if (! cur_info) +/* Use fstat if possible, fstatat otherwise. */ +static int +fd_stat (int fd, char const *file, struct stat *st, int atflag) +{ + return (0 <= fd + ? fstat (fd, st) + : fstatat (chdir_fd, file, st, atflag)); +} + +/* Set the mode for FILE_NAME to MODE. + MODE_MASK specifies the bits of MODE that we care about; + thus if MODE_MASK is zero, do nothing. + If FD is nonnegative, it is a file descriptor for the file. + CURRENT_MODE and CURRENT_MODE_MASK specify information known about + the file's current mode, using the style of struct delayed_set_stat. + TYPEFLAG specifies the type of the file. + ATFLAG specifies the flag to use when statting the file. */ +static void +set_mode (char const *file_name, + mode_t mode, mode_t mode_mask, int fd, + mode_t current_mode, mode_t current_mode_mask, + char typeflag, int atflag) +{ + if (((current_mode ^ mode) | ~ current_mode_mask) & mode_mask) + { + if (MODE_ALL & ~ mode_mask & ~ current_mode_mask) { - if (stat (file_name, &st) != 0) + struct stat st; + if (fd_stat (fd, file_name, &st, atflag) != 0) { stat_error (file_name); return; } - cur_info = &st; + current_mode = st.st_mode; } - mode = cur_info->st_mode ^ invert_permissions; - } - failed = chmod (file_name, mode) != 0; - if (failed && errno == EPERM) - { - /* On Solaris, chmod may fail if we don't have PRIV_ALL. */ - if (priv_set_restore_linkdir () == 0) + current_mode &= MODE_ALL; + mode = (current_mode & ~ mode_mask) | (mode & mode_mask); + + if (current_mode != mode) { - failed = chmod (file_name, mode) != 0; - priv_set_remove_linkdir (); + int chmod_errno = + fd_chmod (fd, file_name, mode, atflag) == 0 ? 0 : errno; + + /* On Solaris, chmod may fail if we don't have PRIV_ALL, because + setuid-root files would otherwise be a backdoor. See + http://opensolaris.org/jive/thread.jspa?threadID=95826 + (2009-09-03). */ + if (chmod_errno == EPERM && (mode & S_ISUID) + && priv_set_restore_linkdir () == 0) + { + chmod_errno = + fd_chmod (fd, file_name, mode, atflag) == 0 ? 0 : errno; + priv_set_remove_linkdir (); + } + + /* Linux fchmodat does not support AT_SYMLINK_NOFOLLOW, and + returns ENOTSUP even when operating on non-symlinks, try + again with the flag disabled if it does not appear to be + supported and if the file is not a symlink. This + introduces a race, alas. */ + if (atflag && typeflag != SYMTYPE && ! implemented (chmod_errno)) + chmod_errno = fd_chmod (fd, file_name, mode, 0) == 0 ? 0 : errno; + + if (chmod_errno + && (typeflag != SYMTYPE || implemented (chmod_errno))) + { + errno = chmod_errno; + chmod_error_details (file_name, mode); + } } } - if (failed) - chmod_error_details (file_name, mode); } /* Check time after successfully setting FILE_NAME's time stamp to T. */ @@ -234,106 +300,98 @@ check_time (char const *file_name, struct timespec t) /* Restore stat attributes (owner, group, mode and times) for FILE_NAME, using information given in *ST. - If CUR_INFO is nonzero, *CUR_INFO is the - file's current status. - If not restoring permissions, invert the - INVERT_PERMISSIONS bits from the file's current permissions. - PERMSTATUS specifies the status of the file's permissions. - TYPEFLAG specifies the type of the file. */ - -/* FIXME: About proper restoration of symbolic link attributes, we still do - not have it right. Pretesters' reports tell us we need further study and - probably more configuration. For now, just use lchown if it exists, and - punt for the rest. Sigh! */ + If FD is nonnegative, it is a file descriptor for the file. + CURRENT_MODE and CURRENT_MODE_MASK specify information known about + the file's current mode, using the style of struct delayed_set_stat. + TYPEFLAG specifies the type of the file. + If INTERDIR, this is an intermediate directory. + ATFLAG specifies the flag to use when statting the file. */ static void set_stat (char const *file_name, struct tar_stat_info const *st, - struct stat const *cur_info, - mode_t invert_permissions, enum permstatus permstatus, - char typeflag) + int fd, mode_t current_mode, mode_t current_mode_mask, + char typeflag, bool interdir, int atflag) { - if (typeflag != SYMTYPE) + /* Do the utime before the chmod because some versions of utime are + broken and trash the modes of the file. */ + + if (! touch_option && ! interdir) { - /* We do the utime before the chmod because some versions of utime are - broken and trash the modes of the file. */ + struct timespec ts[2]; + if (incremental_option) + ts[0] = st->atime; + else + ts[0].tv_nsec = UTIME_OMIT; + ts[1] = st->mtime; - if (! touch_option && permstatus != INTERDIR_PERMSTATUS) + if (fdutimensat (fd, chdir_fd, file_name, ts, atflag) == 0) { - /* We set the accessed time to `now', which is really the time we - started extracting files, unless incremental_option is used, in - which case .st_atime is used. */ - - /* FIXME: incremental_option should set ctime too, but how? */ - - struct timespec ts[2]; if (incremental_option) - ts[0] = st->atime; - else - ts[0] = start_time; - ts[1] = st->mtime; - - if (utimens (file_name, ts) != 0) - utime_error (file_name); - else - { - check_time (file_name, ts[0]); - check_time (file_name, ts[1]); - } + check_time (file_name, ts[0]); + check_time (file_name, ts[1]); } + else if (typeflag != SYMTYPE || implemented (errno)) + utime_error (file_name); + } + if (0 < same_owner_option && ! interdir) + { /* Some systems allow non-root users to give files away. Once this done, it is not possible anymore to change file permissions. However, setting file permissions now would be incorrect, since they would apply to the wrong user, and there would be a race condition. So, don't use systems that allow non-root users to give files away. */ + uid_t uid = st->stat.st_uid; + gid_t gid = st->stat.st_gid; + + if (fd_chown (fd, file_name, uid, gid, atflag) == 0) + { + /* Changing the owner can clear st_mode bits in some cases. */ + if ((current_mode | ~ current_mode_mask) & S_IXUGO) + current_mode_mask &= ~ (current_mode & (S_ISUID | S_ISGID)); + } + else if (typeflag != SYMTYPE || implemented (errno)) + chown_error_details (file_name, uid, gid); } - if (0 < same_owner_option && permstatus != INTERDIR_PERMSTATUS) + set_mode (file_name, + st->stat.st_mode & ~ current_umask, + 0 < same_permissions_option && ! interdir ? MODE_ALL : MODE_RWX, + fd, current_mode, current_mode_mask, typeflag, atflag); +} + +/* For each entry H in the leading prefix of entries in HEAD that do + not have after_links marked, mark H and fill in its dev and ino + members. Assume HEAD && ! HEAD->after_links. */ +static void +mark_after_links (struct delayed_set_stat *head) +{ + struct delayed_set_stat *h = head; + + do { - /* When lchown exists, it should be used to change the attributes of - the symbolic link itself. In this case, a mere chown would change - the attributes of the file the symbolic link is pointing to, and - should be avoided. */ - int chown_result = 1; + struct stat st; + h->after_links = 1; - if (typeflag == SYMTYPE) - { -#if HAVE_LCHOWN - chown_result = lchown (file_name, st->stat.st_uid, st->stat.st_gid); -#endif - } + if (deref_stat (h->file_name, &st) != 0) + stat_error (h->file_name); else { - chown_result = chown (file_name, st->stat.st_uid, st->stat.st_gid); + h->dev = st.st_dev; + h->ino = st.st_ino; } - - if (chown_result == 0) - { - /* Changing the owner can flip st_mode bits in some cases, so - ignore cur_info if it might be obsolete now. */ - if (cur_info - && cur_info->st_mode & S_IXUGO - && cur_info->st_mode & (S_ISUID | S_ISGID)) - cur_info = NULL; - } - else if (chown_result < 0) - chown_error_details (file_name, - st->stat.st_uid, st->stat.st_gid); } - - if (typeflag != SYMTYPE) - set_mode (file_name, &st->stat, cur_info, - invert_permissions, permstatus, typeflag); + while ((h = h->next) && ! h->after_links); } /* Remember to restore stat attributes (owner, group, mode and times) for the directory FILE_NAME, using information given in *ST, once we stop extracting files into that directory. - If not restoring permissions, remember to invert the - INVERT_PERMISSIONS bits from the file's current permissions. - PERMSTATUS specifies the status of the file's permissions. + + If ST is null, merely create a placeholder node for an intermediate + directory that was created by make_directories. NOTICE: this works only if the archive has usual member order, i.e. directory, then the files in that directory. Incremental archive have @@ -348,26 +406,35 @@ set_stat (char const *file_name, */ static void delay_set_stat (char const *file_name, struct tar_stat_info const *st, - mode_t invert_permissions, enum permstatus permstatus) + mode_t current_mode, mode_t current_mode_mask, + mode_t mode, int atflag) { size_t file_name_len = strlen (file_name); struct delayed_set_stat *data = xmalloc (offsetof (struct delayed_set_stat, file_name) + file_name_len + 1); data->next = delayed_set_stat_head; - data->dev = st->stat.st_dev; - data->ino = st->stat.st_ino; - data->mode = st->stat.st_mode; - data->uid = st->stat.st_uid; - data->gid = st->stat.st_gid; - data->atime = st->atime; - data->mtime = st->mtime; + data->mode = mode; + if (st) + { + data->dev = st->stat.st_dev; + data->ino = st->stat.st_ino; + data->uid = st->stat.st_uid; + data->gid = st->stat.st_gid; + data->atime = st->atime; + data->mtime = st->mtime; + } data->file_name_len = file_name_len; - data->invert_permissions = invert_permissions; - data->permstatus = permstatus; + data->current_mode = current_mode; + data->current_mode_mask = current_mode_mask; + data->interdir = ! st; + data->atflag = atflag; data->after_links = 0; + data->change_dir = chdir_current; strcpy (data->file_name, file_name); delayed_set_stat_head = data; + if (must_be_dot_or_slash (file_name)) + mark_after_links (data); } /* Update the delayed_set_stat info for an intermediate directory @@ -382,7 +449,7 @@ repair_delayed_set_stat (char const *dir, for (data = delayed_set_stat_head; data; data = data->next) { struct stat st; - if (stat (data->file_name, &st) != 0) + if (fstatat (chdir_fd, data->file_name, &st, data->atflag) != 0) { stat_error (data->file_name); return; @@ -398,10 +465,9 @@ repair_delayed_set_stat (char const *dir, data->gid = current_stat_info.stat.st_gid; data->atime = current_stat_info.atime; data->mtime = current_stat_info.mtime; - data->invert_permissions = - ((current_stat_info.stat.st_mode ^ st.st_mode) - & MODE_RWX & ~ current_umask); - data->permstatus = ARCHIVED_PERMSTATUS; + data->current_mode = st.st_mode; + data->current_mode_mask = ALL_MODE_BITS; + data->interdir = false; return; } } @@ -412,20 +478,21 @@ repair_delayed_set_stat (char const *dir, /* After a file/link/directory creation has failed, see if it's because some required directory was not present, and if so, - create all required directories. Return non-zero if a directory - was created. */ + create all required directories. Return zero if all the required + directories were created, nonzero (issuing a diagnostic) otherwise. + Set *INTERDIR_MADE if at least one directory was created. */ static int -make_directories (char *file_name) +make_directories (char *file_name, bool *interdir_made) { char *cursor0 = file_name + FILE_SYSTEM_PREFIX_LEN (file_name); char *cursor; /* points into the file name */ - int did_something = 0; /* did we do anything yet? */ - int mode; - int invert_permissions; - int status; for (cursor = cursor0; *cursor; cursor++) { + mode_t mode; + mode_t desired_mode; + int status; + if (! ISSLASH (*cursor)) continue; @@ -443,65 +510,74 @@ make_directories (char *file_name) continue; *cursor = '\0'; /* truncate the name there */ - mode = MODE_RWX & ~ newdir_umask; - invert_permissions = we_are_root ? 0 : MODE_WXUSR & ~ mode; - status = mkdir (file_name, mode ^ invert_permissions); + desired_mode = MODE_RWX & ~ newdir_umask; + mode = desired_mode | (we_are_root ? 0 : MODE_WXUSR); + status = mkdirat (chdir_fd, file_name, mode); if (status == 0) { /* Create a struct delayed_set_stat even if - invert_permissions is zero, because + mode == desired_mode, because repair_delayed_set_stat may need to update the struct. */ delay_set_stat (file_name, - ¤t_stat_info, - invert_permissions, INTERDIR_PERMSTATUS); + 0, mode & ~ current_umask, MODE_RWX, + desired_mode, AT_SYMLINK_NOFOLLOW); - print_for_mkdir (file_name, cursor - file_name, mode); - did_something = 1; - - *cursor = '/'; - continue; + print_for_mkdir (file_name, cursor - file_name, desired_mode); + *interdir_made = true; + } + else if (errno == EEXIST) + status = 0; + else + { + /* Check whether the desired file exists. Even when the + file exists, mkdir can fail with some errno value E other + than EEXIST, so long as E describes an error condition + that also applies. */ + int e = errno; + struct stat st; + status = fstatat (chdir_fd, file_name, &st, 0); + if (status) + { + errno = e; + mkdir_error (file_name); + } } *cursor = '/'; - - if (errno == EEXIST) - continue; /* Directory already exists. */ - else if ((errno == ENOSYS /* Automounted dirs on Solaris return - this. Reported by Warren Hyde - */ - || ERRNO_IS_EACCES) /* Turbo C mkdir gives a funny errno. */ - && access (file_name, W_OK) == 0) - continue; - - /* Some other error in the mkdir. We return to the caller. */ - break; + if (status) + return status; } - return did_something; /* tell them to retry if we made one */ + return 0; } +/* Return true if FILE_NAME (with status *STP, if STP) is not a + directory, and has a time stamp newer than (or equal to) that of + TAR_STAT. */ static bool -file_newer_p (const char *file_name, struct tar_stat_info *tar_stat) +file_newer_p (const char *file_name, struct stat const *stp, + struct tar_stat_info *tar_stat) { struct stat st; - if (stat (file_name, &st)) + if (!stp) { - if (errno != ENOENT) + if (deref_stat (file_name, &st) != 0) { - stat_warn (file_name); - /* Be on the safe side: if the file does exist assume it is newer */ - return true; + if (errno != ENOENT) + { + stat_warn (file_name); + /* Be safer: if the file exists, assume it is newer. */ + return true; + } + return false; } - return false; + stp = &st; } - if (!S_ISDIR (st.st_mode) - && tar_timespec_cmp (tar_stat->mtime, get_stat_mtime (&st)) <= 0) - { - return true; - } - return false; + + return (! S_ISDIR (stp->st_mode) + && tar_timespec_cmp (tar_stat->mtime, get_stat_mtime (stp)) <= 0); } #define RECOVER_NO 0 @@ -513,18 +589,39 @@ file_newer_p (const char *file_name, struct tar_stat_info *tar_stat) Return RECOVER_OK if we somewhat increased our chances at a successful extraction, RECOVER_NO if there are no chances, and RECOVER_SKIP if the caller should skip extraction of that member. The value of errno is - properly restored on returning RECOVER_NO. */ + properly restored on returning RECOVER_NO. + + If REGULAR, the caller was trying to extract onto a regular file. + + Set *INTERDIR_MADE if an intermediate directory is made as part of + the recovery process. */ static int -maybe_recoverable (char *file_name, int *interdir_made) +maybe_recoverable (char *file_name, bool regular, bool *interdir_made) { int e = errno; + struct stat st; + struct stat const *stp = 0; if (*interdir_made) return RECOVER_NO; - switch (errno) + switch (e) { + case ELOOP: + if (! regular + || old_files_option != OVERWRITE_OLD_FILES || dereference_option) + break; + if (strchr (file_name, '/')) + { + if (deref_stat (file_name, &st) != 0) + break; + stp = &st; + } + + /* The caller tried to open a symbolic link with O_NOFOLLOW. + Fall through, treating it as an already-existing file. */ + case EEXIST: /* Remove an old file, if the options allow this. */ @@ -534,21 +631,16 @@ maybe_recoverable (char *file_name, int *interdir_made) return RECOVER_SKIP; case KEEP_NEWER_FILES: - if (file_newer_p (file_name, ¤t_stat_info)) - { - errno = e; - return RECOVER_NO; - } + if (file_newer_p (file_name, stp, ¤t_stat_info)) + break; /* FALL THROUGH */ case DEFAULT_OLD_FILES: case NO_OVERWRITE_DIR_OLD_FILES: case OVERWRITE_OLD_FILES: - { - int r = remove_any_file (file_name, ORDINARY_REMOVE_OPTION); - errno = EEXIST; - return r > 0 ? RECOVER_OK : RECOVER_NO; - } + if (0 < remove_any_file (file_name, ORDINARY_REMOVE_OPTION)) + return RECOVER_OK; + break; case UNLINK_FIRST_OLD_FILES: break; @@ -556,19 +648,17 @@ maybe_recoverable (char *file_name, int *interdir_made) case ENOENT: /* Attempt creating missing intermediate directories. */ - if (! make_directories (file_name)) - { - errno = ENOENT; - return RECOVER_NO; - } - *interdir_made = 1; - return RECOVER_OK; + if (make_directories (file_name, interdir_made) == 0 && *interdir_made) + return RECOVER_OK; + break; default: /* Just say we can't do anything about it... */ - - return RECOVER_NO; + break; } + + errno = e; + return RECOVER_NO; } /* Fix the statuses of all directories whose statuses need fixing, and @@ -587,7 +677,8 @@ apply_nonancestor_delayed_set_stat (char const *file_name, bool after_links) struct delayed_set_stat *data = delayed_set_stat_head; bool skip_this_one = 0; struct stat st; - struct stat const *cur_info = 0; + mode_t current_mode = data->current_mode; + mode_t current_mode_mask = data->current_mode_mask; check_for_renamed_directories |= data->after_links; @@ -599,20 +690,26 @@ apply_nonancestor_delayed_set_stat (char const *file_name, bool after_links) && memcmp (file_name, data->file_name, data->file_name_len) == 0)) break; + chdir_do (data->change_dir); + if (check_for_renamed_directories) { - cur_info = &st; - if (stat (data->file_name, &st) != 0) + if (fstatat (chdir_fd, data->file_name, &st, data->atflag) != 0) { stat_error (data->file_name); skip_this_one = 1; } - else if (! (st.st_dev == data->dev && st.st_ino == data->ino)) + else { - ERROR ((0, 0, - _("%s: Directory renamed before its status could be extracted"), - quotearg_colon (data->file_name))); - skip_this_one = 1; + current_mode = st.st_mode; + current_mode_mask = ALL_MODE_BITS; + if (! (st.st_dev == data->dev && st.st_ino == data->ino)) + { + ERROR ((0, 0, + _("%s: Directory renamed before its status could be extracted"), + quotearg_colon (data->file_name))); + skip_this_one = 1; + } } } @@ -624,8 +721,9 @@ apply_nonancestor_delayed_set_stat (char const *file_name, bool after_links) sb.stat.st_gid = data->gid; sb.atime = data->atime; sb.mtime = data->mtime; - set_stat (data->file_name, &sb, cur_info, - data->invert_permissions, data->permstatus, DIRTYPE); + set_stat (data->file_name, &sb, + -1, current_mode, current_mode_mask, + DIRTYPE, data->interdir, data->atflag); } delayed_set_stat_head = data->next; @@ -642,19 +740,20 @@ extract_dir (char *file_name, int typeflag) { int status; mode_t mode; - int interdir_made = 0; + mode_t current_mode = 0; + mode_t current_mode_mask = 0; + int atflag = 0; + bool interdir_made = false; /* Save 'root device' to avoid purging mount points. */ if (one_file_system_option && root_device == 0) { struct stat st; - char *dir = xgetcwd (); - if (deref_stat (true, dir, &st)) - stat_diag (dir); + if (fstatat (chdir_fd, ".", &st, 0) != 0) + stat_diag ("."); else root_device = st.st_dev; - free (dir); } if (incremental_option) @@ -663,36 +762,55 @@ extract_dir (char *file_name, int typeflag) else if (typeflag == GNUTYPE_DUMPDIR) skip_member (); - mode = current_stat_info.stat.st_mode | (we_are_root ? 0 : MODE_WXUSR); - if (0 < same_owner_option || current_stat_info.stat.st_mode & ~ MODE_RWX) - mode &= S_IRWXU; - - while ((status = mkdir (file_name, mode))) + /* If ownership or permissions will be restored later, create the + directory with restrictive permissions at first, so that in the + meantime processes owned by other users do not inadvertently + create files under this directory that inherit the wrong owner, + group, or permissions from the directory. If not root, though, + make the directory writeable and searchable at first, so that + files can be created under it. */ + mode = ((current_stat_info.stat.st_mode + & (0 < same_owner_option || 0 < same_permissions_option + ? S_IRWXU + : MODE_RWX)) + | (we_are_root ? 0 : MODE_WXUSR)); + + for (;;) { + status = mkdir (file_name, mode); + if (status == 0) + { + current_mode = mode & ~ current_umask; + current_mode_mask = MODE_RWX; + atflag = AT_SYMLINK_NOFOLLOW; + break; + } + if (errno == EEXIST && (interdir_made || old_files_option == DEFAULT_OLD_FILES || old_files_option == OVERWRITE_OLD_FILES)) { struct stat st; - if (stat (file_name, &st) == 0) + if (deref_stat (file_name, &st) == 0) { - if (interdir_made) - { - repair_delayed_set_stat (file_name, &st); - return 0; - } - if (S_ISDIR (st.st_mode)) + current_mode = st.st_mode; + current_mode_mask = ALL_MODE_BITS; + + if (S_ISDIR (current_mode)) { - status = 0; - mode = st.st_mode; + if (interdir_made) + { + repair_delayed_set_stat (file_name, &st); + return 0; + } break; } } errno = EEXIST; } - switch (maybe_recoverable (file_name, &interdir_made)) + switch (maybe_recoverable (file_name, false, &interdir_made)) { case RECOVER_OK: continue; @@ -714,40 +832,26 @@ extract_dir (char *file_name, int typeflag) if (status == 0 || old_files_option == DEFAULT_OLD_FILES || old_files_option == OVERWRITE_OLD_FILES) - { - if (status == 0) - delay_set_stat (file_name, ¤t_stat_info, - ((mode ^ current_stat_info.stat.st_mode) - & MODE_RWX & ~ current_umask), - ARCHIVED_PERMSTATUS); - else /* For an already existing directory, invert_perms must be 0 */ - delay_set_stat (file_name, ¤t_stat_info, - 0, - UNKNOWN_PERMSTATUS); - } + delay_set_stat (file_name, ¤t_stat_info, + current_mode, current_mode_mask, + current_stat_info.stat.st_mode, atflag); return status; } + static int -open_output_file (char *file_name, int typeflag, mode_t mode) +open_output_file (char const *file_name, int typeflag, mode_t mode, + mode_t *current_mode, mode_t *current_mode_mask) { int fd; - int openflag = (O_WRONLY | O_BINARY | O_CREAT - | (old_files_option == OVERWRITE_OLD_FILES - ? O_TRUNC + bool overwriting_old_files = old_files_option == OVERWRITE_OLD_FILES; + int openflag = (O_WRONLY | O_BINARY | O_CLOEXEC | O_NOCTTY | O_NONBLOCK + | O_CREAT + | (overwriting_old_files + ? O_TRUNC | (dereference_option ? 0 : O_NOFOLLOW) : O_EXCL)); -#if O_CTG - /* Contiguous files (on the Masscomp) have to specify the size in - the open call that creates them. */ - - if (typeflag == CONTTYPE) - fd = open (file_name, openflag | O_CTG, mode, current_stat_info.stat.st_size); - else - fd = open (file_name, openflag, mode); - -#else /* not O_CTG */ if (typeflag == CONTTYPE) { static int conttype_diagnosed; @@ -759,9 +863,35 @@ open_output_file (char *file_name, int typeflag, mode_t mode) (0, 0, _("Extracting contiguous files as regular files"))); } } - fd = open (file_name, openflag, mode); -#endif /* not O_CTG */ + fd = openat (chdir_fd, file_name, openflag, mode); + if (0 <= fd) + { + if (overwriting_old_files) + { + struct stat st; + if (fstat (fd, &st) != 0) + { + int e = errno; + close (fd); + errno = e; + return -1; + } + if (! S_ISREG (st.st_mode)) + { + close (fd); + errno = EEXIST; + return -1; + } + *current_mode = st.st_mode; + *current_mode_mask = ALL_MODE_BITS; + } + else + { + *current_mode = mode & ~ current_umask; + *current_mode_mask = MODE_RWX; + } + } return fd; } @@ -775,12 +905,11 @@ extract_file (char *file_name, int typeflag) int status; size_t count; size_t written; - int interdir_made = 0; - mode_t mode = current_stat_info.stat.st_mode & MODE_RWX & ~ current_umask; - mode_t invert_permissions = - 0 < same_owner_option ? mode & (S_IRWXG | S_IRWXO) : 0; - - /* FIXME: deal with protection issues. */ + bool interdir_made = false; + mode_t mode = (current_stat_info.stat.st_mode & MODE_RWX + & ~ (0 < same_owner_option ? S_IRWXG | S_IRWXO : 0)); + mode_t current_mode = 0; + mode_t current_mode_mask = 0; if (to_stdout_option) fd = STDOUT_FILENO; @@ -795,24 +924,23 @@ extract_file (char *file_name, int typeflag) } else { - int recover = RECOVER_NO; - do - fd = open_output_file (file_name, typeflag, mode ^ invert_permissions); - while (fd < 0 - && (recover = maybe_recoverable (file_name, &interdir_made)) - == RECOVER_OK); - - if (fd < 0) + while ((fd = open_output_file (file_name, typeflag, mode, + ¤t_mode, ¤t_mode_mask)) + < 0) { - skip_member (); - if (recover == RECOVER_SKIP) - return 0; - open_error (file_name); - return 1; + int recover = maybe_recoverable (file_name, true, &interdir_made); + if (recover != RECOVER_OK) + { + skip_member (); + if (recover == RECOVER_SKIP) + return 0; + open_error (file_name); + return 1; + } } } - mv_begin (¤t_stat_info); + mv_begin_read (¤t_stat_info); if (current_stat_info.is_sparse) sparse_extract_file (fd, ¤t_stat_info, &size); else @@ -860,17 +988,18 @@ extract_file (char *file_name, int typeflag) if (to_stdout_option) return 0; + if (! to_command_option) + set_stat (file_name, ¤t_stat_info, fd, + current_mode, current_mode_mask, typeflag, false, + (old_files_option == OVERWRITE_OLD_FILES + ? 0 : AT_SYMLINK_NOFOLLOW)); + status = close (fd); if (status < 0) close_error (file_name); if (to_command_option) sys_wait_command (); - else - set_stat (file_name, ¤t_stat_info, NULL, invert_permissions, - (old_files_option == OVERWRITE_OLD_FILES ? - UNKNOWN_PERMSTATUS : ARCHIVED_PERMSTATUS), - typeflag); return status; } @@ -882,18 +1011,28 @@ extract_file (char *file_name, int typeflag) process. */ static int -create_placeholder_file (char *file_name, bool is_symlink, int *interdir_made) +create_placeholder_file (char *file_name, bool is_symlink, bool *interdir_made) { int fd; struct stat st; - while ((fd = open (file_name, O_WRONLY | O_CREAT | O_EXCL, 0)) < 0) - if (! maybe_recoverable (file_name, interdir_made)) - break; + while ((fd = openat (chdir_fd, file_name, O_WRONLY | O_CREAT | O_EXCL, 0)) < 0) + { + switch (maybe_recoverable (file_name, false, interdir_made)) + { + case RECOVER_OK: + continue; + + case RECOVER_SKIP: + return 0; - if (fd < 0) - open_error (file_name); - else if (fstat (fd, &st) != 0) + case RECOVER_NO: + open_error (file_name); + return -1; + } + } + + if (fstat (fd, &st) != 0) { stat_error (file_name); close (fd); @@ -911,13 +1050,17 @@ create_placeholder_file (char *file_name, bool is_symlink, int *interdir_made) delayed_link_head = p; p->dev = st.st_dev; p->ino = st.st_ino; - p->mtime = get_stat_mtime (&st); + p->ctime = get_stat_ctime (&st); p->is_symlink = is_symlink; if (is_symlink) { + p->mode = current_stat_info.stat.st_mode; p->uid = current_stat_info.stat.st_uid; p->gid = current_stat_info.stat.st_gid; + p->atime = current_stat_info.atime; + p->mtime = current_stat_info.mtime; } + p->change_dir = chdir_current; p->sources = xmalloc (offsetof (struct string_list, string) + strlen (file_name) + 1); p->sources->next = 0; @@ -929,21 +1072,7 @@ create_placeholder_file (char *file_name, bool is_symlink, int *interdir_made) && strncmp (file_name, h->file_name, h->file_name_len) == 0 && ISSLASH (file_name[h->file_name_len]) && (last_component (file_name) == file_name + h->file_name_len + 1)) - { - do - { - h->after_links = 1; - - if (stat (h->file_name, &st) != 0) - stat_error (h->file_name); - else - { - h->dev = st.st_dev; - h->ino = st.st_ino; - } - } - while ((h = h->next) && ! h->after_links); - } + mark_after_links (h); return 0; } @@ -954,11 +1083,12 @@ create_placeholder_file (char *file_name, bool is_symlink, int *interdir_made) static int extract_link (char *file_name, int typeflag) { - int interdir_made = 0; + bool interdir_made = false; char const *link_name; + int rc; link_name = current_stat_info.link_name; - + if (! absolute_names_option && contains_dot_dot (link_name)) return create_placeholder_file (file_name, false, &interdir_made); @@ -966,17 +1096,19 @@ extract_link (char *file_name, int typeflag) { struct stat st1, st2; int e; - int status = link (link_name, file_name); + int status = linkat (chdir_fd, link_name, chdir_fd, file_name, 0); e = errno; if (status == 0) { struct delayed_link *ds = delayed_link_head; - if (ds && lstat (link_name, &st1) == 0) + if (ds + && fstatat (chdir_fd, link_name, &st1, AT_SYMLINK_NOFOLLOW) == 0) for (; ds; ds = ds->next) - if (ds->dev == st1.st_dev + if (ds->change_dir == chdir_current + && ds->dev == st1.st_dev && ds->ino == st1.st_ino - && timespec_cmp (ds->mtime, get_stat_mtime (&st1)) == 0) + && timespec_cmp (ds->ctime, get_stat_ctime (&st1)) == 0) { struct string_list *p = xmalloc (offsetof (struct string_list, string) + strlen (file_name) + 1); @@ -988,16 +1120,21 @@ extract_link (char *file_name, int typeflag) return 0; } else if ((e == EEXIST && strcmp (link_name, file_name) == 0) - || (lstat (link_name, &st1) == 0 - && lstat (file_name, &st2) == 0 + || ((fstatat (chdir_fd, link_name, &st1, AT_SYMLINK_NOFOLLOW) + == 0) + && (fstatat (chdir_fd, file_name, &st2, AT_SYMLINK_NOFOLLOW) + == 0) && st1.st_dev == st2.st_dev && st1.st_ino == st2.st_ino)) return 0; errno = e; } - while (maybe_recoverable (file_name, &interdir_made)); + while ((rc = maybe_recoverable (file_name, false, &interdir_made)) + == RECOVER_OK); + if (rc == RECOVER_SKIP) + return 0; if (!(incremental_option && errno == EEXIST)) { link_error (link_name, file_name); @@ -1010,23 +1147,30 @@ static int extract_symlink (char *file_name, int typeflag) { #ifdef HAVE_SYMLINK - int status; - int interdir_made = 0; + bool interdir_made = false; if (! absolute_names_option && (IS_ABSOLUTE_FILE_NAME (current_stat_info.link_name) || contains_dot_dot (current_stat_info.link_name))) return create_placeholder_file (file_name, true, &interdir_made); - while ((status = symlink (current_stat_info.link_name, file_name))) - if (!maybe_recoverable (file_name, &interdir_made)) - break; + while (symlinkat (current_stat_info.link_name, chdir_fd, file_name) != 0) + switch (maybe_recoverable (file_name, false, &interdir_made)) + { + case RECOVER_OK: + continue; - if (status == 0) - set_stat (file_name, ¤t_stat_info, NULL, 0, 0, SYMTYPE); - else - symlink_error (current_stat_info.link_name, file_name); - return status; + case RECOVER_SKIP: + return 0; + + case RECOVER_NO: + symlink_error (current_stat_info.link_name, file_name); + return -1; + } + + set_stat (file_name, ¤t_stat_info, -1, 0, 0, + SYMTYPE, false, AT_SYMLINK_NOFOLLOW); + return 0; #else static int warned_once; @@ -1046,23 +1190,29 @@ extract_symlink (char *file_name, int typeflag) static int extract_node (char *file_name, int typeflag) { - int status; - int interdir_made = 0; - mode_t mode = current_stat_info.stat.st_mode & ~ current_umask; - mode_t invert_permissions = - 0 < same_owner_option ? mode & (S_IRWXG | S_IRWXO) : 0; + bool interdir_made = false; + mode_t mode = (current_stat_info.stat.st_mode & MODE_RWX + & ~ (0 < same_owner_option ? S_IRWXG | S_IRWXO : 0)); - do - status = mknod (file_name, mode ^ invert_permissions, - current_stat_info.stat.st_rdev); - while (status && maybe_recoverable (file_name, &interdir_made)); + while (mknodat (chdir_fd, file_name, mode, current_stat_info.stat.st_rdev) + != 0) + switch (maybe_recoverable (file_name, false, &interdir_made)) + { + case RECOVER_OK: + continue; - if (status != 0) - mknod_error (file_name); - else - set_stat (file_name, ¤t_stat_info, NULL, invert_permissions, - ARCHIVED_PERMSTATUS, typeflag); - return status; + case RECOVER_SKIP: + return 0; + + case RECOVER_NO: + mknod_error (file_name); + return -1; + } + + set_stat (file_name, ¤t_stat_info, -1, + mode & ~ current_umask, MODE_RWX, + typeflag, false, AT_SYMLINK_NOFOLLOW); + return 0; } #endif @@ -1070,22 +1220,28 @@ extract_node (char *file_name, int typeflag) static int extract_fifo (char *file_name, int typeflag) { - int status; - int interdir_made = 0; - mode_t mode = current_stat_info.stat.st_mode & ~ current_umask; - mode_t invert_permissions = - 0 < same_owner_option ? mode & (S_IRWXG | S_IRWXO) : 0; + bool interdir_made = false; + mode_t mode = (current_stat_info.stat.st_mode & MODE_RWX + & ~ (0 < same_owner_option ? S_IRWXG | S_IRWXO : 0)); - while ((status = mkfifo (file_name, mode)) != 0) - if (!maybe_recoverable (file_name, &interdir_made)) - break; + while (mkfifoat (chdir_fd, file_name, mode) != 0) + switch (maybe_recoverable (file_name, false, &interdir_made)) + { + case RECOVER_OK: + continue; - if (status == 0) - set_stat (file_name, ¤t_stat_info, NULL, invert_permissions, - ARCHIVED_PERMSTATUS, typeflag); - else - mkfifo_error (file_name); - return status; + case RECOVER_SKIP: + return 0; + + case RECOVER_NO: + mkfifo_error (file_name); + return -1; + } + + set_stat (file_name, ¤t_stat_info, -1, + mode & ~ current_umask, MODE_RWX, + typeflag, false, AT_SYMLINK_NOFOLLOW); + return 0; } #endif @@ -1217,7 +1373,7 @@ prepare_to_extract (char const *file_name, int typeflag, tar_extractor_t *fun) break; case KEEP_NEWER_FILES: - if (file_newer_p (file_name, ¤t_stat_info)) + if (file_newer_p (file_name, 0, ¤t_stat_info)) { WARNOPT (WARN_IGNORE_NEWER, (0, 0, _("Current %s is newer or same age"), @@ -1241,12 +1397,9 @@ extract_archive (void) tar_extractor_t fun; fatal_exit_hook = extract_finish; - - /* Try to disable the ability to unlink a directory. */ - priv_set_remove_linkdir (); set_next_block_after (current_header); - decode_header (current_header, ¤t_stat_info, ¤t_format, 1); + if (!current_stat_info.file_name[0] || (interactive_option && !confirm ("extract", current_stat_info.file_name))) @@ -1263,7 +1416,11 @@ extract_archive (void) it is an incremental archive. (see NOTICE in the comment to delay_set_stat above) */ if (!delay_directory_restore_option) - apply_nonancestor_delayed_set_stat (current_stat_info.file_name, 0); + { + int dir = chdir_current; + apply_nonancestor_delayed_set_stat (current_stat_info.file_name, 0); + chdir_do (dir); + } /* Take a safety backup of a previously existing file. */ @@ -1293,7 +1450,7 @@ extract_archive (void) } -/* Extract the symbolic links whose final extraction were delayed. */ +/* Extract the links whose final extraction were delayed. */ static void apply_delayed_links (void) { @@ -1304,6 +1461,8 @@ apply_delayed_links (void) struct string_list *sources = ds->sources; char const *valid_source = 0; + chdir_do (ds->change_dir); + for (sources = ds->sources; sources; sources = sources->next) { char const *source = sources->string; @@ -1312,30 +1471,36 @@ apply_delayed_links (void) /* Make sure the placeholder file is still there. If not, don't create a link, as the placeholder was probably removed by a later extraction. */ - if (lstat (source, &st) == 0 + if (fstatat (chdir_fd, source, &st, AT_SYMLINK_NOFOLLOW) == 0 && st.st_dev == ds->dev && st.st_ino == ds->ino - && timespec_cmp (get_stat_mtime (&st), ds->mtime) == 0) + && timespec_cmp (get_stat_ctime (&st), ds->ctime) == 0) { /* Unlink the placeholder, then create a hard link if possible, a symbolic link otherwise. */ - if (unlink (source) != 0) + if (unlinkat (chdir_fd, source, 0) != 0) unlink_error (source); - else if (valid_source && link (valid_source, source) == 0) + else if (valid_source + && (linkat (chdir_fd, valid_source, chdir_fd, source, 0) + == 0)) ; else if (!ds->is_symlink) { - if (link (ds->target, source) != 0) + if (linkat (chdir_fd, ds->target, chdir_fd, source, 0) != 0) link_error (ds->target, source); } - else if (symlink (ds->target, source) != 0) + else if (symlinkat (ds->target, chdir_fd, source) != 0) symlink_error (ds->target, source); else { struct tar_stat_info st1; + st1.stat.st_mode = ds->mode; st1.stat.st_uid = ds->uid; st1.stat.st_gid = ds->gid; - set_stat (source, &st1, NULL, 0, 0, SYMTYPE); + st1.atime = ds->atime; + st1.mtime = ds->mtime; + set_stat (source, &st1, -1, 0, 0, SYMTYPE, + false, AT_SYMLINK_NOFOLLOW); valid_source = source; } } @@ -1377,16 +1542,17 @@ extract_finish (void) bool rename_directory (char *src, char *dst) { - if (rename (src, dst)) + if (renameat (chdir_fd, src, chdir_fd, dst) != 0) { int e = errno; + bool interdir_made; switch (e) { case ENOENT: - if (make_directories (dst)) + if (make_directories (dst, &interdir_made) == 0) { - if (rename (src, dst) == 0) + if (renameat (chdir_fd, src, chdir_fd, dst) == 0) return true; e = errno; } diff --git a/src/incremen.c b/src/incremen.c index dc880cd..628ff29 100644 --- a/src/incremen.c +++ b/src/incremen.c @@ -43,7 +43,7 @@ enum children #define DIR_IS_INITED(d) ((d)->flags & DIRF_INIT) #define DIR_IS_NFS(d) ((d)->flags & DIRF_NFS) #define DIR_IS_FOUND(d) ((d)->flags & DIRF_FOUND) -#define DIR_IS_NEW(d) ((d)->flags & DIRF_NEW) +/* #define DIR_IS_NEW(d) ((d)->flags & DIRF_NEW) FIXME: not used */ #define DIR_IS_RENAMED(d) ((d)->flags & DIRF_RENAMED) #define DIR_SET_FLAG(d,f) (d)->flags |= (f) @@ -77,14 +77,14 @@ struct directory char *name; /* file name of directory */ }; -struct dumpdir * +static struct dumpdir * dumpdir_create0 (const char *contents, const char *cmask) { struct dumpdir *dump; size_t i, total, ctsize, len; char *p; const char *q; - + for (i = 0, total = 0, ctsize = 1, q = contents; *q; total++, q += len) { len = strlen (q) + 1; @@ -108,13 +108,13 @@ dumpdir_create0 (const char *contents, const char *cmask) return dump; } -struct dumpdir * +static struct dumpdir * dumpdir_create (const char *contents) { return dumpdir_create0 (contents, "YND"); } -void +static void dumpdir_free (struct dumpdir *dump) { free (dump->elv); @@ -131,7 +131,7 @@ compare_dirnames (const void *first, const void *second) /* Locate NAME in the dumpdir array DUMP. Return pointer to the slot in DUMP->contents, or NULL if not found */ -char * +static char * dumpdir_locate (struct dumpdir *dump, const char *name) { char **ptr; @@ -146,16 +146,16 @@ dumpdir_locate (struct dumpdir *dump, const char *name) struct dumpdir_iter { struct dumpdir *dump; /* Dumpdir being iterated */ - int all; /* Iterate over all entries, not only D/N/Y */ + int all; /* Iterate over all entries, not only D/N/Y */ size_t next; /* Index of the next element */ }; -char * +static char * dumpdir_next (struct dumpdir_iter *itr) { size_t cur = itr->next; char *ret = NULL; - + if (itr->all) { ret = itr->dump->contents + cur; @@ -172,7 +172,7 @@ dumpdir_next (struct dumpdir_iter *itr) return ret; } -char * +static char * dumpdir_first (struct dumpdir *dump, int all, struct dumpdir_iter **pitr) { struct dumpdir_iter *itr = xmalloc (sizeof (*itr)); @@ -258,7 +258,7 @@ make_directory (const char *name, char *caname) directory->dump = directory->idump = NULL; directory->orig = NULL; directory->flags = false; - if (namelen && ISSLASH (name[namelen - 1])) + if (namelen > 1 && ISSLASH (name[namelen - 1])) namelen--; directory->name = xmalloc (namelen + 1); memcpy (directory->name, name, namelen); @@ -288,9 +288,9 @@ attach_directory (const char *name) dirtail = dir; return dir; } - + -void +static void dirlist_replace_prefix (const char *pref, const char *repl) { struct directory *dp; @@ -402,26 +402,17 @@ find_directory_meta (dev_t dev, ino_t ino) } void -update_parent_directory (const char *name) +update_parent_directory (struct tar_stat_info *parent) { - struct directory *directory; - char *p; - - p = dir_name (name); - directory = find_directory (p); + struct directory *directory = find_directory (parent->orig_file_name); if (directory) { struct stat st; - if (deref_stat (dereference_option, p, &st) != 0) - { - if (errno != ENOENT) - stat_diag (directory->name); - /* else: should have been already reported */ - } + if (fstat (parent->fd, &st) != 0) + stat_diag (directory->name); else directory->mtime = get_stat_mtime (&st); } - free (p); } #define PD_FORCE_CHILDREN 0x10 @@ -429,12 +420,13 @@ update_parent_directory (const char *name) #define PD_CHILDREN(f) ((f) & 3) static struct directory * -procdir (const char *name_buffer, struct stat *stat_data, - dev_t device, +procdir (const char *name_buffer, struct tar_stat_info *st, int flag, char *entry) { struct directory *directory; + struct stat *stat_data = &st->stat; + dev_t device = st->parent ? st->parent->stat.st_dev : 0; bool nfs = NFS_FILE_STAT (*stat_data); if ((directory = find_directory (name_buffer)) != NULL) @@ -457,14 +449,14 @@ procdir (const char *name_buffer, struct stat *stat_data, *entry = 'N'; return directory; } - + /* With NFS, the same file can have two different devices if an NFS directory is mounted in multiple locations, which is relatively common when automounting. To avoid spurious incremental redumping of directories, consider all NFS devices as equal, relying on the i-node to establish differences. */ - + if (! ((!check_device_option || (DIR_IS_NFS (directory) && nfs) || directory->device_number == stat_data->st_dev) @@ -502,14 +494,14 @@ procdir (const char *name_buffer, struct stat *stat_data, } else directory->children = CHANGED_CHILDREN; - + DIR_SET_FLAG (directory, DIRF_FOUND); } else { struct directory *d = find_directory_meta (stat_data->st_dev, stat_data->st_ino); - + directory = note_directory (name_buffer, get_stat_mtime(stat_data), stat_data->st_dev, @@ -553,7 +545,7 @@ procdir (const char *name_buffer, struct stat *stat_data, if (one_file_system_option && device != stat_data->st_dev /* ... except if it was explicitely given in the command line */ && !is_individual_file (name_buffer)) - /* FIXME: + /* FIXME: WARNOPT (WARN_XDEV, (0, 0, _("%s: directory is on a different filesystem; not dumped"), @@ -566,14 +558,14 @@ procdir (const char *name_buffer, struct stat *stat_data, if (directory->children == NO_CHILDREN) *entry = 'N'; } - + DIR_SET_FLAG (directory, DIRF_INIT); if (directory->children != NO_CHILDREN) { const char *tag_file_name; - switch (check_exclusion_tags (name_buffer, &tag_file_name)) + switch (check_exclusion_tags (st, &tag_file_name)) { case exclusion_tag_all: /* This warning can be duplicated by code in dump_file0, but only @@ -590,13 +582,13 @@ procdir (const char *name_buffer, struct stat *stat_data, _("contents not dumped")); directory->children = NO_CHILDREN; break; - + case exclusion_tag_under: exclusion_tag_warning (name_buffer, tag_file_name, _("contents not dumped")); directory->tagfile = tag_file_name; break; - + case exclusion_tag_none: break; } @@ -616,7 +608,7 @@ procdir (const char *name_buffer, struct stat *stat_data, DIRECTORY->dump is replaced with the created template. Each entry is prefixed with ' ' if it was present in DUMP and with 'Y' otherwise. */ -void +static void makedumpdir (struct directory *directory, const char *dir) { size_t i, @@ -682,40 +674,29 @@ makedumpdir (struct directory *directory, const char *dir) free (array); } -/* Recursively scan the given directory DIR. - DEVICE is the device number where DIR resides (for --one-file-system). - If CMDLINE is true, the directory name was explicitly listed in the - command line. - Unless *PDIR is NULL, store there a pointer to the struct directory - describing DIR. */ +/* Recursively scan the directory identified by ST. */ struct directory * -scan_directory (char *dir, dev_t device, bool cmdline) +scan_directory (struct tar_stat_info *st) { - char *dirp = savedir (dir); /* for scanning directory */ + char const *dir = st->orig_file_name; + char *dirp = get_directory_entries (st); + dev_t device = st->stat.st_dev; + bool cmdline = ! st->parent; namebuf_t nbuf; char *tmp; - struct stat stat_data; struct directory *directory; char ch; - + if (! dirp) savedir_error (dir); tmp = xstrdup (dir); zap_slashes (tmp); - - if (deref_stat (dereference_option, tmp, &stat_data)) - { - dir_removed_diag (tmp, cmdline, stat_diag); - free (tmp); - free (dirp); - return NULL; - } - directory = procdir (tmp, &stat_data, device, + directory = procdir (tmp, st, (cmdline ? PD_FORCE_INIT : 0), &ch); - + free (tmp); nbuf = namebuf_create (dir); @@ -723,7 +704,7 @@ scan_directory (char *dir, dev_t device, bool cmdline) if (dirp && directory->children != NO_CHILDREN) { char *entry; /* directory entry being scanned */ - dumpdir_iter_t itr; + struct dumpdir_iter *itr; makedumpdir (directory, dirp); @@ -739,14 +720,37 @@ scan_directory (char *dir, dev_t device, bool cmdline) *entry = 'N'; else { - if (deref_stat (dereference_option, full_name, &stat_data)) + int fd = st->fd; + void (*diag) (char const *) = 0; + struct tar_stat_info stsub; + tar_stat_init (&stsub); + + if (fd < 0) { - file_removed_diag (full_name, false, stat_diag); - *entry = 'N'; - continue; + errno = - fd; + diag = open_diag; + } + else if (fstatat (fd, entry + 1, &stsub.stat, fstatat_flags) != 0) + diag = stat_diag; + else if (S_ISDIR (stsub.stat.st_mode)) + { + int subfd = subfile_open (st, entry + 1, open_read_flags); + if (subfd < 0) + diag = open_diag; + else + { + stsub.fd = subfd; + if (fstat (subfd, &stsub.stat) != 0) + diag = stat_diag; + } } - if (S_ISDIR (stat_data.st_mode)) + if (diag) + { + file_removed_diag (full_name, false, diag); + *entry = 'N'; + } + else if (S_ISDIR (stsub.stat.st_mode)) { int pd_flag = 0; if (!recursion_option) @@ -754,23 +758,24 @@ scan_directory (char *dir, dev_t device, bool cmdline) else if (directory->children == ALL_CHILDREN) pd_flag |= PD_FORCE_CHILDREN | ALL_CHILDREN; *entry = 'D'; - procdir (full_name, &stat_data, device, pd_flag, entry); - } - else if (one_file_system_option && device != stat_data.st_dev) + stsub.parent = st; + procdir (full_name, &stsub, pd_flag, entry); + restore_parent_fd (&stsub); + } + else if (one_file_system_option && device != stsub.stat.st_dev) *entry = 'N'; - else if (*entry == 'Y') /* New entry, skip further checks */; - /* FIXME: if (S_ISHIDDEN (stat_data.st_mode))?? */ - - else if (OLDER_STAT_TIME (stat_data, m) + else if (OLDER_STAT_TIME (stsub.stat, m) && (!after_date_option - || OLDER_STAT_TIME (stat_data, c))) + || OLDER_STAT_TIME (stsub.stat, c))) *entry = 'N'; else *entry = 'Y'; + + tar_stat_destroy (&stsub); } } free (itr); @@ -801,17 +806,11 @@ safe_directory_contents (struct directory *dir) return ret ? ret : "\0\0\0\0"; } -void -name_fill_directory (struct name *name, dev_t device, bool cmdline) -{ - name->directory = scan_directory (name->name, device, cmdline); -} - static void -obstack_code_rename (struct obstack *stk, char *from, char *to) +obstack_code_rename (struct obstack *stk, char const *from, char const *to) { - char *s; + char const *s; s = from[0] == 0 ? from : safer_name_suffix (from, false, absolute_names_option); @@ -874,7 +873,7 @@ append_incremental_renames (struct directory *dir) size_t size; struct directory *dp; const char *dump; - + if (dirhead == NULL) return; @@ -891,7 +890,8 @@ append_incremental_renames (struct directory *dir) for (dp = dirhead; dp; dp = dp->next) store_rename (dp, &stk); - if (obstack_object_size (&stk) != size) + /* FIXME: Is this the right thing to do when DIR is null? */ + if (dir && obstack_object_size (&stk) != size) { obstack_1grow (&stk, 0); dumpdir_free (dir->dump); @@ -1217,7 +1217,7 @@ read_timespec (FILE *fp, struct timespec *pval) /* Read incremental snapshot format 2 */ static void -read_incr_db_2 () +read_incr_db_2 (void) { uintmax_t u; struct obstack stk; @@ -1312,7 +1312,7 @@ read_directory_file (void) which is necessary to recreate absolute file names. */ name_from_list (); blank_name_list (); - + if (0 < getline (&buf, &bufsize, listed_incremental_stream)) { char *ebuf; @@ -1367,7 +1367,7 @@ write_directory_file_entry (void *entry, void *data) if (DIR_IS_FOUND (directory)) { char buf[UINTMAX_STRSIZE_BOUND]; - char *s; + char const *s; s = DIR_IS_NFS (directory) ? "1" : "0"; fwrite (s, 2, 1, fp); @@ -1386,7 +1386,7 @@ write_directory_file_entry (void *entry, void *data) if (directory->dump) { const char *p; - dumpdir_iter_t itr; + struct dumpdir_iter *itr; for (p = dumpdir_first (directory->dump, 0, &itr); p; @@ -1452,7 +1452,7 @@ get_gnu_dumpdir (struct tar_stat_info *stat_info) to = archive_dir; set_next_block_after (current_header); - mv_begin (stat_info); + mv_begin_read (stat_info); for (; size > 0; size -= copied) { @@ -1668,7 +1668,7 @@ try_purge_directory (char const *directory_name) free (p); p = new_name (directory_name, cur); - if (deref_stat (false, p, &st)) + if (deref_stat (p, &st) != 0) { if (errno != ENOENT) /* FIXME: Maybe keep a list of renamed dirs and check it here? */ @@ -1707,7 +1707,7 @@ try_purge_directory (char const *directory_name) } free (p); dumpdir_free (dump); - + free (current_dir); return true; } diff --git a/src/list.c b/src/list.c index 716c0b4..d15653d 100644 --- a/src/list.c +++ b/src/list.c @@ -35,6 +35,20 @@ size_t recent_long_name_blocks; /* number of blocks in recent_long_name */ size_t recent_long_link_blocks; /* likewise, for long link */ union block *recent_global_header; /* Recent global header block */ +#define GID_FROM_HEADER(where) gid_from_header (where, sizeof (where)) +#define MAJOR_FROM_HEADER(where) major_from_header (where, sizeof (where)) +#define MINOR_FROM_HEADER(where) minor_from_header (where, sizeof (where)) +#define MODE_FROM_HEADER(where, hbits) \ + mode_from_header (where, sizeof (where), hbits) +#define TIME_FROM_HEADER(where) time_from_header (where, sizeof (where)) +#define UID_FROM_HEADER(where) uid_from_header (where, sizeof (where)) + +static gid_t gid_from_header (const char *buf, size_t size); +static major_t major_from_header (const char *buf, size_t size); +static minor_t minor_from_header (const char *buf, size_t size); +static mode_t mode_from_header (const char *buf, size_t size, unsigned *hbits); +static time_t time_from_header (const char *buf, size_t size); +static uid_t uid_from_header (const char *buf, size_t size); static uintmax_t from_header (const char *, size_t, const char *, uintmax_t, uintmax_t, bool, bool); @@ -78,7 +92,7 @@ read_and (void (*do_something) (void)) prev_status = status; tar_stat_destroy (¤t_stat_info); - status = read_header (¤t_header, ¤t_stat_info, + status = read_header (¤t_header, ¤t_stat_info, read_header_auto); switch (status) { @@ -90,7 +104,8 @@ read_and (void (*do_something) (void)) /* Valid header. We should decode next field (mode) first. Ensure incoming names are null terminated. */ - + decode_header (current_header, ¤t_stat_info, + ¤t_format, 1); if (! name_match (current_stat_info.file_name) || (NEWER_OPTION_INITIALIZED (newer_mtime_option) /* FIXME: We get mtime now, and again later; this causes @@ -116,8 +131,6 @@ read_and (void (*do_something) (void)) quotearg_colon (current_stat_info.file_name))); /* Fall through. */ default: - decode_header (current_header, - ¤t_stat_info, ¤t_format, 0); skip_member (); continue; } @@ -140,7 +153,7 @@ read_and (void (*do_something) (void)) { char buf[UINTMAX_STRSIZE_BOUND]; - status = read_header (¤t_header, ¤t_stat_info, + status = read_header (¤t_header, ¤t_stat_info, read_header_auto); if (status == HEADER_ZERO_BLOCK) break; @@ -210,8 +223,6 @@ list_archive (void) off_t block_ordinal = current_block_ordinal (); /* Print the header block. */ - - decode_header (current_header, ¤t_stat_info, ¤t_format, 0); if (verbose_option) print_header (¤t_stat_info, current_header, block_ordinal); @@ -496,18 +507,18 @@ decode_xform (char *file_name, void *data) links subject to filename transformation. In the absence of another solution, symbolic links are exempt from component stripping and name suffix normalization, but subject to filename transformation - proper. */ + proper. */ return file_name; - + case XFORM_LINK: file_name = safer_name_suffix (file_name, true, absolute_names_option); break; - + case XFORM_REGFILE: file_name = safer_name_suffix (file_name, false, absolute_names_option); break; } - + if (strip_name_components) { size_t prefix_len = stripped_prefix_len (file_name, @@ -519,7 +530,7 @@ decode_xform (char *file_name, void *data) return file_name; } -bool +static bool transform_member_name (char **pinput, int type) { return transform_name_fp (pinput, type, decode_xform, &type); @@ -547,7 +558,7 @@ decode_header (union block *header, struct tar_stat_info *stat_info, enum archive_format format; unsigned hbits; /* high bits of the file mode. */ mode_t mode = MODE_FROM_HEADER (header->header.mode, &hbits); - + if (strcmp (header->header.magic, TMAGIC) == 0) { if (header->star_header.prefix[130] == 0 @@ -645,13 +656,17 @@ decode_header (union block *header, struct tar_stat_info *stat_info, stat_info->is_dumpdir = true; } + if (header->header.typeflag == GNUTYPE_VOLHDR) + /* Name transformations don't apply to volume headers. */ + return; + transform_member_name (&stat_info->file_name, XFORM_REGFILE); switch (header->header.typeflag) { case SYMTYPE: transform_member_name (&stat_info->link_name, XFORM_SYMLINK); break; - + case LNKTYPE: transform_member_name (&stat_info->link_name, XFORM_LINK); } @@ -877,7 +892,7 @@ from_header (char const *where0, size_t digs, char const *type, return -1; } -gid_t +static gid_t gid_from_header (const char *p, size_t s) { return from_header (p, s, "gid_t", @@ -886,7 +901,7 @@ gid_from_header (const char *p, size_t s) false, false); } -major_t +static major_t major_from_header (const char *p, size_t s) { return from_header (p, s, "major_t", @@ -894,7 +909,7 @@ major_from_header (const char *p, size_t s) (uintmax_t) TYPE_MAXIMUM (major_t), false, false); } -minor_t +static minor_t minor_from_header (const char *p, size_t s) { return from_header (p, s, "minor_t", @@ -904,7 +919,7 @@ minor_from_header (const char *p, size_t s) /* Convert P to the file mode, as understood by tar. Store unrecognized mode bits (from 10th up) in HBITS. */ -mode_t +static mode_t mode_from_header (const char *p, size_t s, unsigned *hbits) { unsigned u = from_header (p, s, "mode_t", @@ -935,14 +950,7 @@ off_from_header (const char *p, size_t s) (uintmax_t) TYPE_MAXIMUM (off_t), false, false); } -size_t -size_from_header (const char *p, size_t s) -{ - return from_header (p, s, "size_t", (uintmax_t) 0, - (uintmax_t) TYPE_MAXIMUM (size_t), false, false); -} - -time_t +static time_t time_from_header (const char *p, size_t s) { return from_header (p, s, "time_t", @@ -950,7 +958,7 @@ time_from_header (const char *p, size_t s) (uintmax_t) TYPE_MAXIMUM (time_t), false, false); } -uid_t +static uid_t uid_from_header (const char *p, size_t s) { return from_header (p, s, "uid_t", @@ -1146,7 +1154,7 @@ simple_print_header (struct tar_stat_info *st, union block *blk, /* Time stamp. */ - time_stamp = tartime (st->mtime, false); + time_stamp = tartime (st->mtime, full_time_option); time_stamp_len = strlen (time_stamp); if (datewidth < time_stamp_len) datewidth = time_stamp_len; @@ -1292,8 +1300,8 @@ simple_print_header (struct tar_stat_info *st, union block *blk, } -void -print_volume_label () +static void +print_volume_label (void) { struct tar_stat_info vstat; union block vblk; @@ -1356,7 +1364,7 @@ skip_file (off_t size) { union block *x; - /* FIXME: Make sure mv_begin is always called before it */ + /* FIXME: Make sure mv_begin_read is always called before it */ if (seekable_archive) { @@ -1391,7 +1399,7 @@ skip_member (void) char save_typeflag = current_header->header.typeflag; set_next_block_after (current_header); - mv_begin (¤t_stat_info); + mv_begin_read (¤t_stat_info); if (current_stat_info.is_sparse) sparse_skip_file (¤t_stat_info); @@ -1412,22 +1420,23 @@ test_archive_label () if (read_header (¤t_header, ¤t_stat_info, read_header_auto) == HEADER_SUCCESS) { - char *s = NULL; - decode_header (current_header, ¤t_stat_info, ¤t_format, 0); if (current_header->header.typeflag == GNUTYPE_VOLHDR) assign_string (&volume_label, current_header->header.name); - if (volume_label - && (name_match (volume_label) - || (multi_volume_option - && (s = drop_volume_label_suffix (volume_label)) - && name_match (s)))) - if (verbose_option) - print_volume_label (); - free (s); + if (volume_label) + { + if (verbose_option) + print_volume_label (); + if (!name_match (volume_label) && multi_volume_option) + { + char *s = drop_volume_label_suffix (volume_label); + name_match (s); + free (s); + } + } } close_archive (); - names_notfound (); + label_notfound (); } diff --git a/src/misc.c b/src/misc.c index f81111f..cb12947 100644 --- a/src/misc.c +++ b/src/misc.c @@ -1,7 +1,7 @@ /* Miscellaneous functions, not really specific to GNU tar. Copyright (C) 1988, 1992, 1994, 1995, 1996, 1997, 1999, 2000, 2001, - 2003, 2004, 2005, 2006, 2007, 2009 Free Software Foundation, Inc. + 2003, 2004, 2005, 2006, 2007, 2009, 2010 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the @@ -21,17 +21,12 @@ #include #include "common.h" #include -#include #include #include #include -#include -#if HAVE_STROPTS_H -# include -#endif -#if HAVE_SYS_FILIO_H -# include +#ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT +# define DOUBLE_SLASH_IS_DISTINCT_ROOT 0 #endif @@ -47,6 +42,9 @@ assign_string (char **string, const char *value) *string = value ? xstrdup (value) : 0; } +#if 0 +/* This function is currently unused; perhaps it should be removed? */ + /* Allocate a copy of the string quoted as in C, and returns that. If the string does not have to be quoted, it returns a null pointer. The allocated copy should normally be freed with free() after the @@ -59,7 +57,7 @@ assign_string (char **string, const char *value) when reading directory files. This means that we can't use quotearg, as quotearg is locale-dependent and is meant for human consumption. */ -char * +static char * quote_copy_string (const char *string) { const char *source = string; @@ -100,6 +98,7 @@ quote_copy_string (const char *string) } return 0; } +#endif /* Takes a quoted C string (like those produced by quote_copy_string) and turns it back into the un-quoted original. This is done in @@ -230,10 +229,79 @@ zap_slashes (char *name) return name; } +/* Normalize FILE_NAME by removing redundant slashes and "." + components, including redundant trailing slashes. Leave ".." + alone, as it may be significant in the presence of symlinks and on + platforms where "/.." != "/". Destructive version: modifies its + argument. */ +static void +normalize_filename_x (char *file_name) +{ + char *name = file_name + FILE_SYSTEM_PREFIX_LEN (file_name); + char *p; + char const *q; + char c; + + /* Don't squeeze leading "//" to "/", on hosts where they're distinct. */ + name += (DOUBLE_SLASH_IS_DISTINCT_ROOT + && ISSLASH (*name) && ISSLASH (name[1]) && ! ISSLASH (name[2])); + + /* Omit redundant leading "." components. */ + for (q = p = name; (*p = *q) == '.' && ISSLASH (q[1]); p += !*q) + for (q += 2; ISSLASH (*q); q++) + continue; + + /* Copy components from Q to P, omitting redundant slashes and + internal "." components. */ + while ((*p++ = c = *q++) != '\0') + if (ISSLASH (c)) + while (ISSLASH (q[*q == '.'])) + q += (*q == '.') + 1; + + /* Omit redundant trailing "." component and slash. */ + if (2 < p - name) + { + p -= p[-2] == '.' && ISSLASH (p[-3]); + p -= 2 < p - name && ISSLASH (p[-2]); + p[-1] = '\0'; + } +} + +/* Normalize NAME by removing redundant slashes and "." components, + including redundant trailing slashes. Return a normalized + newly-allocated copy. */ + char * normalize_filename (const char *name) { - return zap_slashes (canonicalize_filename_mode (name, CAN_MISSING)); + char *copy = NULL; + + if (IS_RELATIVE_FILE_NAME (name)) + { + /* Set COPY to the absolute file name if possible. + + FIXME: There should be no need to get the absolute file name. + getcwd is slow, it might fail, and it does not necessarily + return a canonical name even when it succeeds. Perhaps we + can use dev+ino pairs instead of names? */ + copy = xgetcwd (); + if (copy) + { + size_t copylen = strlen (copy); + bool need_separator = ! (DOUBLE_SLASH_IS_DISTINCT_ROOT + && copylen == 2 && ISSLASH (copy[1])); + copy = xrealloc (copy, copylen + need_separator + strlen (name) + 1); + copy[copylen] = DIRECTORY_SEPARATOR; + strcpy (copy + copylen + need_separator, name); + } + else + WARN ((0, errno, _("Cannot get working directory"))); + } + + if (! copy) + copy = xstrdup (name); + normalize_filename_x (copy); + return copy; } @@ -301,7 +369,7 @@ code_timespec (struct timespec t, char sbuf[TIMESPEC_STRSIZE_BOUND]) /* ignore invalid values of ns */ if (BILLION <= ns || ns < 0) ns = 0; - + if (negative && ns != 0) { s++; @@ -322,7 +390,7 @@ static char *before_backup_name; static char *after_backup_name; /* Return 1 if FILE_NAME is obviously "." or "/". */ -static bool +bool must_be_dot_or_slash (char const *file_name) { file_name += FILE_SYSTEM_PREFIX_LEN (file_name); @@ -363,7 +431,7 @@ safer_rmdir (const char *file_name) return -1; } - return rmdir (file_name); + return unlinkat (chdir_fd, file_name, AT_REMOVEDIR); } /* Remove FILE_NAME, returning 1 on success. If FILE_NAME is a directory, @@ -383,7 +451,7 @@ remove_any_file (const char *file_name, enum remove_option option) if (try_unlink_first) { - if (unlink (file_name) == 0) + if (unlinkat (chdir_fd, file_name, 0) == 0) return 1; /* POSIX 1003.1-2001 requires EPERM when attempting to unlink a @@ -399,7 +467,7 @@ remove_any_file (const char *file_name, enum remove_option option) switch (errno) { case ENOTDIR: - return !try_unlink_first && unlink (file_name) == 0; + return !try_unlink_first && unlinkat (chdir_fd, file_name, 0) == 0; case 0: case EEXIST: @@ -476,7 +544,7 @@ maybe_backup_file (const char *file_name, bool this_is_the_archive) if (this_is_the_archive && _remdev (file_name)) return true; - if (stat (file_name, &file_stat)) + if (deref_stat (file_name, &file_stat) != 0) { if (errno == ENOENT) return true; @@ -496,7 +564,8 @@ maybe_backup_file (const char *file_name, bool this_is_the_archive) if (! after_backup_name) xalloc_die (); - if (rename (before_backup_name, after_backup_name) == 0) + if (renameat (chdir_fd, before_backup_name, chdir_fd, after_backup_name) + == 0) { if (verbose_option) fprintf (stdlis, _("Renaming %s to %s\n"), @@ -523,7 +592,8 @@ undo_last_backup (void) { if (after_backup_name) { - if (rename (after_backup_name, before_backup_name) != 0) + if (renameat (chdir_fd, after_backup_name, chdir_fd, before_backup_name) + != 0) { int e = errno; ERROR ((0, e, _("%s: Cannot rename to %s"), @@ -538,39 +608,36 @@ undo_last_backup (void) } } -/* Depending on DEREF, apply either stat or lstat to (NAME, BUF). */ +/* Apply either stat or lstat to (NAME, BUF), depending on the + presence of the --dereference option. NAME is relative to the + most-recent argument to chdir_do. */ int -deref_stat (bool deref, char const *name, struct stat *buf) +deref_stat (char const *name, struct stat *buf) { - return deref ? stat (name, buf) : lstat (name, buf); + return fstatat (chdir_fd, name, buf, fstatat_flags); } -/* Set FD's (i.e., FILE's) access time to TIMESPEC[0]. If that's not - possible to do by itself, set its access and data modification - times to TIMESPEC[0] and TIMESPEC[1], respectively. */ +/* Set FD's (i.e., assuming the working directory is PARENTFD, FILE's) + access time to ATIME. */ int -set_file_atime (int fd, char const *file, struct timespec const timespec[2]) +set_file_atime (int fd, int parentfd, char const *file, struct timespec atime) { -#ifdef _FIOSATIME - if (0 <= fd) - { - struct timeval timeval; - timeval.tv_sec = timespec[0].tv_sec; - timeval.tv_usec = timespec[0].tv_nsec / 1000; - if (ioctl (fd, _FIOSATIME, &timeval) == 0) - return 0; - } -#endif - - return gl_futimens (fd, file, timespec); + struct timespec ts[2]; + ts[0] = atime; + ts[1].tv_nsec = UTIME_OMIT; + return fdutimensat (fd, parentfd, file, ts, fstatat_flags); } /* A description of a working directory. */ struct wd { + /* The directory's name. */ char const *name; - int saved; - struct saved_cwd saved_cwd; + + /* If nonzero, the file descriptor of the directory, or AT_FDCWD if + the working directory. If zero, the directory needs to be opened + to be used. */ + int fd; }; /* A vector of chdir targets. wd[0] is the initial working directory. */ @@ -582,6 +649,19 @@ static size_t wd_count; /* The allocated size of the vector. */ static size_t wd_alloc; +/* The maximum number of chdir targets with open directories. + Don't make it too large, as many operating systems have a small + limit on the number of open file descriptors. Also, the current + implementation does not scale well. */ +enum { CHDIR_CACHE_SIZE = 16 }; + +/* Indexes into WD of chdir targets with open file descriptors, sorted + most-recently used first. Zero indexes are unused. */ +static int wdcache[CHDIR_CACHE_SIZE]; + +/* Number of nonzero entries in WDCACHE. */ +static size_t wdcache_count; + int chdir_count () { @@ -608,7 +688,7 @@ chdir_arg (char const *dir) if (! wd_count) { wd[wd_count].name = "."; - wd[wd_count].saved = 0; + wd[wd_count].fd = AT_FDCWD; wd_count++; } } @@ -625,64 +705,76 @@ chdir_arg (char const *dir) } wd[wd_count].name = dir; - wd[wd_count].saved = 0; + wd[wd_count].fd = 0; return wd_count++; } -/* Change to directory I. If I is 0, change to the initial working - directory; otherwise, I must be a value returned by chdir_arg. */ +/* Index of current directory. */ +int chdir_current; + +/* Value suitable for use as the first argument to openat, and in + similar locations for fstatat, etc. This is an open file + descriptor, or AT_FDCWD if the working directory is current. It is + valid until the next invocation of chdir_do. */ +int chdir_fd = AT_FDCWD; + +/* Change to directory I, in a virtual way. This does not actually + invoke chdir; it merely sets chdir_fd to an int suitable as the + first argument for openat, etc. If I is 0, change to the initial + working directory; otherwise, I must be a value returned by + chdir_arg. */ void chdir_do (int i) { - static int previous; - - if (previous != i) + if (chdir_current != i) { - struct wd *prev = &wd[previous]; struct wd *curr = &wd[i]; + int fd = curr->fd; - if (! prev->saved) + if (! fd) { - int err = 0; - prev->saved = 1; - if (save_cwd (&prev->saved_cwd) != 0) - err = errno; - else if (0 <= prev->saved_cwd.desc) + if (! IS_ABSOLUTE_FILE_NAME (curr->name)) + chdir_do (i - 1); + fd = openat (chdir_fd, curr->name, + open_searchdir_flags & ~ O_NOFOLLOW); + if (fd < 0) + open_fatal (curr->name); + + curr->fd = fd; + + /* Add I to the cache, tossing out the lowest-ranking entry if the + cache is full. */ + if (wdcache_count < CHDIR_CACHE_SIZE) + wdcache[wdcache_count++] = i; + else { - /* Make sure we still have at least one descriptor available. */ - int fd1 = prev->saved_cwd.desc; - int fd2 = dup (fd1); - if (0 <= fd2) - close (fd2); - else if (errno == EMFILE) - { - /* Force restore_cwd to use chdir_long. */ - close (fd1); - prev->saved_cwd.desc = -1; - prev->saved_cwd.name = xgetcwd (); - } - else - err = errno; + struct wd *stale = &wd[wdcache[CHDIR_CACHE_SIZE - 1]]; + if (close (stale->fd) != 0) + close_diag (stale->name); + stale->fd = 0; + wdcache[CHDIR_CACHE_SIZE - 1] = i; } - - if (err) - FATAL_ERROR ((0, err, _("Cannot save working directory"))); } - if (curr->saved) + if (0 < fd) { - if (restore_cwd (&curr->saved_cwd)) - FATAL_ERROR ((0, 0, _("Cannot change working directory"))); - } - else - { - if (i && ! ISSLASH (curr->name[0])) - chdir_do (i - 1); - if (chdir (curr->name) != 0) - chdir_fatal (curr->name); + /* Move the i value to the front of the cache. This is + O(CHDIR_CACHE_SIZE), but the cache is small. */ + size_t ci; + int prev = wdcache[0]; + for (ci = 1; prev != i; ci++) + { + int curr = wdcache[ci]; + wdcache[ci] = prev; + if (curr == i) + break; + prev = curr; + } + wdcache[0] = i; } - previous = i; + chdir_current = i; + chdir_fd = fd; } } @@ -759,7 +851,7 @@ file_removed_diag (const char *name, bool top_level, (0, 0, _("%s: File removed before we read it"), quotearg_colon (name))); set_exit_status (TAREXIT_DIFFERS); - } + } else diagfn (name); } @@ -869,6 +961,3 @@ namebuf_name (namebuf_t buf, const char *name) strcpy (buf->buffer + buf->dir_length, name); return buf->buffer; } - - - diff --git a/src/names.c b/src/names.c index 1146020..6e214bf 100644 --- a/src/names.c +++ b/src/names.c @@ -27,15 +27,6 @@ /* User and group names. */ -struct group *getgrnam (); -struct passwd *getpwnam (); -#if ! HAVE_DECL_GETPWUID -struct passwd *getpwuid (); -#endif -#if ! HAVE_DECL_GETGRGID -struct group *getgrgid (); -#endif - /* Make sure you link with the proper libraries if you are running the Yellow Peril (thanks for the good laugh, Ian J.!), or, euh... NIS. This code should also be modified for non-UNIX systems to do something @@ -179,7 +170,7 @@ gname_to_gid (char const *gname, gid_t *gidp) } -struct name * +static struct name * make_name (const char *file_name) { struct name *p = xzalloc (sizeof (*p)); @@ -190,7 +181,7 @@ make_name (const char *file_name) return p; } -void +static void free_name (struct name *p) { if (p) @@ -207,7 +198,7 @@ free_name (struct name *p) static struct name *namelist; /* first name in list, if any */ static struct name *nametail; /* end of name list */ -/* File name arguments are processed in two stages: first a +/* File name arguments are processed in two stages: first a name_array (see below) is filled, then the names from it are moved into the namelist. @@ -215,7 +206,7 @@ static struct name *nametail; /* end of name list */ which is meant to help process large archives on machines with limited memory. With this option on, namelist contains at most one entry, which diminishes the memory consumption. - + However, I very much doubt if we still need this -- Sergey */ /* A name_array element contains entries of three types: */ @@ -230,24 +221,25 @@ struct name_elt /* A name_array element. */ union { const char *name; /* File or directory name */ - int matching_flags;/* fnmatch options if type == NELT_FMASK */ + int matching_flags;/* fnmatch options if type == NELT_FMASK */ } v; }; static struct name_elt *name_array; /* store an array of names */ -static size_t allocated_names; /* how big is the array? */ -static size_t names; /* how many entries does it have? */ -static size_t name_index; /* how many of the entries have we scanned? */ +static size_t allocated_entries; /* how big is the array? */ +static size_t entries; /* how many entries does it have? */ +static size_t scanned; /* how many of the entries have we scanned? */ +size_t name_count; /* how many of the entries are names? */ /* Check the size of name_array, reallocating it as necessary. */ static void -check_name_alloc () +check_name_alloc (void) { - if (names == allocated_names) + if (entries == allocated_entries) { - if (allocated_names == 0) - allocated_names = 10; /* Set initial allocation */ - name_array = x2nrealloc (name_array, &allocated_names, + if (allocated_entries == 0) + allocated_entries = 10; /* Set initial allocation */ + name_array = x2nrealloc (name_array, &allocated_entries, sizeof (name_array[0])); } } @@ -260,17 +252,18 @@ name_add_name (const char *name, int matching_flags) struct name_elt *ep; check_name_alloc (); - ep = &name_array[names++]; + ep = &name_array[entries++]; if (prev_flags != matching_flags) { ep->type = NELT_FMASK; ep->v.matching_flags = matching_flags; prev_flags = matching_flags; check_name_alloc (); - ep = &name_array[names++]; + ep = &name_array[entries++]; } ep->type = NELT_NAME; ep->v.name = name; + name_count++; } /* Add to name_array a chdir request for the directory NAME */ @@ -279,10 +272,10 @@ name_add_dir (const char *name) { struct name_elt *ep; check_name_alloc (); - ep = &name_array[names++]; + ep = &name_array[entries++]; ep->type = NELT_CHDIR; ep->v.name = name; -} +} /* Names from external name file. */ @@ -313,28 +306,28 @@ static int matching_flags; /* exclude_fnmatch options */ If CHANGE_DIRS is true, treat any entries of type NELT_CHDIR as the request to change to the given directory. - + Entries of type NELT_FMASK cause updates of the matching_flags value. */ -struct name_elt * +static struct name_elt * name_next_elt (int change_dirs) { static struct name_elt entry; const char *source; char *cursor; - while (name_index != names) + while (scanned != entries) { struct name_elt *ep; size_t source_len; - - ep = &name_array[name_index++]; + + ep = &name_array[scanned++]; if (ep->type == NELT_FMASK) { matching_flags = ep->v.matching_flags; continue; } - + source = ep->v.name; source_len = strlen (source); if (name_buffer_length < source_len) @@ -421,7 +414,7 @@ name_gather (void) buffer->directory = NULL; buffer->parent = NULL; buffer->cmdline = true; - + namelist = nametail = buffer; } else if (change_dir) @@ -519,7 +512,7 @@ name_match (const char *file_name) if (!cursor) return true; - + if (cursor->name[0] == 0) { chdir_do (cursor->change_dir); @@ -589,7 +582,7 @@ all_names_found (struct tar_stat_info *p) return true; } -static void +static int regex_usage_warning (const char *name) { static int warned_once = 0; @@ -603,6 +596,7 @@ regex_usage_warning (const char *name) _("Use --wildcards to enable pattern matching," " or --no-wildcards to suppress this warning"))); } + return warned_once; } /* Print the names of things in the namelist that were not matched. */ @@ -615,12 +609,11 @@ names_notfound (void) if (!WASFOUND (cursor) && cursor->name[0]) { regex_usage_warning (cursor->name); - if (cursor->found_count == 0) - ERROR ((0, 0, _("%s: Not found in archive"), - quotearg_colon (cursor->name))); - else - ERROR ((0, 0, _("%s: Required occurrence not found in archive"), - quotearg_colon (cursor->name))); + ERROR ((0, 0, + (cursor->found_count == 0) ? + _("%s: Not found in archive") : + _("%s: Required occurrence not found in archive"), + quotearg_colon (cursor->name))); } /* Don't bother freeing the name list; we're about to exit. */ @@ -639,13 +632,49 @@ names_notfound (void) } } } + +void +label_notfound (void) +{ + struct name const *cursor; + + if (!namelist) + return; + + for (cursor = namelist; cursor; cursor = cursor->next) + if (WASFOUND (cursor)) + return; + + if (verbose_option) + error (0, 0, _("Archive label mismatch")); + set_exit_status (TAREXIT_DIFFERS); + + for (cursor = namelist; cursor; cursor = cursor->next) + { + if (regex_usage_warning (cursor->name)) + break; + } + + /* Don't bother freeing the name list; we're about to exit. */ + namelist = NULL; + nametail = NULL; + + if (same_order_option) + { + const char *name; + + while ((name = name_next (1)) != NULL + && regex_usage_warning (name) == 0) + ; + } +} /* Sorting name lists. */ /* Sort *singly* linked LIST of names, of given LENGTH, using COMPARE to order names. Return the sorted list. Note that after calling this function, the `prev' links in list elements are messed up. - + Apart from the type `struct name' and the definition of SUCCESSOR, this is a generic list-sorting function, but it's too painful to make it both generic and portable @@ -752,17 +781,15 @@ compare_names (struct name const *n1, struct name const *n2) } -/* Add all the dirs under NAME, which names a directory, to the namelist. - If any of the files is a directory, recurse on the subdirectory. - DEVICE is the device not to leave, if the -l option is specified. - CMDLINE is true, if the NAME appeared on the command line. */ +/* Add all the dirs under ST to the namelist NAME, descending the + directory hierarchy recursively. */ static void -add_hierarchy_to_namelist (struct name *name, dev_t device, bool cmdline) +add_hierarchy_to_namelist (struct tar_stat_info *st, struct name *name) { const char *buffer; - - name_fill_directory (name, device, cmdline); + + name->directory = scan_directory (st); buffer = directory_contents (name->directory); if (buffer) { @@ -790,6 +817,8 @@ add_hierarchy_to_namelist (struct name *name, dev_t device, bool cmdline) if (*string == 'D') { struct name *np; + struct tar_stat_info subdir; + int subfd; if (allocated_length <= name_length + string_length) { @@ -810,7 +839,38 @@ add_hierarchy_to_namelist (struct name *name, dev_t device, bool cmdline) else child_tail->sibling = np; child_tail = np; - add_hierarchy_to_namelist (np, device, false); + + tar_stat_init (&subdir); + subdir.parent = st; + if (st->fd < 0) + { + subfd = -1; + errno = - st->fd; + } + else + subfd = subfile_open (st, string + 1, + open_read_flags | O_DIRECTORY); + if (subfd < 0) + open_diag (namebuf); + else + { + subdir.fd = subfd; + if (fstat (subfd, &subdir.stat) != 0) + stat_diag (namebuf); + else if (! (O_DIRECTORY || S_ISDIR (subdir.stat.st_mode))) + { + errno = ENOTDIR; + open_diag (namebuf); + } + else + { + subdir.orig_file_name = xstrdup (namebuf); + add_hierarchy_to_namelist (&subdir, np); + restore_parent_fd (&subdir); + } + } + + tar_stat_destroy (&subdir); } } @@ -846,7 +906,7 @@ rebase_child_list (struct name *child, struct name *parent) size_t old_prefix_len = child->parent->length; size_t new_prefix_len = parent->length; char *new_prefix = parent->name; - + for (; child; child = child->sibling) { size_t size = child->length - old_prefix_len + new_prefix_len; @@ -858,7 +918,7 @@ rebase_child_list (struct name *child, struct name *parent) child->length = size; rebase_directory (child->directory, - child->parent->name, old_prefix_len, + child->parent->name, old_prefix_len, new_prefix, new_prefix_len); } } @@ -871,11 +931,10 @@ void collect_and_sort_names (void) { struct name *name; - struct name *next_name, *prev_name; + struct name *next_name, *prev_name = NULL; int num_names; - struct stat statbuf; Hash_table *nametab; - + name_gather (); if (!namelist) @@ -903,10 +962,12 @@ collect_and_sort_names (void) read_directory_file (); } - + num_names = 0; for (name = namelist; name; name = name->next, num_names++) { + struct tar_stat_info st; + if (name->found_count || name->directory) continue; if (name->matching_flags & EXCLUDE_WILDCARDS) @@ -918,16 +979,34 @@ collect_and_sort_names (void) if (name->name[0] == 0) continue; - if (deref_stat (dereference_option, name->name, &statbuf) != 0) + tar_stat_init (&st); + + if (deref_stat (name->name, &st.stat) != 0) { stat_diag (name->name); continue; } - if (S_ISDIR (statbuf.st_mode)) + if (S_ISDIR (st.stat.st_mode)) { - name->found_count++; - add_hierarchy_to_namelist (name, statbuf.st_dev, true); + int dir_fd = openat (chdir_fd, name->name, + open_read_flags | O_DIRECTORY); + if (dir_fd < 0) + open_diag (name->name); + else + { + st.fd = dir_fd; + if (fstat (dir_fd, &st.stat) != 0) + stat_diag (name->name); + else if (O_DIRECTORY || S_ISDIR (st.stat.st_mode)) + { + st.orig_file_name = xstrdup (name->name); + name->found_count++; + add_hierarchy_to_namelist (&st, name); + } + } } + + tar_stat_destroy (&st); } namelist = merge_sort (namelist, num_names, compare_names); @@ -950,6 +1029,7 @@ collect_and_sort_names (void) { if (p->child) rebase_child_list (p->child, name); + hash_delete (nametab, name); /* FIXME: remove_directory (p->caname); ? */ remname (p); free_name (p); @@ -1078,12 +1158,12 @@ static void register_individual_file (char const *name) { struct stat st; - - if (deref_stat (dereference_option, name, &st) != 0) + + if (deref_stat (name, &st) != 0) return; /* Will be complained about later */ if (S_ISDIR (st.st_mode)) return; - + hash_string_insert (&individual_file_table, name); } diff --git a/src/sparse.c b/src/sparse.c index 9fde508..9680b60 100644 --- a/src/sparse.c +++ b/src/sparse.c @@ -1,6 +1,7 @@ /* Functions for dealing with sparse files - Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2006, 2007, 2010 Free Software + Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the @@ -216,43 +217,45 @@ sparse_scan_file (struct tar_sparse_file *file) struct tar_stat_info *st = file->stat_info; int fd = file->fd; char buffer[BLOCKSIZE]; - size_t count; + size_t count = 0; off_t offset = 0; struct sp_array sp = {0, 0}; - if (!lseek_or_error (file, 0)) - return false; - st->archive_file_size = 0; - - if (!tar_sparse_scan (file, scan_begin, NULL)) - return false; - while ((count = safe_read (fd, buffer, sizeof buffer)) != 0 - && count != SAFE_READ_ERROR) + if (ST_NBLOCKS (st->stat) == 0) + offset = st->stat.st_size; + else { - /* Analyze the block. */ - if (zero_block_p (buffer, count)) + if (!tar_sparse_scan (file, scan_begin, NULL)) + return false; + + while ((count = safe_read (fd, buffer, sizeof buffer)) != 0 + && count != SAFE_READ_ERROR) { - if (sp.numbytes) + /* Analyze the block. */ + if (zero_block_p (buffer, count)) + { + if (sp.numbytes) + { + sparse_add_map (st, &sp); + sp.numbytes = 0; + if (!tar_sparse_scan (file, scan_block, NULL)) + return false; + } + } + else { - sparse_add_map (st, &sp); - sp.numbytes = 0; - if (!tar_sparse_scan (file, scan_block, NULL)) + if (sp.numbytes == 0) + sp.offset = offset; + sp.numbytes += count; + st->archive_file_size += count; + if (!tar_sparse_scan (file, scan_block, buffer)) return false; } - } - else - { - if (sp.numbytes == 0) - sp.offset = offset; - sp.numbytes += count; - st->archive_file_size += count; - if (!tar_sparse_scan (file, scan_block, buffer)) - return false; - } - offset += count; + offset += count; + } } if (sp.numbytes == 0) @@ -324,7 +327,6 @@ sparse_dump_region (struct tar_sparse_file *file, size_t i) memset (blk->buffer + bytes_read, 0, BLOCKSIZE - bytes_read); bytes_left -= bytes_read; file->dumped_size += bytes_read; - mv_size_left (file->stat_info->archive_file_size - file->dumped_size); set_next_block_after (blk); } @@ -334,7 +336,7 @@ sparse_dump_region (struct tar_sparse_file *file, size_t i) static bool sparse_extract_region (struct tar_sparse_file *file, size_t i) { - size_t write_size; + off_t write_size; if (!lseek_or_error (file, file->stat_info->sparse_map[i].offset)) return false; @@ -398,10 +400,11 @@ sparse_dump_file (int fd, struct tar_stat_info *st) { size_t i; - mv_begin (file.stat_info); + mv_begin_write (file.stat_info->file_name, + file.stat_info->stat.st_size, + file.stat_info->archive_file_size - file.dumped_size); for (i = 0; rc && i < file.stat_info->sparse_map_avail; i++) rc = tar_sparse_dump_region (&file, i); - mv_end (); } } @@ -508,13 +511,13 @@ check_sparse_region (struct tar_sparse_file *file, off_t beg, off_t end) static bool check_data_region (struct tar_sparse_file *file, size_t i) { - size_t size_left; + off_t size_left; if (!lseek_or_error (file, file->stat_info->sparse_map[i].offset)) return false; size_left = file->stat_info->sparse_map[i].numbytes; mv_size_left (file->stat_info->archive_file_size - file->dumped_size); - + while (size_left > 0) { size_t bytes_read; @@ -564,9 +567,9 @@ sparse_diff_file (int fd, struct tar_stat_info *st) file.stat_info = st; file.fd = fd; file.seekable = true; /* File *must* be seekable for compare to work */ - + rc = tar_sparse_decode_header (&file); - mv_begin (st); + mv_begin_read (st); for (i = 0; rc && i < file.stat_info->sparse_map_avail; i++) { rc = check_sparse_region (&file, @@ -579,7 +582,7 @@ sparse_diff_file (int fd, struct tar_stat_info *st) if (!rc) skip_file (file.stat_info->archive_file_size - file.dumped_size); mv_end (); - + tar_sparse_done (&file); return rc; } @@ -625,8 +628,9 @@ oldgnu_add_sparse (struct tar_sparse_file *file, struct sparse *s) if (s->numbytes[0] == '\0') return add_finish; sp.offset = OFF_FROM_HEADER (s->offset); - sp.numbytes = SIZE_FROM_HEADER (s->numbytes); + sp.numbytes = OFF_FROM_HEADER (s->numbytes); if (sp.offset < 0 + || sp.offset + sp.numbytes < 0 || file->stat_info->stat.st_size < sp.offset + sp.numbytes || file->stat_info->archive_file_size < 0) return add_fail; @@ -695,8 +699,8 @@ oldgnu_store_sparse_info (struct tar_sparse_file *file, size_t *pindex, { OFF_TO_CHARS (file->stat_info->sparse_map[*pindex].offset, sp->offset); - SIZE_TO_CHARS (file->stat_info->sparse_map[*pindex].numbytes, - sp->numbytes); + OFF_TO_CHARS (file->stat_info->sparse_map[*pindex].numbytes, + sp->numbytes); } } @@ -851,13 +855,13 @@ static struct tar_sparse_optab const star_optab = { instances of GNU.sparse.offset/GNU.sparse.numbytes variables, whereas POSIX requires the latest occurrence of the variable to override all previous occurrences. - + To avoid this incompatibility two following versions were introduced. * 0.1 Used by tar 1.15.2 -- 1.15.91 (alpha releases). - + The sparse file map is stored in x header: @@ -875,18 +879,18 @@ static struct tar_sparse_optab const star_optab = { Starting from this version, the exact sparse format version is specified explicitely in the header using the following variables: - GNU.sparse.major Major version + GNU.sparse.major Major version GNU.sparse.minor Minor version X header keeps the following variables: - + GNU.sparse.name Real file name of the sparse file GNU.sparse.realsize Real size of the stored file (corresponds to the old GNU.sparse.size variable) The name field of the ustar header is constructed using the pattern "%d/GNUSparseFile.%p/%f". - + The sparse map itself is stored in the file data block, preceding the actual file data. It consists of a series of octal numbers of arbitrary length, delimited by newlines. The map is padded with nulls to the nearest block @@ -924,11 +928,11 @@ pax_dump_header_0 (struct tar_sparse_file *file) char nbuf[UINTMAX_STRSIZE_BOUND]; struct sp_array *map = file->stat_info->sparse_map; char *save_file_name = NULL; - + /* Store the real file size */ xheader_store ("GNU.sparse.size", file->stat_info, NULL); xheader_store ("GNU.sparse.numblocks", file->stat_info, NULL); - + if (xheader_keyword_deleted_p ("GNU.sparse.map") || tar_sparse_minor == 0) { @@ -991,7 +995,7 @@ pax_dump_header_1 (struct tar_sparse_file *file) #define COPY_STRING(b,dst,src) do \ { \ char *endp = b->buffer + BLOCKSIZE; \ - char *srcp = src; \ + char const *srcp = src; \ while (*srcp) \ { \ if (dst == endp) \ @@ -1003,7 +1007,7 @@ pax_dump_header_1 (struct tar_sparse_file *file) } \ *dst++ = *srcp++; \ } \ - } while (0) + } while (0) /* Compute stored file size */ p = umaxtostr (file->stat_info->sparse_map_avail, nbuf); @@ -1018,13 +1022,13 @@ pax_dump_header_1 (struct tar_sparse_file *file) size = (size + BLOCKSIZE - 1) / BLOCKSIZE; file->stat_info->archive_file_size += size * BLOCKSIZE; file->dumped_size += size * BLOCKSIZE; - + /* Store sparse file identification */ xheader_store ("GNU.sparse.major", file->stat_info, NULL); xheader_store ("GNU.sparse.minor", file->stat_info, NULL); xheader_store ("GNU.sparse.name", file->stat_info, NULL); xheader_store ("GNU.sparse.realsize", file->stat_info, NULL); - + file->stat_info->file_name = xheader_format_name (file->stat_info, "%d/GNUSparseFile.%p/%f", 0); @@ -1072,12 +1076,12 @@ decode_num (uintmax_t *num, char const *arg, uintmax_t maxval) if (!ISDIGIT (*arg)) return false; - + u = strtoumax (arg, &arg_lim, 10); if (! (u <= maxval && errno != ERANGE) || *arg_lim) return false; - + *num = u; return true; } @@ -1117,7 +1121,7 @@ pax_decode_header (struct tar_sparse_file *file) } \ while (*dst++ != '\n'); \ dst[-1] = 0; \ - } while (0) + } while (0) set_next_block_after (current_header); file->dumped_size += BLOCKSIZE; @@ -1126,7 +1130,7 @@ pax_decode_header (struct tar_sparse_file *file) COPY_BUF (blk,nbuf,p); if (!decode_num (&u, nbuf, TYPE_MAXIMUM (size_t))) { - ERROR ((0, 0, _("%s: malformed sparse archive member"), + ERROR ((0, 0, _("%s: malformed sparse archive member"), file->stat_info->orig_file_name)); return false; } @@ -1137,19 +1141,19 @@ pax_decode_header (struct tar_sparse_file *file) for (i = 0; i < file->stat_info->sparse_map_size; i++) { struct sp_array sp; - + COPY_BUF (blk,nbuf,p); if (!decode_num (&u, nbuf, TYPE_MAXIMUM (off_t))) { - ERROR ((0, 0, _("%s: malformed sparse archive member"), + ERROR ((0, 0, _("%s: malformed sparse archive member"), file->stat_info->orig_file_name)); return false; } sp.offset = u; COPY_BUF (blk,nbuf,p); - if (!decode_num (&u, nbuf, TYPE_MAXIMUM (size_t))) + if (!decode_num (&u, nbuf, TYPE_MAXIMUM (off_t))) { - ERROR ((0, 0, _("%s: malformed sparse archive member"), + ERROR ((0, 0, _("%s: malformed sparse archive member"), file->stat_info->orig_file_name)); return false; } @@ -1158,7 +1162,7 @@ pax_decode_header (struct tar_sparse_file *file) } set_next_block_after (blk); } - + return true; } @@ -1168,7 +1172,7 @@ static struct tar_sparse_optab const pax_optab = { pax_sparse_member_p, pax_dump_header, NULL, - pax_decode_header, + pax_decode_header, NULL, /* No scan_block function */ sparse_dump_region, sparse_extract_region, diff --git a/src/suffix.c b/src/suffix.c index 23868c9..046cf2b 100644 --- a/src/suffix.c +++ b/src/suffix.c @@ -27,7 +27,7 @@ struct compression_suffix }; static struct compression_suffix compression_suffixes[] = { -#define __CAT2__(a,b) a ## b +#define __CAT2__(a,b) a ## b #define S(s,p) #s, sizeof (#s) - 1, __CAT2__(p,_PROGRAM) { S(gz, GZIP) }, { S(tgz, GZIP) }, @@ -54,7 +54,7 @@ static const char * find_compression_program (const char *name, const char *defprog) { char *suf = strrchr (name, '.'); - + if (suf) { int i; @@ -74,10 +74,9 @@ find_compression_program (const char *name, const char *defprog) } void -set_comression_program_by_suffix (const char *name, const char *defprog) +set_compression_program_by_suffix (const char *name, const char *defprog) { const char *program = find_compression_program (name, defprog); if (program) use_compress_program_option = program; } - diff --git a/src/system.c b/src/system.c index d646822..a11afd7 100644 --- a/src/system.c +++ b/src/system.c @@ -1,7 +1,7 @@ /* System-dependent calls for tar. Copyright (C) 2003, 2004, 2005, 2006, 2007, - 2008 Free Software Foundation, Inc. + 2008, 2010 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the @@ -20,6 +20,7 @@ #include #include "common.h" +#include #include #include @@ -192,6 +193,7 @@ sys_spawn_shell (void) child = xfork (); if (child == 0) { + priv_set_restore_linkdir (); execlp (shell, "-sh", "-i", (char *) 0); exec_fatal (shell); } @@ -283,15 +285,15 @@ xdup2 (int from, int into) } } -void wait_for_grandchild (pid_t pid) __attribute__ ((__noreturn__)); +static void wait_for_grandchild (pid_t pid) __attribute__ ((__noreturn__)); /* Propagate any failure of the grandchild back to the parent. */ -void +static void wait_for_grandchild (pid_t pid) { int wait_status; int exit_code = 0; - + while (waitpid (pid, &wait_status, 0) == -1) if (errno != EINTR) { @@ -303,7 +305,7 @@ wait_for_grandchild (pid_t pid) raise (WTERMSIG (wait_status)); else if (WEXITSTATUS (wait_status) != 0) exit_code = WEXITSTATUS (wait_status); - + exit (exit_code); } @@ -332,7 +334,7 @@ sys_child_open_for_compress (void) set_program_name (_("tar (child)")); signal (SIGPIPE, SIG_DFL); - + xdup2 (parent_pipe[PREAD], STDIN_FILENO); xclose (parent_pipe[PWRITE]); @@ -362,6 +364,7 @@ sys_child_open_for_compress (void) } xdup2 (archive, STDOUT_FILENO); } + priv_set_restore_linkdir (); execlp (use_compress_program_option, use_compress_program_option, NULL); exec_fatal (use_compress_program_option); } @@ -379,6 +382,7 @@ sys_child_open_for_compress (void) xdup2 (child_pipe[PWRITE], STDOUT_FILENO); xclose (child_pipe[PREAD]); + priv_set_restore_linkdir (); execlp (use_compress_program_option, use_compress_program_option, (char *) 0); exec_fatal (use_compress_program_option); @@ -476,7 +480,7 @@ sys_child_open_for_uncompress (void) set_program_name (_("tar (child)")); signal (SIGPIPE, SIG_DFL); - + xdup2 (parent_pipe[PWRITE], STDOUT_FILENO); xclose (parent_pipe[PREAD]); @@ -496,6 +500,7 @@ sys_child_open_for_uncompress (void) if (archive < 0) open_fatal (archive_name_array[0]); xdup2 (archive, STDIN_FILENO); + priv_set_restore_linkdir (); execlp (use_compress_program_option, use_compress_program_option, "-d", (char *) 0); exec_fatal (use_compress_program_option); @@ -514,6 +519,7 @@ sys_child_open_for_uncompress (void) xdup2 (child_pipe[PREAD], STDIN_FILENO); xclose (child_pipe[PWRITE]); + priv_set_restore_linkdir (); execlp (use_compress_program_option, use_compress_program_option, "-d", (char *) 0); exec_fatal (use_compress_program_option); @@ -575,7 +581,7 @@ sys_child_open_for_uncompress (void) static void -dec_to_env (char *envar, uintmax_t num) +dec_to_env (char const *envar, uintmax_t num) { char buf[UINTMAX_STRSIZE_BOUND]; char *numstr; @@ -586,7 +592,7 @@ dec_to_env (char *envar, uintmax_t num) } static void -time_to_env (char *envar, struct timespec t) +time_to_env (char const *envar, struct timespec t) { char buf[TIMESPEC_STRSIZE_BOUND]; if (setenv (envar, code_timespec (t, buf), 1) != 0) @@ -594,7 +600,7 @@ time_to_env (char *envar, struct timespec t) } static void -oct_to_env (char *envar, unsigned long num) +oct_to_env (char const *envar, unsigned long num) { char buf[1+1+(sizeof(unsigned long)*CHAR_BIT+2)/3]; @@ -604,7 +610,7 @@ oct_to_env (char *envar, unsigned long num) } static void -str_to_env (char *envar, char const *str) +str_to_env (char const *envar, char const *str) { if (str) { @@ -616,7 +622,7 @@ str_to_env (char *envar, char const *str) } static void -chr_to_env (char *envar, char c) +chr_to_env (char const *envar, char c) { char buf[2]; buf[0] = c; @@ -702,6 +708,7 @@ sys_exec_command (char *file_name, int typechar, struct tar_stat_info *st) argv[2] = to_command_option; argv[3] = NULL; + priv_set_restore_linkdir (); execv ("/bin/sh", argv); exec_fatal (file_name); @@ -750,7 +757,7 @@ sys_exec_info_script (const char **archive_name, int volume_number) char uintbuf[UINTMAX_STRSIZE_BOUND]; int p[2]; static RETSIGTYPE (*saved_handler) (int sig); - + xpipe (p); saved_handler = signal (SIGPIPE, SIG_IGN); @@ -783,7 +790,7 @@ sys_exec_info_script (const char **archive_name, int volume_number) } signal (SIGPIPE, saved_handler); - + if (WIFEXITED (status)) { if (WEXITSTATUS (status) == 0 && rc > 0) @@ -813,9 +820,10 @@ sys_exec_info_script (const char **archive_name, int volume_number) argv[0] = "/bin/sh"; argv[1] = "-c"; - argv[2] = (char*) info_script_option; + argv[2] = (char *) info_script_option; argv[3] = NULL; + priv_set_restore_linkdir (); execv (argv[0], argv); exec_fatal (info_script_option); @@ -860,9 +868,10 @@ sys_exec_checkpoint_script (const char *script_name, archive_format : current_format), 1); argv[0] = "/bin/sh"; argv[1] = "-c"; - argv[2] = (char*) script_name; + argv[2] = (char *) script_name; argv[3] = NULL; + priv_set_restore_linkdir (); execv (argv[0], argv); exec_fatal (script_name); diff --git a/src/tar.c b/src/tar.c index da12419..928cfdd 100644 --- a/src/tar.c +++ b/src/tar.c @@ -43,7 +43,7 @@ #include #include #include -#include +#include #include #include #include @@ -74,7 +74,7 @@ static const char *stdin_used_by; /* Doesn't return if stdin already requested. */ -void +static void request_stdin (const char *option) { if (stdin_used_by) @@ -220,12 +220,12 @@ subcommand_string (enum subcommand c) abort (); } -void -tar_list_quoting_styles (struct obstack *stk, char *prefix) +static void +tar_list_quoting_styles (struct obstack *stk, char const *prefix) { int i; size_t prefixlen = strlen (prefix); - + for (i = 0; quoting_style_args[i]; i++) { obstack_grow (stk, prefix, prefixlen); @@ -235,7 +235,7 @@ tar_list_quoting_styles (struct obstack *stk, char *prefix) } } -void +static void tar_set_quoting_style (char *arg) { int i; @@ -274,6 +274,7 @@ enum EXCLUDE_TAG_ALL_OPTION, EXCLUDE_VCS_OPTION, FORCE_LOCAL_OPTION, + FULL_TIME_OPTION, GROUP_OPTION, IGNORE_CASE_OPTION, IGNORE_COMMAND_ERROR_OPTION, @@ -337,7 +338,7 @@ enum UNQUOTE_OPTION, UTC_OPTION, VOLNO_FILE_OPTION, - WARNING_OPTION, + WARNING_OPTION, WILDCARDS_MATCH_SLASH_OPTION, WILDCARDS_OPTION }; @@ -630,7 +631,7 @@ static struct argp_option options[] = { {"lzop", LZOP_OPTION, 0, 0, NULL, GRID+1 }, {"xz", 'J', 0, 0, NULL, GRID+1 }, #undef GRID - + #define GRID 100 {NULL, 0, NULL, 0, N_("Local file selection:"), GRID }, @@ -752,7 +753,9 @@ static struct argp_option options[] = { "Allowed signals are: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 and SIGUSR2; " "the names without SIG prefix are also accepted"), GRID+1 }, {"utc", UTC_OPTION, 0, 0, - N_("print file modification dates in UTC"), GRID+1 }, + N_("print file modification times in UTC"), GRID+1 }, + {"full-time", FULL_TIME_OPTION, 0, 0, + N_("print file time to its full resolution"), GRID+1 }, {"index-file", INDEX_FILE_OPTION, N_("FILE"), 0, N_("send verbose output to FILE"), GRID+1 }, {"block-number", 'R', 0, 0, @@ -888,7 +891,7 @@ static char const * const backup_file_table[] = { NULL }; -void +static void add_exclude_array (char const * const * fv) { int i; @@ -907,8 +910,8 @@ format_default_settings (void) " --rsh-command=%s" #endif , - archive_format_string (DEFAULT_ARCHIVE_FORMAT), - DEFAULT_ARCHIVE, DEFAULT_BLOCKING, + archive_format_string (DEFAULT_ARCHIVE_FORMAT), + DEFAULT_ARCHIVE, DEFAULT_BLOCKING, quoting_style_args[DEFAULT_QUOTING_STYLE], DEFAULT_RMT_COMMAND #ifdef REMOTE_SHELL @@ -925,7 +928,7 @@ set_subcommand_option (enum subcommand subcommand) && subcommand_option != subcommand) USAGE_ERROR ((0, 0, _("You may not specify more than one `-Acdtrux' or `--test-label' option"))); - + subcommand_option = subcommand; } @@ -935,7 +938,7 @@ set_use_compress_program_option (const char *string) if (use_compress_program_option && strcmp (use_compress_program_option, string) != 0) USAGE_ERROR ((0, 0, _("Conflicting compression options"))); - + use_compress_program_option = string; } @@ -963,14 +966,14 @@ stat_on_signal (int signo) #endif } -void +static void set_stat_signal (const char *name) { static struct sigtab { - char *name; + char const *name; int signo; - } sigtab[] = { + } const sigtab[] = { { "SIGUSR1", SIGUSR1 }, { "USR1", SIGUSR1 }, { "SIGUSR2", SIGUSR2 }, @@ -982,7 +985,7 @@ set_stat_signal (const char *name) { "SIGQUIT", SIGQUIT }, { "QUIT", SIGQUIT } }; - struct sigtab *p; + struct sigtab const *p; for (p = sigtab; p < sigtab + sizeof (sigtab) / sizeof (sigtab[0]); p++) if (strcmp (p->name, name) == 0) @@ -1011,7 +1014,7 @@ get_date_or_file (struct tar_args *args, const char *option, || *str == '.') { struct stat st; - if (deref_stat (dereference_option, str, &st) != 0) + if (stat (str, &st) != 0) { stat_error (str); USAGE_ERROR ((0, 0, _("Date sample file not found"))); @@ -1020,7 +1023,7 @@ get_date_or_file (struct tar_args *args, const char *option, } else { - if (! get_date (ts, str, NULL)) + if (! parse_datetime (ts, str, NULL)) { WARN ((0, 0, _("Substituting %s for unknown date format %s"), tartime (*ts, false), quote (str))); @@ -1093,7 +1096,7 @@ read_name_from_file (FILE *fp, struct obstack *stk, int term) obstack_1grow (stk, c); counter++; } - + if (counter == 0 && c != EOF) return file_list_skip; @@ -1164,7 +1167,7 @@ update_argv (const char *filename, struct argp_state *state) bool is_stdin = false; enum read_file_list_state read_state; int term = filename_terminator; - + if (!strcmp (filename, "-")) { is_stdin = true; @@ -1177,7 +1180,7 @@ update_argv (const char *filename, struct argp_state *state) if ((fp = fopen (filename, "r")) == NULL) open_fatal (filename); } - + while ((read_state = read_name_from_file (fp, &argv_stk, term)) != file_list_end) { @@ -1186,18 +1189,18 @@ update_argv (const char *filename, struct argp_state *state) case file_list_success: count++; break; - + case file_list_end: /* won't happen, just to pacify gcc */ break; - + case file_list_zero: { size_t size; - + WARNOPT (WARN_FILENAME_WITH_NULS, (0, 0, N_("%s: file name read contains nul character"), quotearg_colon (filename))); - + /* Prepare new stack contents */ size = obstack_object_size (&argv_stk); p = obstack_finish (&argv_stk); @@ -1212,34 +1215,34 @@ update_argv (const char *filename, struct argp_state *state) term = 0; break; } - + case file_list_skip: break; } } - + if (!is_stdin) fclose (fp); - + if (count == 0) return; - + start = obstack_finish (&argv_stk); - + if (term == 0) for (p = start; *p; p += strlen (p) + 1) if (p[0] == '-') count++; - + new_argc = state->argc + count; new_argv = xmalloc (sizeof (state->argv[0]) * (new_argc + 1)); memcpy (new_argv, state->argv, sizeof (state->argv[0]) * (state->argc + 1)); state->argv = new_argv; memmove (&state->argv[state->next + count], &state->argv[state->next], (state->argc - state->next + 1) * sizeof (state->argv[0])); - + state->argc = new_argc; - + for (i = state->next, p = start; *p; p += strlen (p) + 1, i++) { if (term == 0 && p[0] == '-') @@ -1260,15 +1263,15 @@ tar_help_filter (int key, const char *text, void *input) default: s = (char*) text; break; - + case 'j': s = xasprintf (_("filter the archive through %s"), BZIP2_PROGRAM); break; - + case 'z': s = xasprintf (_("filter the archive through %s"), GZIP_PROGRAM); break; - + case 'Z': s = xasprintf (_("filter the archive through %s"), COMPRESS_PROGRAM); break; @@ -1276,29 +1279,33 @@ tar_help_filter (int key, const char *text, void *input) case LZIP_OPTION: s = xasprintf (_("filter the archive through %s"), LZIP_PROGRAM); break; - + case LZMA_OPTION: s = xasprintf (_("filter the archive through %s"), LZMA_PROGRAM); break; - + case 'J': s = xasprintf (_("filter the archive through %s"), XZ_PROGRAM); break; - + case ARGP_KEY_HELP_EXTRA: - obstack_init (&stk); - s = _("Valid arguments for the --quoting-style option are:"); - obstack_grow (&stk, s, strlen (s)); - obstack_grow (&stk, "\n\n", 2); - tar_list_quoting_styles (&stk, " "); - s = _("\n*This* tar defaults to:\n"); - obstack_grow (&stk, s, strlen (s)); - s = format_default_settings (); - obstack_grow (&stk, s, strlen (s)); - obstack_1grow (&stk, '\n'); - obstack_1grow (&stk, 0); - s = xstrdup (obstack_finish (&stk)); - obstack_free (&stk, NULL); + { + const char *tstr; + + obstack_init (&stk); + tstr = _("Valid arguments for the --quoting-style option are:"); + obstack_grow (&stk, tstr, strlen (tstr)); + obstack_grow (&stk, "\n\n", 2); + tar_list_quoting_styles (&stk, " "); + tstr = _("\n*This* tar defaults to:\n"); + obstack_grow (&stk, tstr, strlen (tstr)); + s = format_default_settings (); + obstack_grow (&stk, s, strlen (s)); + obstack_1grow (&stk, '\n'); + obstack_1grow (&stk, 0); + s = xstrdup (obstack_finish (&stk)); + obstack_free (&stk, NULL); + } } return s; } @@ -1308,7 +1315,7 @@ expand_pax_option (struct tar_args *targs, const char *arg) { struct obstack stk; char *res; - + obstack_init (&stk); while (*arg) { @@ -1357,6 +1364,8 @@ expand_pax_option (struct tar_args *targs, const char *arg) } +#define TAR_SIZE_SUFFIXES "bBcGgkKMmPTtw" + static error_t parse_opt (int key, char *arg, struct argp_state *state) { @@ -1369,19 +1378,19 @@ parse_opt (int key, char *arg, struct argp_state *state) name_add_name (arg, MAKE_INCL_OPTIONS (args)); args->input_files = true; break; - + case 'A': set_subcommand_option (CAT_SUBCOMMAND); break; - + case 'a': args->compress_autodetect = true; break; - + case NO_AUTO_COMPRESS_OPTION: args->compress_autodetect = false; break; - + case 'b': { uintmax_t u; @@ -1393,116 +1402,125 @@ parse_opt (int key, char *arg, struct argp_state *state) _("Invalid blocking factor"))); } break; - + case 'B': /* Try to reblock input records. For reading 4.2BSD pipes. */ - + /* It would surely make sense to exchange -B and -R, but it seems that -B has been used for a long while in Sun tar and most BSD-derived systems. This is a consequence of the block/record terminology confusion. */ - + read_full_records_option = true; break; - + case 'c': set_subcommand_option (CREATE_SUBCOMMAND); break; - + case 'C': name_add_dir (arg); break; - + case 'd': set_subcommand_option (DIFF_SUBCOMMAND); break; - + case 'f': if (archive_names == allocated_archive_names) archive_name_array = x2nrealloc (archive_name_array, &allocated_archive_names, sizeof (archive_name_array[0])); - + archive_name_array[archive_names++] = arg; break; - + case 'F': /* Since -F is only useful with -M, make it implied. Run this script at the end of each tape. */ - + info_script_option = arg; multi_volume_option = true; break; - + + case FULL_TIME_OPTION: + full_time_option = true; + break; + case 'g': listed_incremental_option = arg; after_date_option = true; /* Fall through. */ - + case 'G': /* We are making an incremental dump (FIXME: are we?); save directories at the beginning of the archive, and include in each directory its contents. */ - + incremental_option = true; break; - + case 'h': /* Follow symbolic links. */ dereference_option = true; break; - + case HARD_DEREFERENCE_OPTION: hard_dereference_option = true; break; - + case 'i': /* Ignore zero blocks (eofs). This can't be the default, because Unix tar writes two blocks of zeros, then pads out the record with garbage. */ - + ignore_zeros_option = true; break; - + case 'j': set_use_compress_program_option (BZIP2_PROGRAM); break; - + case 'J': set_use_compress_program_option (XZ_PROGRAM); break; - + case 'k': /* Don't replace existing files. */ old_files_option = KEEP_OLD_FILES; break; - + case 'K': starting_file_option = true; addname (arg, 0, true, NULL); break; - + case ONE_FILE_SYSTEM_OPTION: /* When dumping directories, don't dump files/subdirectories that are on other filesystems. */ one_file_system_option = true; break; - + case 'l': check_links_option = 1; break; - + case 'L': { uintmax_t u; - if (xstrtoumax (arg, 0, 10, &u, "") != LONGINT_OK) + char *p; + + if (xstrtoumax (arg, &p, 10, &u, TAR_SIZE_SUFFIXES) != LONGINT_OK) USAGE_ERROR ((0, 0, "%s: %s", quotearg_colon (arg), _("Invalid tape length"))); - tape_length_option = 1024 * (tarlong) u; + if (p > arg && !strchr (TAR_SIZE_SUFFIXES, p[-1])) + tape_length_option = 1024 * (tarlong) u; + else + tape_length_option = (tarlong) u; multi_volume_option = true; } break; - + case LEVEL_OPTION: { char *p; @@ -1511,47 +1529,47 @@ parse_opt (int key, char *arg, struct argp_state *state) USAGE_ERROR ((0, 0, _("Invalid incremental level value"))); } break; - + case LZIP_OPTION: set_use_compress_program_option (LZIP_PROGRAM); break; - + case LZMA_OPTION: set_use_compress_program_option (LZMA_PROGRAM); break; - + case LZOP_OPTION: set_use_compress_program_option (LZOP_PROGRAM); break; - + case 'm': touch_option = true; break; - + case 'M': /* Make multivolume archive: when we can't write any more into the archive, re-open it, and continue writing. */ - + multi_volume_option = true; break; - + case MTIME_OPTION: get_date_or_file (args, "--mtime", arg, &mtime_option); set_mtime_option = true; break; - + case 'n': seek_option = 1; break; - + case NO_SEEK_OPTION: seek_option = 0; break; - + case 'N': after_date_option = true; /* Fall through. */ - + case NEWER_MTIME_OPTION: if (NEWER_OPTION_INITIALIZED (newer_mtime_option)) USAGE_ERROR ((0, 0, _("More than one threshold date"))); @@ -1559,48 +1577,48 @@ parse_opt (int key, char *arg, struct argp_state *state) key == NEWER_MTIME_OPTION ? "--newer-mtime" : "--after-date", arg, &newer_mtime_option); break; - + case 'o': args->o_option = true; break; - + case 'O': to_stdout_option = true; break; - + case 'p': same_permissions_option = true; break; - + case 'P': absolute_names_option = true; break; - + case 'r': set_subcommand_option (APPEND_SUBCOMMAND); break; - + case 'R': /* Print block numbers for debugging bad tar archives. */ - + /* It would surely make sense to exchange -B and -R, but it seems that -B has been used for a long while in Sun tar and most BSD-derived systems. This is a consequence of the block/record terminology confusion. */ - + block_number_option = true; break; - + case 's': /* Names to extract are sorted. */ - + same_order_option = true; break; - + case 'S': sparse_option = true; break; - + case SPARSE_VERSION_OPTION: sparse_option = true; { @@ -1616,16 +1634,16 @@ parse_opt (int key, char *arg, struct argp_state *state) } } break; - + case 't': set_subcommand_option (LIST_SUBCOMMAND); verbose_option++; break; - + case TEST_LABEL_OPTION: set_subcommand_option (TEST_LABEL_SUBCOMMAND); break; - + case 'T': update_argv (arg, state); /* Indicate we've been given -T option. This is for backward @@ -1633,40 +1651,40 @@ parse_opt (int key, char *arg, struct argp_state *state) succeed */ files_from_option = true; break; - + case 'u': set_subcommand_option (UPDATE_SUBCOMMAND); break; - + case 'U': old_files_option = UNLINK_FIRST_OLD_FILES; break; - + case UTC_OPTION: utc_option = true; break; - + case 'v': verbose_option++; warning_option |= WARN_VERBOSE_WARNINGS; break; - + case 'V': volume_label_option = arg; break; - + case 'w': interactive_option = true; break; - + case 'W': verify_option = true; break; - + case 'x': set_subcommand_option (EXTRACT_SUBCOMMAND); break; - + case 'X': if (add_exclude_file (add_exclude, excluded, arg, MAKE_EXCL_OPTIONS (args), '\n') @@ -1676,19 +1694,19 @@ parse_opt (int key, char *arg, struct argp_state *state) FATAL_ERROR ((0, e, "%s", quotearg_colon (arg))); } break; - + case 'z': set_use_compress_program_option (GZIP_PROGRAM); break; - + case 'Z': set_use_compress_program_option (COMPRESS_PROGRAM); break; - + case ANCHORED_OPTION: args->matching_flags |= EXCLUDE_ANCHORED; break; - + case ATIME_PRESERVE_OPTION: atime_preserve_option = (arg @@ -1700,20 +1718,20 @@ parse_opt (int key, char *arg, struct argp_state *state) _("--atime-preserve='system' is not supported" " on this platform"))); break; - + case CHECK_DEVICE_OPTION: check_device_option = true; break; - + case NO_CHECK_DEVICE_OPTION: check_device_option = false; break; - + case CHECKPOINT_OPTION: if (arg) { char *p; - + if (*arg == '.') { checkpoint_compile_action ("."); @@ -1727,96 +1745,96 @@ parse_opt (int key, char *arg, struct argp_state *state) else checkpoint_option = DEFAULT_CHECKPOINT; break; - + case CHECKPOINT_ACTION_OPTION: checkpoint_compile_action (arg); break; - + case BACKUP_OPTION: backup_option = true; if (arg) args->version_control_string = arg; break; - + case DELAY_DIRECTORY_RESTORE_OPTION: delay_directory_restore_option = true; break; - + case NO_DELAY_DIRECTORY_RESTORE_OPTION: delay_directory_restore_option = false; break; - + case DELETE_OPTION: set_subcommand_option (DELETE_SUBCOMMAND); break; - + case EXCLUDE_BACKUPS_OPTION: add_exclude_array (backup_file_table); break; - + case EXCLUDE_OPTION: add_exclude (excluded, arg, MAKE_EXCL_OPTIONS (args)); break; - + case EXCLUDE_CACHES_OPTION: add_exclusion_tag ("CACHEDIR.TAG", exclusion_tag_contents, cachedir_file_p); break; - + case EXCLUDE_CACHES_UNDER_OPTION: add_exclusion_tag ("CACHEDIR.TAG", exclusion_tag_under, cachedir_file_p); break; - + case EXCLUDE_CACHES_ALL_OPTION: add_exclusion_tag ("CACHEDIR.TAG", exclusion_tag_all, cachedir_file_p); break; - + case EXCLUDE_TAG_OPTION: add_exclusion_tag (arg, exclusion_tag_contents, NULL); break; - + case EXCLUDE_TAG_UNDER_OPTION: add_exclusion_tag (arg, exclusion_tag_under, NULL); break; - + case EXCLUDE_TAG_ALL_OPTION: add_exclusion_tag (arg, exclusion_tag_all, NULL); break; - + case EXCLUDE_VCS_OPTION: add_exclude_array (vcs_file_table); break; - + case FORCE_LOCAL_OPTION: force_local_option = true; break; - + case 'H': set_archive_format (arg); break; - + case INDEX_FILE_OPTION: index_file_name = arg; break; - + case IGNORE_CASE_OPTION: args->matching_flags |= FNM_CASEFOLD; break; - + case IGNORE_COMMAND_ERROR_OPTION: ignore_command_error_option = true; break; - + case IGNORE_FAILED_READ_OPTION: ignore_failed_read_option = true; break; - + case KEEP_NEWER_FILES_OPTION: old_files_option = KEEP_NEWER_FILES; break; - + case GROUP_OPTION: if (! (strlen (arg) < GNAME_FIELD_SIZE && gname_to_gid (arg, &group_option))) @@ -1830,7 +1848,7 @@ parse_opt (int key, char *arg, struct argp_state *state) _("Invalid group"))); } break; - + case MODE_OPTION: mode_option = mode_compile (arg); if (!mode_option) @@ -1838,49 +1856,49 @@ parse_opt (int key, char *arg, struct argp_state *state) initial_umask = umask (0); umask (initial_umask); break; - + case NO_ANCHORED_OPTION: args->include_anchored = 0; /* Clear the default for comman line args */ args->matching_flags &= ~ EXCLUDE_ANCHORED; break; - + case NO_IGNORE_CASE_OPTION: args->matching_flags &= ~ FNM_CASEFOLD; break; - + case NO_IGNORE_COMMAND_ERROR_OPTION: ignore_command_error_option = false; break; - + case NO_OVERWRITE_DIR_OPTION: old_files_option = NO_OVERWRITE_DIR_OLD_FILES; break; - + case NO_QUOTE_CHARS_OPTION: for (;*arg; arg++) set_char_quoting (NULL, *arg, 0); break; - + case NO_WILDCARDS_OPTION: args->wildcards = disable_wildcards; break; - + case NO_WILDCARDS_MATCH_SLASH_OPTION: args->matching_flags |= FNM_FILE_NAME; break; - + case NULL_OPTION: filename_terminator = '\0'; break; - + case NO_NULL_OPTION: filename_terminator = '\n'; break; - + case NUMERIC_OWNER_OPTION: numeric_owner_option = true; break; - + case OCCURRENCE_OPTION: if (!arg) occurrence_option = 1; @@ -1894,15 +1912,15 @@ parse_opt (int key, char *arg, struct argp_state *state) _("Invalid number"))); } break; - + case OVERWRITE_DIR_OPTION: old_files_option = DEFAULT_OLD_FILES; break; - + case OVERWRITE_OPTION: old_files_option = OVERWRITE_OLD_FILES; break; - + case OWNER_OPTION: if (! (strlen (arg) < UNAME_FIELD_SIZE && uname_to_uid (arg, &owner_option))) @@ -1916,16 +1934,16 @@ parse_opt (int key, char *arg, struct argp_state *state) _("Invalid owner"))); } break; - + case QUOTE_CHARS_OPTION: for (;*arg; arg++) set_char_quoting (NULL, *arg, 1); break; - + case QUOTING_STYLE_OPTION: tar_set_quoting_style (arg); break; - + case PAX_OPTION: { char *tmp = expand_pax_option (args, arg); @@ -1934,11 +1952,11 @@ parse_opt (int key, char *arg, struct argp_state *state) free (tmp); } break; - + case POSIX_OPTION: set_archive_format ("posix"); break; - + case PRESERVE_OPTION: /* FIXME: What it is good for? */ same_permissions_option = true; @@ -1946,11 +1964,12 @@ parse_opt (int key, char *arg, struct argp_state *state) WARN ((0, 0, _("The --preserve option is deprecated, " "use --preserve-permissions --preserve-order instead"))); break; - + case RECORD_SIZE_OPTION: { uintmax_t u; - if (! (xstrtoumax (arg, 0, 10, &u, "") == LONGINT_OK + + if (! (xstrtoumax (arg, NULL, 10, &u, TAR_SIZE_SUFFIXES) == LONGINT_OK && u == (size_t) u)) USAGE_ERROR ((0, 0, "%s: %s", quotearg_colon (arg), _("Invalid record size"))); @@ -1961,27 +1980,27 @@ parse_opt (int key, char *arg, struct argp_state *state) blocking_factor = record_size / BLOCKSIZE; } break; - + case RECURSIVE_UNLINK_OPTION: recursive_unlink_option = true; break; - + case REMOVE_FILES_OPTION: remove_files_option = true; break; - + case RESTRICT_OPTION: restrict_option = true; break; - + case RMT_COMMAND_OPTION: rmt_command = arg; break; - + case RSH_COMMAND_OPTION: rsh_command_option = arg; break; - + case SHOW_DEFAULTS_OPTION: { char *s = format_default_settings (); @@ -1990,7 +2009,7 @@ parse_opt (int key, char *arg, struct argp_state *state) free (s); exit (0); } - + case STRIP_COMPONENTS_OPTION: { uintmax_t u; @@ -2079,7 +2098,7 @@ parse_opt (int key, char *arg, struct argp_state *state) case WARNING_OPTION: set_warning_option (arg); break; - + case '0': case '1': case '2': @@ -2197,7 +2216,7 @@ decode_options (int argc, char **argv) struct tar_args args; argp_version_setup ("tar", tar_authors); - + /* Set some default option values. */ args.textual_date = NULL; args.wildcards = default_wildcards; @@ -2209,7 +2228,7 @@ decode_options (int argc, char **argv) args.version_control_string = 0; args.input_files = false; args.compress_autodetect = false; - + subcommand_option = UNKNOWN_SUBCOMMAND; archive_format = DEFAULT_FORMAT; blocking_factor = DEFAULT_BLOCKING; @@ -2230,7 +2249,7 @@ decode_options (int argc, char **argv) incremental_level = -1; seek_option = -1; - + /* Convert old-style tar call by exploding option element and rearranging options accordingly. */ @@ -2385,7 +2404,7 @@ decode_options (int argc, char **argv) if (incremental_level != -1 && !listed_incremental_option) WARN ((0, 0, _("--level is meaningless without --listed-incremental"))); - + if (volume_label_option) { if (archive_format == GNU_FORMAT || archive_format == OLDGNU_FORMAT) @@ -2446,6 +2465,18 @@ decode_options (int argc, char **argv) if (recursive_unlink_option) old_files_option = UNLINK_FIRST_OLD_FILES; + /* Flags for accessing files to be read from or copied into. POSIX says + O_NONBLOCK has unspecified effect on most types of files, but in + practice it never harms and sometimes helps. */ + { + int base_open_flags = + (O_BINARY | O_CLOEXEC | O_NOCTTY | O_NONBLOCK + | (dereference_option ? 0 : O_NOFOLLOW) + | (atime_preserve_option == system_atime_preserve ? O_NOATIME : 0)); + open_read_flags = O_RDONLY | base_open_flags; + open_searchdir_flags = O_SEARCH | O_DIRECTORY | base_open_flags; + } + fstatat_flags = dereference_option ? 0 : AT_SYMLINK_NOFOLLOW; if (subcommand_option == TEST_LABEL_SUBCOMMAND) { @@ -2463,7 +2494,7 @@ decode_options (int argc, char **argv) if (same_order_option && listed_incremental_option) USAGE_ERROR ((0, 0, _("--preserve-order is not compatible with " "--listed-incremental"))); - + /* Forbid using -c with no input files whatsoever. Check that `-f -', explicit or implied, is used correctly. */ @@ -2475,8 +2506,8 @@ decode_options (int argc, char **argv) _("Cowardly refusing to create an empty archive"))); if (args.compress_autodetect && archive_names && strcmp (archive_name_array[0], "-")) - set_comression_program_by_suffix (archive_name_array[0], - use_compress_program_option); + set_compression_program_by_suffix (archive_name_array[0], + use_compress_program_option); break; case EXTRACT_SUBCOMMAND: @@ -2531,7 +2562,7 @@ decode_options (int argc, char **argv) } checkpoint_finish_compile (); - + report_textual_dates (&args); } @@ -2566,14 +2597,12 @@ main (int argc, char **argv) obstack_init (&argv_stk); - /* Ensure default behavior for some signals */ - signal (SIGPIPE, SIG_IGN); /* System V fork+wait does not work if SIGCHLD is ignored. */ signal (SIGCHLD, SIG_DFL); /* Try to disable the ability to unlink a directory. */ priv_set_remove_linkdir (); - + /* Decode options. */ decode_options (argc, argv); @@ -2659,9 +2688,31 @@ tar_stat_init (struct tar_stat_info *st) memset (st, 0, sizeof (*st)); } +/* Close the stream or file descriptor associated with ST, and remove + all traces of it from ST. Return true if successful, false (with a + diagnostic) otherwise. */ +bool +tar_stat_close (struct tar_stat_info *st) +{ + int status = (st->dirstream ? closedir (st->dirstream) + : 0 < st->fd ? close (st->fd) + : 0); + st->dirstream = 0; + st->fd = 0; + + if (status == 0) + return true; + else + { + close_diag (st->orig_file_name); + return false; + } +} + void tar_stat_destroy (struct tar_stat_info *st) { + tar_stat_close (st); free (st->orig_file_name); free (st->file_name); free (st->link_name); diff --git a/src/tar.h b/src/tar.h index 7f72f3e..ce9850c 100644 --- a/src/tar.h +++ b/src/tar.h @@ -265,7 +265,7 @@ enum archive_format struct sp_array { off_t offset; - size_t numbytes; + off_t numbytes; }; struct xheader @@ -311,12 +311,32 @@ struct tar_stat_info /* Extended headers */ struct xheader xhdr; - + /* For dumpdirs */ bool is_dumpdir; /* Is the member a dumpdir? */ bool skipped; /* The member contents is already read (for GNUTYPE_DUMPDIR) */ char *dumpdir; /* Contents of the dump directory */ + + /* Parent directory, if creating an archive. This is null if the + file is at the top level. */ + struct tar_stat_info *parent; + + /* Directory stream. If this is not null, it is in control of FD, + and should be closed instead of FD. */ + DIR *dirstream; + + /* File descriptor, if creating an archive, and if a directory or a + regular file or a contiguous file. + + It is zero if no file descriptor is available, either because it + was never needed or because it was open and then closed to + conserve on file descriptors. (Standard input is never used + here, so zero cannot be a valid file descriptor.) + + It is negative if it could not be reopened after it was closed. + Negate it to find out what errno was when the reopen failed. */ + int fd; }; union block diff --git a/src/transform.c b/src/transform.c index 03c06f6..c35133f 100644 --- a/src/transform.c +++ b/src/transform.c @@ -1,4 +1,4 @@ -/* This file is part of GNU tar. +/* This file is part of GNU tar. Copyright (C) 2006, 2007, 2008 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it @@ -34,8 +34,8 @@ enum replace_segm_type enum case_ctl_type { - ctl_stop, /* Stop case conversion */ - ctl_upcase_next,/* Turn the next character to uppercase */ + ctl_stop, /* Stop case conversion */ + ctl_upcase_next,/* Turn the next character to uppercase */ ctl_locase_next,/* Turn the next character to lowercase */ ctl_upcase, /* Turn the replacement to uppercase until ctl_stop */ ctl_locase /* Turn the replacement to lowercase until ctl_stop */ @@ -51,9 +51,9 @@ struct replace_segm { char *ptr; size_t size; - } literal; /* type == segm_literal */ + } literal; /* type == segm_literal */ size_t ref; /* type == segm_backref */ - enum case_ctl_type ctl; /* type == segm_case_ctl */ + enum case_ctl_type ctl; /* type == segm_case_ctl */ } v; }; @@ -75,7 +75,7 @@ int transform_flags = XFORM_ALL; static struct transform *transform_head, *transform_tail; static struct transform * -new_transform () +new_transform (void) { struct transform *p = xzalloc (sizeof *p); if (transform_tail) @@ -146,7 +146,7 @@ parse_xform_flags (int *pflags, int c) case 'R': *pflags &= ~XFORM_REGFILE; break; - + case 'h': *pflags |= XFORM_LINK; break; @@ -154,7 +154,7 @@ parse_xform_flags (int *pflags, int c) case 'H': *pflags &= ~XFORM_LINK; break; - + case 's': *pflags |= XFORM_SYMLINK; break; @@ -204,10 +204,10 @@ parse_transform_expr (const char *expr) *expr)); } return expr; - } + } USAGE_ERROR ((0, 0, _("Invalid transform expression"))); } - + delim = expr[1]; /* Scan regular expression */ @@ -258,14 +258,14 @@ parse_transform_expr (const char *expr) if (*p == ';') p++; - + /* Extract and compile regex */ str = xmalloc (i - 1); memcpy (str, expr + 2, i - 2); str[i - 2] = 0; rc = regcomp (&tf->regex, str, cflags); - + if (rc) { char errbuf[512]; @@ -275,7 +275,7 @@ parse_transform_expr (const char *expr) if (str[0] == '^' || str[strlen (str) - 1] == '$') tf->transform_type = transform_first; - + free (str); /* Extract and compile replacement expr */ @@ -289,7 +289,7 @@ parse_transform_expr (const char *expr) if (*cur == '\\') { size_t n; - + add_literal_segment (tf, beg, cur); switch (*++cur) { @@ -310,32 +310,32 @@ parse_transform_expr (const char *expr) add_char_segment (tf, '\a'); cur++; break; - + case 'b': add_char_segment (tf, '\b'); cur++; break; - + case 'f': add_char_segment (tf, '\f'); cur++; break; - + case 'n': add_char_segment (tf, '\n'); cur++; break; - + case 'r': add_char_segment (tf, '\r'); cur++; break; - + case 't': add_char_segment (tf, '\t'); cur++; break; - + case 'v': add_char_segment (tf, '\v'); cur++; @@ -345,39 +345,39 @@ parse_transform_expr (const char *expr) add_char_segment (tf, '&'); cur++; break; - + case 'L': /* Turn the replacement to lowercase until a `\U' or `\E' is found, */ add_case_ctl_segment (tf, ctl_locase); cur++; break; - + case 'l': /* Turn the next character to lowercase, */ add_case_ctl_segment (tf, ctl_locase_next); cur++; break; - + case 'U': /* Turn the replacement to uppercase until a `\L' or `\E' is found, */ add_case_ctl_segment (tf, ctl_upcase); cur++; break; - + case 'u': /* Turn the next character to uppercase, */ add_case_ctl_segment (tf, ctl_upcase_next); cur++; break; - + case 'E': /* Stop case conversion started by `\L' or `\U'. */ add_case_ctl_segment (tf, ctl_stop); cur++; break; - + default: /* Try to be nice */ { @@ -420,7 +420,7 @@ run_case_conv (enum case_ctl_type case_ctl, char *ptr, size_t size) static char *case_ctl_buffer; static size_t case_ctl_bufsize; char *p; - + if (case_ctl_bufsize < size) { case_ctl_bufsize = size; @@ -432,16 +432,16 @@ run_case_conv (enum case_ctl_type case_ctl, char *ptr, size_t size) case ctl_upcase_next: case_ctl_buffer[0] = toupper ((unsigned char) case_ctl_buffer[0]); break; - + case ctl_locase_next: case_ctl_buffer[0] = tolower ((unsigned char) case_ctl_buffer[0]); break; - + case ctl_upcase: for (p = case_ctl_buffer; p < case_ctl_buffer + size; p++) *p = toupper ((unsigned char) *p); break; - + case ctl_locase: for (p = case_ctl_buffer; p < case_ctl_buffer + size; p++) *p = tolower ((unsigned char) *p); @@ -457,7 +457,7 @@ run_case_conv (enum case_ctl_type case_ctl, char *ptr, size_t size) static struct obstack stk; static bool stk_init; -void +static void _single_transform_name_to_obstack (struct transform *tf, char *input) { regmatch_t *rmp; @@ -465,7 +465,7 @@ _single_transform_name_to_obstack (struct transform *tf, char *input) size_t nmatches = 0; enum case_ctl_type case_ctl = ctl_stop, /* Current case conversion op */ save_ctl = ctl_stop; /* Saved case_ctl for \u and \l */ - + /* Reset case conversion after a single-char operation */ #define CASE_CTL_RESET() if (case_ctl == ctl_upcase_next \ || case_ctl == ctl_locase_next) \ @@ -473,20 +473,20 @@ _single_transform_name_to_obstack (struct transform *tf, char *input) case_ctl = save_ctl; \ save_ctl = ctl_stop; \ } - + rmp = xmalloc ((tf->regex.re_nsub + 1) * sizeof (*rmp)); while (*input) { size_t disp; char *ptr; - + rc = regexec (&tf->regex, input, tf->regex.re_nsub + 1, rmp, 0); - + if (rc == 0) { struct replace_segm *segm; - + disp = rmp[0].rm_eo; if (rmp[0].rm_so) @@ -516,7 +516,7 @@ _single_transform_name_to_obstack (struct transform *tf, char *input) } obstack_grow (&stk, ptr, segm->v.literal.size); break; - + case segm_backref: /* Back-reference segment */ if (rmp[segm->v.ref].rm_so != -1 && rmp[segm->v.ref].rm_eo != -1) @@ -529,7 +529,7 @@ _single_transform_name_to_obstack (struct transform *tf, char *input) ptr = run_case_conv (case_ctl, ptr, size); CASE_CTL_RESET(); } - + obstack_grow (&stk, ptr, size); } break; @@ -549,7 +549,7 @@ _single_transform_name_to_obstack (struct transform *tf, char *input) break; } /*FALL THROUGH*/ - + case ctl_upcase: case ctl_locase: case ctl_stop: @@ -577,18 +577,18 @@ _single_transform_name_to_obstack (struct transform *tf, char *input) free (rmp); } -bool +static bool _transform_name_to_obstack (int flags, char *input, char **output) { struct transform *tf; bool alloced = false; - + if (!stk_init) { obstack_init (&stk); stk_init = true; } - + for (tf = transform_head; tf; tf = tf->next) { if (tf->flags & flags) @@ -601,7 +601,7 @@ _transform_name_to_obstack (int flags, char *input, char **output) *output = input; return alloced; } - + bool transform_name_fp (char **pinput, int flags, char *(*fun)(char *, void *), void *dat) diff --git a/src/unlink.c b/src/unlink.c index 2af6f99..b281636 100644 --- a/src/unlink.c +++ b/src/unlink.c @@ -1,4 +1,4 @@ -/* This file is part of GNU tar. +/* This file is part of GNU tar. Copyright (C) 2009 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it @@ -42,7 +42,7 @@ static struct deferred_unlink *dunlink_avail; size_t deferred_unlink_delay = 0; static struct deferred_unlink * -dunlink_alloc () +dunlink_alloc (void) { struct deferred_unlink *p; if (dunlink_avail) @@ -77,7 +77,7 @@ flush_deferred_unlinks (bool force) { if (p->is_dir) { - if (rmdir (p->file_name) != 0) + if (unlinkat (chdir_fd, p->file_name, AT_REMOVEDIR) != 0) { switch (errno) { @@ -101,7 +101,7 @@ flush_deferred_unlinks (bool force) } else { - if (unlink (p->file_name) != 0 && errno != ENOENT) + if (unlinkat (chdir_fd, p->file_name, 0) != 0 && errno != ENOENT) unlink_error (p->file_name); } dunlink_reclaim (p); @@ -116,7 +116,7 @@ flush_deferred_unlinks (bool force) { prev = p; p = next; - } + } } if (!dunlink_head) dunlink_tail = NULL; @@ -142,13 +142,13 @@ queue_deferred_unlink (const char *name, bool is_dir) if (dunlink_head && records_written > dunlink_head->records_written + deferred_unlink_delay) flush_deferred_unlinks (false); - + p = dunlink_alloc (); p->next = NULL; p->file_name = normalize_filename (name); p->is_dir = is_dir; p->records_written = records_written; - + if (dunlink_tail) dunlink_tail->next = p; else diff --git a/src/update.c b/src/update.c index b015175..69fa592 100644 --- a/src/update.c +++ b/src/update.c @@ -47,7 +47,7 @@ char *output_start; static void append_file (char *file_name) { - int handle = open (file_name, O_RDONLY | O_BINARY); + int handle = openat (chdir_fd, file_name, O_RDONLY | O_BINARY); struct stat stat_data; if (handle < 0) @@ -114,8 +114,8 @@ update_archive (void) while (!found_end) { - enum read_header status = read_header (¤t_header, - ¤t_stat_info, + enum read_header status = read_header (¤t_header, + ¤t_stat_info, read_header_auto); switch (status) @@ -138,28 +138,37 @@ update_archive (void) struct stat s; chdir_do (name->change_dir); - if (deref_stat (dereference_option, - current_stat_info.file_name, &s) == 0) + if (deref_stat (current_stat_info.file_name, &s) == 0) { if (S_ISDIR (s.st_mode)) { char *p, *dirp; - dirp = savedir (name->name); - if (!dirp) + DIR *stream; + int fd = openat (chdir_fd, name->name, + open_read_flags | O_DIRECTORY); + if (fd < 0) + open_error (name->name); + else if (! ((stream = fdopendir (fd)) + && (dirp = streamsavedir (stream)))) savedir_error (name->name); else { namebuf_t nbuf = namebuf_create (name->name); - + for (p = dirp; *p; p += strlen (p) + 1) addname (namebuf_name (nbuf, p), 0, false, NULL); - + namebuf_free (nbuf); free (dirp); - + remname (name); } + + if (stream + ? closedir (stream) != 0 + : 0 <= fd && close (fd) != 0) + savedir_error (name->name); } else if (tar_timespec_cmp (get_stat_mtime (&s), current_stat_info.mtime) @@ -167,7 +176,7 @@ update_archive (void) remname (name); } } - + skip_member (); break; } @@ -224,11 +233,12 @@ update_archive (void) if (subcommand_option == CAT_SUBCOMMAND) append_file (file_name); else - dump_file (file_name, 1, (dev_t) 0); + dump_file (0, file_name, file_name); } } write_eot (); close_archive (); + finish_deferred_unlinks (); names_notfound (); } diff --git a/src/warning.c b/src/warning.c index a9cbccb..4374a88 100644 --- a/src/warning.c +++ b/src/warning.c @@ -76,7 +76,7 @@ set_warning_option (const char *arg) { int negate = 0; int option; - + if (strcmp (arg, "none") == 0) { warning_option = 0; @@ -88,11 +88,10 @@ set_warning_option (const char *arg) arg += 3; } - option = XARGMATCH ("--warning", arg, + option = XARGMATCH ("--warning", arg, warning_args, warning_types); if (negate) warning_option &= ~option; else warning_option |= option; } - diff --git a/src/xheader.c b/src/xheader.c index b5c9869..2284e97 100644 --- a/src/xheader.c +++ b/src/xheader.c @@ -26,6 +26,7 @@ #include "common.h" +static void xheader_init (struct xheader *xhdr); static bool xheader_protected_pattern_p (char const *pattern); static bool xheader_protected_keyword_p (char const *keyword); static void xheader_set_single_keyword (char *) __attribute__ ((noreturn)); @@ -452,7 +453,7 @@ xheader_write_global (struct xheader *xhdr) if (xhdr->stk) { char *name; - + xheader_finish (xhdr); xheader_write (XGLTYPE, name = xheader_ghdr_name (), time (NULL), xhdr); free (name); @@ -661,7 +662,7 @@ xheader_decode_global (struct xheader *xhdr) } } -void +static void xheader_init (struct xheader *xhdr) { if (!xhdr->stk) @@ -708,7 +709,7 @@ xheader_read (struct xheader *xhdr, union block *p, size_t size) if (!p) FATAL_ERROR ((0, 0, _("Unexpected EOF in archive"))); - + memcpy (&xhdr->buffer[j], p->buffer, len); set_next_block_after (p); @@ -1307,7 +1308,7 @@ sparse_numbytes_decoder (struct tar_stat_info *st, size_t size __attribute__((unused))) { uintmax_t u; - if (decode_num (&u, arg, SIZE_MAX, keyword)) + if (decode_num (&u, arg, TYPE_MAXIMUM (off_t), keyword)) { if (st->sparse_map_avail < st->sparse_map_size) st->sparse_map[st->sparse_map_avail++].numbytes = u; @@ -1355,7 +1356,7 @@ sparse_map_decoder (struct tar_stat_info *st, e.numbytes = u; if (!(u == e.numbytes && errno != ERANGE)) { - out_of_range_header (keyword, arg, 0, TYPE_MAXIMUM (size_t)); + out_of_range_header (keyword, arg, 0, TYPE_MAXIMUM (off_t)); return; } if (st->sparse_map_avail < st->sparse_map_size) diff --git a/tests/Makefile.am b/tests/Makefile.am index e9b753c..d29563a 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,6 +1,6 @@ # Makefile for GNU tar regression tests. -# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2003, 2004, 2005, +# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2009 Free Software Foundation, Inc. # François Pinard , 1988. @@ -66,6 +66,7 @@ TESTSUITE_AT = \ exclude03.at\ exclude04.at\ exclude05.at\ + exclude06.at\ extrac01.at\ extrac02.at\ extrac03.at\ @@ -74,6 +75,13 @@ TESTSUITE_AT = \ extrac06.at\ extrac07.at\ extrac08.at\ + extrac09.at\ + extrac10.at\ + extrac11.at\ + extrac12.at\ + extrac13.at\ + extrac14.at\ + extrac15.at\ filerem01.at\ filerem02.at\ gzip.at\ @@ -89,11 +97,16 @@ TESTSUITE_AT = \ ignfail.at\ label01.at\ label02.at\ + label03.at\ + label04.at\ + label05.at\ link01.at\ link02.at\ link03.at\ + link04.at\ listed01.at\ listed02.at\ + listed03.at\ long01.at\ longv7.at\ lustar01.at\ @@ -106,6 +119,7 @@ TESTSUITE_AT = \ multiv05.at\ multiv06.at\ multiv07.at\ + multiv08.at\ old.at\ options.at\ options02.at\ @@ -118,11 +132,13 @@ TESTSUITE_AT = \ rename05.at\ remfiles01.at\ remfiles02.at\ + remfiles03.at\ same-order01.at\ same-order02.at\ shortfile.at\ shortupd.at\ shortrec.at\ + sigpipe.at\ sparse01.at\ sparse02.at\ sparse03.at\ @@ -140,6 +156,7 @@ TESTSUITE_AT = \ verbose.at\ version.at\ xform-h.at\ + xform01.at\ star/gtarfail.at\ star/gtarfail2.at\ star/multi-fail.at\ @@ -184,4 +201,4 @@ genfile_SOURCES = genfile.c argcv.c argcv.h localedir = $(datadir)/locale INCLUDES = -I$(top_srcdir)/gnu -I../gnu -I$(top_srcdir)/gnu -I$(top_srcdir)/lib AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -LDADD = ../gnu/libgnu.a $(LIBINTL) $(LIB_CLOCK_GETTIME) +LDADD = ../gnu/libgnu.a $(LIBINTL) $(LIB_CLOCK_GETTIME) $(LIB_EACCESS) diff --git a/tests/Makefile.in b/tests/Makefile.in index 5def22e..f8c8030 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -17,7 +17,7 @@ # Makefile for GNU tar regression tests. -# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2003, 2004, 2005, +# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2009 Free Software Foundation, Inc. # François Pinard , 1988. @@ -48,11 +48,11 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/alloca.m4 $(top_srcdir)/m4/argmatch.m4 \ - $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/backupfile.m4 \ - $(top_srcdir)/m4/bison.m4 $(top_srcdir)/m4/btowc.m4 \ - $(top_srcdir)/m4/canonicalize.m4 \ + $(top_srcdir)/m4/argp.m4 $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/backupfile.m4 $(top_srcdir)/m4/bison.m4 \ + $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/canonicalize.m4 \ $(top_srcdir)/m4/chdir-long.m4 $(top_srcdir)/m4/chown.m4 \ - $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/cloexec.m4 \ $(top_srcdir)/m4/close-stream.m4 $(top_srcdir)/m4/close.m4 \ $(top_srcdir)/m4/closeout.m4 $(top_srcdir)/m4/codeset.m4 \ $(top_srcdir)/m4/d-ino.m4 $(top_srcdir)/m4/dirent-safer.m4 \ @@ -65,17 +65,17 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/fchdir.m4 $(top_srcdir)/m4/fclose.m4 \ $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopendir.m4 \ - $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/float_h.m4 \ - $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fpending.m4 \ - $(top_srcdir)/m4/fseeko.m4 $(top_srcdir)/m4/ftruncate.m4 \ + $(top_srcdir)/m4/fileblocks.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/float_h.m4 $(top_srcdir)/m4/fnmatch.m4 \ + $(top_srcdir)/m4/fpending.m4 $(top_srcdir)/m4/fseeko.m4 \ + $(top_srcdir)/m4/futimens.m4 \ $(top_srcdir)/m4/getcwd-abort-bug.m4 \ $(top_srcdir)/m4/getcwd-path-max.m4 $(top_srcdir)/m4/getcwd.m4 \ - $(top_srcdir)/m4/getdate.m4 $(top_srcdir)/m4/getdelim.m4 \ - $(top_srcdir)/m4/getdtablesize.m4 $(top_srcdir)/m4/getline.m4 \ - $(top_srcdir)/m4/getopt.m4 $(top_srcdir)/m4/getpagesize.m4 \ - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gettime.m4 \ - $(top_srcdir)/m4/gettimeofday.m4 $(top_srcdir)/m4/glibc21.m4 \ - $(top_srcdir)/m4/gnulib-common.m4 \ + $(top_srcdir)/m4/getdelim.m4 $(top_srcdir)/m4/getdtablesize.m4 \ + $(top_srcdir)/m4/getline.m4 $(top_srcdir)/m4/getopt.m4 \ + $(top_srcdir)/m4/getpagesize.m4 $(top_srcdir)/m4/gettext.m4 \ + $(top_srcdir)/m4/gettime.m4 $(top_srcdir)/m4/gettimeofday.m4 \ + $(top_srcdir)/m4/glibc21.m4 $(top_srcdir)/m4/gnulib-common.m4 \ $(top_srcdir)/m4/gnulib-comp.m4 $(top_srcdir)/m4/hash.m4 \ $(top_srcdir)/m4/human.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inline.m4 \ @@ -85,54 +85,61 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/lchown.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/localcharset.m4 $(top_srcdir)/m4/locale-fr.m4 \ - $(top_srcdir)/m4/locale-ja.m4 $(top_srcdir)/m4/locale-zh.m4 \ - $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/lseek.m4 \ - $(top_srcdir)/m4/lstat.m4 $(top_srcdir)/m4/malloc.m4 \ - $(top_srcdir)/m4/malloca.m4 $(top_srcdir)/m4/mbchar.m4 \ - $(top_srcdir)/m4/mbiter.m4 $(top_srcdir)/m4/mbrtowc.m4 \ - $(top_srcdir)/m4/mbsinit.m4 $(top_srcdir)/m4/mbsrtowcs.m4 \ - $(top_srcdir)/m4/mbstate_t.m4 $(top_srcdir)/m4/memchr.m4 \ - $(top_srcdir)/m4/mempcpy.m4 $(top_srcdir)/m4/memrchr.m4 \ - $(top_srcdir)/m4/mkdir.m4 $(top_srcdir)/m4/mkdtemp.m4 \ + $(top_srcdir)/m4/libunistring-base.m4 \ + $(top_srcdir)/m4/link-follow.m4 $(top_srcdir)/m4/link.m4 \ + $(top_srcdir)/m4/linkat.m4 $(top_srcdir)/m4/localcharset.m4 \ + $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ + $(top_srcdir)/m4/locale-zh.m4 $(top_srcdir)/m4/longlong.m4 \ + $(top_srcdir)/m4/lseek.m4 $(top_srcdir)/m4/lstat.m4 \ + $(top_srcdir)/m4/malloc.m4 $(top_srcdir)/m4/malloca.m4 \ + $(top_srcdir)/m4/mbchar.m4 $(top_srcdir)/m4/mbiter.m4 \ + $(top_srcdir)/m4/mbrtowc.m4 $(top_srcdir)/m4/mbsinit.m4 \ + $(top_srcdir)/m4/mbsrtowcs.m4 $(top_srcdir)/m4/mbstate_t.m4 \ + $(top_srcdir)/m4/memchr.m4 $(top_srcdir)/m4/mempcpy.m4 \ + $(top_srcdir)/m4/memrchr.m4 $(top_srcdir)/m4/mkdir.m4 \ + $(top_srcdir)/m4/mkdtemp.m4 $(top_srcdir)/m4/mkfifo.m4 \ + $(top_srcdir)/m4/mkfifoat.m4 $(top_srcdir)/m4/mknod.m4 \ $(top_srcdir)/m4/mktime.m4 $(top_srcdir)/m4/mmap-anon.m4 \ $(top_srcdir)/m4/mode_t.m4 $(top_srcdir)/m4/modechange.m4 \ $(top_srcdir)/m4/multiarch.m4 $(top_srcdir)/m4/nl_langinfo.m4 \ $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/pathmax.m4 \ - $(top_srcdir)/m4/paxutils.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/priv-set.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/quote.m4 \ - $(top_srcdir)/m4/quotearg.m4 $(top_srcdir)/m4/rawmemchr.m4 \ - $(top_srcdir)/m4/readlink.m4 $(top_srcdir)/m4/realloc.m4 \ - $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rmdir.m4 \ + $(top_srcdir)/m4/openat.m4 $(top_srcdir)/m4/parse-datetime.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/paxutils.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/priv-set.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/quote.m4 $(top_srcdir)/m4/quotearg.m4 \ + $(top_srcdir)/m4/rawmemchr.m4 $(top_srcdir)/m4/readlink.m4 \ + $(top_srcdir)/m4/readlinkat.m4 $(top_srcdir)/m4/realloc.m4 \ + $(top_srcdir)/m4/regex.m4 $(top_srcdir)/m4/rename.m4 \ + $(top_srcdir)/m4/renameat.m4 $(top_srcdir)/m4/rmdir.m4 \ $(top_srcdir)/m4/rmt.m4 $(top_srcdir)/m4/rpmatch.m4 \ $(top_srcdir)/m4/rtapelib.m4 $(top_srcdir)/m4/safe-read.m4 \ - $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/same.m4 \ - $(top_srcdir)/m4/save-cwd.m4 $(top_srcdir)/m4/savedir.m4 \ - $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/size_max.m4 \ - $(top_srcdir)/m4/sleep.m4 $(top_srcdir)/m4/snprintf.m4 \ - $(top_srcdir)/m4/ssize_t.m4 $(top_srcdir)/m4/stat-time.m4 \ - $(top_srcdir)/m4/stat.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ - $(top_srcdir)/m4/stpcpy.m4 $(top_srcdir)/m4/strcase.m4 \ - $(top_srcdir)/m4/strchrnul.m4 $(top_srcdir)/m4/strdup.m4 \ - $(top_srcdir)/m4/strerror.m4 $(top_srcdir)/m4/string_h.m4 \ - $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strndup.m4 \ - $(top_srcdir)/m4/strnlen.m4 $(top_srcdir)/m4/strtoimax.m4 \ - $(top_srcdir)/m4/strtol.m4 $(top_srcdir)/m4/strtoll.m4 \ - $(top_srcdir)/m4/strtoul.m4 $(top_srcdir)/m4/strtoull.m4 \ - $(top_srcdir)/m4/strtoumax.m4 $(top_srcdir)/m4/sys_stat_h.m4 \ - $(top_srcdir)/m4/sys_time_h.m4 $(top_srcdir)/m4/sysexits.m4 \ - $(top_srcdir)/m4/system.m4 $(top_srcdir)/m4/tempname.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/unistd-safer.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlink.m4 $(top_srcdir)/m4/unlinkdir.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/utimbuf.m4 \ - $(top_srcdir)/m4/utimens.m4 $(top_srcdir)/m4/utimes.m4 \ + $(top_srcdir)/m4/safe-write.m4 $(top_srcdir)/m4/save-cwd.m4 \ + $(top_srcdir)/m4/savedir.m4 $(top_srcdir)/m4/setenv.m4 \ + $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ + $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/ssize_t.m4 \ + $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ + $(top_srcdir)/m4/stdarg.m4 $(top_srcdir)/m4/stdbool.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ + $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strchrnul.m4 \ + $(top_srcdir)/m4/strdup.m4 $(top_srcdir)/m4/strerror.m4 \ + $(top_srcdir)/m4/string_h.m4 $(top_srcdir)/m4/strings_h.m4 \ + $(top_srcdir)/m4/strndup.m4 $(top_srcdir)/m4/strnlen.m4 \ + $(top_srcdir)/m4/strtoimax.m4 $(top_srcdir)/m4/strtol.m4 \ + $(top_srcdir)/m4/strtoll.m4 $(top_srcdir)/m4/strtoul.m4 \ + $(top_srcdir)/m4/strtoull.m4 $(top_srcdir)/m4/strtoumax.m4 \ + $(top_srcdir)/m4/symlink.m4 $(top_srcdir)/m4/symlinkat.m4 \ + $(top_srcdir)/m4/sys_stat_h.m4 $(top_srcdir)/m4/sys_time_h.m4 \ + $(top_srcdir)/m4/sysexits.m4 $(top_srcdir)/m4/system.m4 \ + $(top_srcdir)/m4/tempname.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/unistd-safer.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlink.m4 \ + $(top_srcdir)/m4/unlinkdir.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/utimbuf.m4 $(top_srcdir)/m4/utimens.m4 \ + $(top_srcdir)/m4/utimensat.m4 $(top_srcdir)/m4/utimes.m4 \ $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/vasprintf.m4 \ $(top_srcdir)/m4/version-etc.m4 $(top_srcdir)/m4/vsnprintf.m4 \ $(top_srcdir)/m4/warn-on-use.m4 $(top_srcdir)/m4/wchar_h.m4 \ @@ -186,6 +193,7 @@ ALLOCA_H = @ALLOCA_H@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ +ASM_SYMBOL_PREFIX = @ASM_SYMBOL_PREFIX@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOM4TE = @AUTOM4TE@ @@ -283,6 +291,7 @@ GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ +GNULIB_GRANTPT = @GNULIB_GRANTPT@ GNULIB_IMAXABS = @GNULIB_IMAXABS@ GNULIB_IMAXDIV = @GNULIB_IMAXDIV@ GNULIB_LCHMOD = @GNULIB_LCHMOD@ @@ -338,10 +347,12 @@ GNULIB_POPEN = @GNULIB_POPEN@ GNULIB_PREAD = @GNULIB_PREAD@ GNULIB_PRINTF = @GNULIB_PRINTF@ GNULIB_PRINTF_POSIX = @GNULIB_PRINTF_POSIX@ +GNULIB_PTSNAME = @GNULIB_PTSNAME@ GNULIB_PUTC = @GNULIB_PUTC@ GNULIB_PUTCHAR = @GNULIB_PUTCHAR@ GNULIB_PUTENV = @GNULIB_PUTENV@ GNULIB_PUTS = @GNULIB_PUTS@ +GNULIB_PWRITE = @GNULIB_PWRITE@ GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ GNULIB_RAWMEMCHR = @GNULIB_RAWMEMCHR@ GNULIB_READLINK = @GNULIB_READLINK@ @@ -366,6 +377,7 @@ GNULIB_STRCASESTR = @GNULIB_STRCASESTR@ GNULIB_STRCHRNUL = @GNULIB_STRCHRNUL@ GNULIB_STRDUP = @GNULIB_STRDUP@ GNULIB_STRERROR = @GNULIB_STRERROR@ +GNULIB_STRNCAT = @GNULIB_STRNCAT@ GNULIB_STRNDUP = @GNULIB_STRNDUP@ GNULIB_STRNLEN = @GNULIB_STRNLEN@ GNULIB_STRPBRK = @GNULIB_STRPBRK@ @@ -382,11 +394,16 @@ GNULIB_STRTOUMAX = @GNULIB_STRTOUMAX@ GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@ GNULIB_SYMLINK = @GNULIB_SYMLINK@ GNULIB_SYMLINKAT = @GNULIB_SYMLINKAT@ +GNULIB_SYSTEM_POSIX = @GNULIB_SYSTEM_POSIX@ GNULIB_TIMEGM = @GNULIB_TIMEGM@ +GNULIB_TIME_R = @GNULIB_TIME_R@ +GNULIB_TMPFILE = @GNULIB_TMPFILE@ +GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@ GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ GNULIB_UNLINK = @GNULIB_UNLINK@ GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ +GNULIB_UNLOCKPT = @GNULIB_UNLOCKPT@ GNULIB_UNSETENV = @GNULIB_UNSETENV@ GNULIB_USLEEP = @GNULIB_USLEEP@ GNULIB_UTIMENSAT = @GNULIB_UTIMENSAT@ @@ -404,20 +421,23 @@ GNULIB_WCSRTOMBS = @GNULIB_WCSRTOMBS@ GNULIB_WCTOB = @GNULIB_WCTOB@ GNULIB_WCWIDTH = @GNULIB_WCWIDTH@ GNULIB_WRITE = @GNULIB_WRITE@ +GNULIB__EXIT = @GNULIB__EXIT@ GREP = @GREP@ HAVE_ALPHASORT = @HAVE_ALPHASORT@ HAVE_ATOLL = @HAVE_ATOLL@ HAVE_BTOWC = @HAVE_BTOWC@ -HAVE_CALLOC_POSIX = @HAVE_CALLOC_POSIX@ HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@ HAVE_CHOWN = @HAVE_CHOWN@ HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@ HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@ +HAVE_DECL_FDOPENDIR = @HAVE_DECL_FDOPENDIR@ HAVE_DECL_FPURGE = @HAVE_DECL_FPURGE@ HAVE_DECL_GETDELIM = @HAVE_DECL_GETDELIM@ HAVE_DECL_GETLINE = @HAVE_DECL_GETLINE@ HAVE_DECL_GETLOADAVG = @HAVE_DECL_GETLOADAVG@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ +HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ +HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ @@ -425,7 +445,6 @@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ HAVE_DECL_SNPRINTF = @HAVE_DECL_SNPRINTF@ HAVE_DECL_STRDUP = @HAVE_DECL_STRDUP@ -HAVE_DECL_STRERROR = @HAVE_DECL_STRERROR@ HAVE_DECL_STRNCASECMP = @HAVE_DECL_STRNCASECMP@ HAVE_DECL_STRNDUP = @HAVE_DECL_STRNDUP@ HAVE_DECL_STRNLEN = @HAVE_DECL_STRNLEN@ @@ -441,12 +460,15 @@ HAVE_DUP2 = @HAVE_DUP2@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_FACCESSAT = @HAVE_FACCESSAT@ +HAVE_FCHDIR = @HAVE_FCHDIR@ HAVE_FCHMODAT = @HAVE_FCHMODAT@ HAVE_FCHOWNAT = @HAVE_FCHOWNAT@ HAVE_FCNTL = @HAVE_FCNTL@ HAVE_FDOPENDIR = @HAVE_FDOPENDIR@ +HAVE_FSEEKO = @HAVE_FSEEKO@ HAVE_FSTATAT = @HAVE_FSTATAT@ HAVE_FSYNC = @HAVE_FSYNC@ +HAVE_FTELLO = @HAVE_FTELLO@ HAVE_FTRUNCATE = @HAVE_FTRUNCATE@ HAVE_FUTIMENS = @HAVE_FUTIMENS@ HAVE_GETDOMAINNAME = @HAVE_GETDOMAINNAME@ @@ -458,25 +480,29 @@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ -HAVE_GETUSERSHELL = @HAVE_GETUSERSHELL@ +HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ +HAVE_ISWBLANK = @HAVE_ISWBLANK@ HAVE_ISWCNTRL = @HAVE_ISWCNTRL@ HAVE_LANGINFO_CODESET = @HAVE_LANGINFO_CODESET@ HAVE_LANGINFO_ERA = @HAVE_LANGINFO_ERA@ HAVE_LANGINFO_H = @HAVE_LANGINFO_H@ +HAVE_LANGINFO_T_FMT_AMPM = @HAVE_LANGINFO_T_FMT_AMPM@ +HAVE_LANGINFO_YESEXPR = @HAVE_LANGINFO_YESEXPR@ HAVE_LCHMOD = @HAVE_LCHMOD@ HAVE_LCHOWN = @HAVE_LCHOWN@ HAVE_LINK = @HAVE_LINK@ HAVE_LINKAT = @HAVE_LINKAT@ +HAVE_LOCALTIME_R = @HAVE_LOCALTIME_R@ HAVE_LONG_LONG_INT = @HAVE_LONG_LONG_INT@ HAVE_LSTAT = @HAVE_LSTAT@ -HAVE_MALLOC_POSIX = @HAVE_MALLOC_POSIX@ HAVE_MBRLEN = @HAVE_MBRLEN@ HAVE_MBRTOWC = @HAVE_MBRTOWC@ HAVE_MBSINIT = @HAVE_MBSINIT@ HAVE_MBSLEN = @HAVE_MBSLEN@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ +HAVE_MEMCHR = @HAVE_MEMCHR@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ @@ -486,18 +512,21 @@ HAVE_MKNOD = @HAVE_MKNOD@ HAVE_MKNODAT = @HAVE_MKNODAT@ HAVE_MKOSTEMP = @HAVE_MKOSTEMP@ HAVE_MKOSTEMPS = @HAVE_MKOSTEMPS@ +HAVE_MKSTEMP = @HAVE_MKSTEMP@ HAVE_MKSTEMPS = @HAVE_MKSTEMPS@ +HAVE_NANOSLEEP = @HAVE_NANOSLEEP@ HAVE_NL_LANGINFO = @HAVE_NL_LANGINFO@ HAVE_OPENAT = @HAVE_OPENAT@ HAVE_OS_H = @HAVE_OS_H@ HAVE_PIPE2 = @HAVE_PIPE2@ HAVE_PREAD = @HAVE_PREAD@ +HAVE_PTSNAME = @HAVE_PTSNAME@ +HAVE_PWRITE = @HAVE_PWRITE@ HAVE_RANDOM_H = @HAVE_RANDOM_H@ HAVE_RANDOM_R = @HAVE_RANDOM_R@ HAVE_RAWMEMCHR = @HAVE_RAWMEMCHR@ HAVE_READLINK = @HAVE_READLINK@ HAVE_READLINKAT = @HAVE_READLINKAT@ -HAVE_REALLOC_POSIX = @HAVE_REALLOC_POSIX@ HAVE_REALPATH = @HAVE_REALPATH@ HAVE_RENAMEAT = @HAVE_RENAMEAT@ HAVE_RPMATCH = @HAVE_RPMATCH@ @@ -514,6 +543,7 @@ HAVE_STRCASECMP = @HAVE_STRCASECMP@ HAVE_STRCASESTR = @HAVE_STRCASESTR@ HAVE_STRCHRNUL = @HAVE_STRCHRNUL@ HAVE_STRPBRK = @HAVE_STRPBRK@ +HAVE_STRPTIME = @HAVE_STRPTIME@ HAVE_STRSEP = @HAVE_STRSEP@ HAVE_STRTOD = @HAVE_STRTOD@ HAVE_STRTOLL = @HAVE_STRTOLL@ @@ -530,8 +560,11 @@ HAVE_SYS_LOADAVG_H = @HAVE_SYS_LOADAVG_H@ HAVE_SYS_PARAM_H = @HAVE_SYS_PARAM_H@ HAVE_SYS_TIME_H = @HAVE_SYS_TIME_H@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ +HAVE_TIMEGM = @HAVE_TIMEGM@ +HAVE_TTYNAME_R = @HAVE_TTYNAME_R@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ +HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_UNSETENV = @HAVE_UNSETENV@ HAVE_UNSIGNED_LONG_LONG_INT = @HAVE_UNSIGNED_LONG_LONG_INT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -546,6 +579,7 @@ HAVE_WCSRTOMBS = @HAVE_WCSRTOMBS@ HAVE_WCTYPE_H = @HAVE_WCTYPE_H@ HAVE_WINT_T = @HAVE_WINT_T@ HAVE__BOOL = @HAVE__BOOL@ +HAVE__EXIT = @HAVE__EXIT@ INCLUDE_NEXT = @INCLUDE_NEXT@ INCLUDE_NEXT_AS_FIRST_DIRECTIVE = @INCLUDE_NEXT_AS_FIRST_DIRECTIVE@ INSTALL = @INSTALL@ @@ -564,6 +598,8 @@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ +LIBUNISTRING_UNITYPES_H = @LIBUNISTRING_UNITYPES_H@ +LIBUNISTRING_UNIWIDTH_H = @LIBUNISTRING_UNIWIDTH_H@ LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@ LIB_SETSOCKOPT = @LIB_SETSOCKOPT@ LOCALCHARSET_TESTS_ENVIRONMENT = @LOCALCHARSET_TESTS_ENVIRONMENT@ @@ -630,21 +666,24 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ POSUB = @POSUB@ +PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PRI_MACROS_BROKEN = @PRI_MACROS_BROKEN@ +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ PU_RMT_PROG = @PU_RMT_PROG@ RANLIB = @RANLIB@ REPLACE_BTOWC = @REPLACE_BTOWC@ +REPLACE_CALLOC = @REPLACE_CALLOC@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ REPLACE_CLOSEDIR = @REPLACE_CLOSEDIR@ +REPLACE_DIRFD = @REPLACE_DIRFD@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ -REPLACE_FCHDIR = @REPLACE_FCHDIR@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ @@ -667,6 +706,7 @@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ +REPLACE_ISWBLANK = @REPLACE_ISWBLANK@ REPLACE_ISWCNTRL = @REPLACE_ISWCNTRL@ REPLACE_LCHOWN = @REPLACE_LCHOWN@ REPLACE_LINK = @REPLACE_LINK@ @@ -674,6 +714,7 @@ REPLACE_LINKAT = @REPLACE_LINKAT@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ +REPLACE_MALLOC = @REPLACE_MALLOC@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ @@ -699,7 +740,9 @@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PUTENV = @REPLACE_PUTENV@ +REPLACE_PWRITE = @REPLACE_PWRITE@ REPLACE_READLINK = @REPLACE_READLINK@ +REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -711,17 +754,21 @@ REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRDUP = @REPLACE_STRDUP@ REPLACE_STRERROR = @REPLACE_STRERROR@ +REPLACE_STRNCAT = @REPLACE_STRNCAT@ REPLACE_STRNDUP = @REPLACE_STRNDUP@ -REPLACE_STRPTIME = @REPLACE_STRPTIME@ +REPLACE_STRNLEN = @REPLACE_STRNLEN@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@ REPLACE_STRSTR = @REPLACE_STRSTR@ REPLACE_STRTOD = @REPLACE_STRTOD@ REPLACE_STRTOK_R = @REPLACE_STRTOK_R@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TMPFILE = @REPLACE_TMPFILE@ +REPLACE_TTYNAME_R = @REPLACE_TTYNAME_R@ REPLACE_UNLINK = @REPLACE_UNLINK@ REPLACE_UNLINKAT = @REPLACE_UNLINKAT@ REPLACE_UNSETENV = @REPLACE_UNSETENV@ @@ -791,6 +838,7 @@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ +gltests_WITNESS = @gltests_WITNESS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -845,6 +893,7 @@ TESTSUITE_AT = \ exclude03.at\ exclude04.at\ exclude05.at\ + exclude06.at\ extrac01.at\ extrac02.at\ extrac03.at\ @@ -853,6 +902,13 @@ TESTSUITE_AT = \ extrac06.at\ extrac07.at\ extrac08.at\ + extrac09.at\ + extrac10.at\ + extrac11.at\ + extrac12.at\ + extrac13.at\ + extrac14.at\ + extrac15.at\ filerem01.at\ filerem02.at\ gzip.at\ @@ -868,11 +924,16 @@ TESTSUITE_AT = \ ignfail.at\ label01.at\ label02.at\ + label03.at\ + label04.at\ + label05.at\ link01.at\ link02.at\ link03.at\ + link04.at\ listed01.at\ listed02.at\ + listed03.at\ long01.at\ longv7.at\ lustar01.at\ @@ -885,6 +946,7 @@ TESTSUITE_AT = \ multiv05.at\ multiv06.at\ multiv07.at\ + multiv08.at\ old.at\ options.at\ options02.at\ @@ -897,11 +959,13 @@ TESTSUITE_AT = \ rename05.at\ remfiles01.at\ remfiles02.at\ + remfiles03.at\ same-order01.at\ same-order02.at\ shortfile.at\ shortupd.at\ shortrec.at\ + sigpipe.at\ sparse01.at\ sparse02.at\ sparse03.at\ @@ -919,6 +983,7 @@ TESTSUITE_AT = \ verbose.at\ version.at\ xform-h.at\ + xform01.at\ star/gtarfail.at\ star/gtarfail2.at\ star/multi-fail.at\ @@ -931,7 +996,7 @@ AUTOTEST = $(AUTOM4TE) --language=autotest genfile_SOURCES = genfile.c argcv.c argcv.h INCLUDES = -I$(top_srcdir)/gnu -I../gnu -I$(top_srcdir)/gnu -I$(top_srcdir)/lib AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -LDADD = ../gnu/libgnu.a $(LIBINTL) $(LIB_CLOCK_GETTIME) +LDADD = ../gnu/libgnu.a $(LIBINTL) $(LIB_CLOCK_GETTIME) $(LIB_EACCESS) all: all-am .SUFFIXES: diff --git a/tests/append01.at b/tests/append01.at index 18348e1..2dc2108 100644 --- a/tests/append01.at +++ b/tests/append01.at @@ -21,11 +21,11 @@ # When decoding a header tar was assigning 0 to oldgnu_header.isextended, # which destroyed name prefix. When updating archive, modified prefix # could have been written to disk thus producing invalid archive member. -# Reported by Adye, TJ (Tim), +# Reported by Adye, TJ (Tim), # References: # <7231C15EAC2F164CA6DC326D97493C8B36C25D@exchange35.fed.cclrc.ac.uk> # http://lists.gnu.org/archive/html/bug-tar/2005-02/msg00032.html - + AT_SETUP([appending files with long names]) AT_KEYWORDS([append append01]) @@ -45,4 +45,3 @@ PREFIX/file2 [],[],[],[oldgnu, ustar, posix, gnu]) AT_CLEANUP - diff --git a/tests/append02.at b/tests/append02.at index 7b8e07d..869f8a5 100644 --- a/tests/append02.at +++ b/tests/append02.at @@ -20,7 +20,7 @@ # Using tar 1.15.x the following equivalent command sets: # -# 1. tar cf archive file1 file2 +# 1. tar cf archive file1 file2 # and # 2. tar cfT archive /dev/null # tar rf archive file1 @@ -62,7 +62,7 @@ genfile --file file2 MTIME="--mtime=@0" # For PAX archives, we need to make sure extended header names are -# reproducible and that their contents won't change with time +# reproducible and that their contents won't change with time if test $[]TEST_TAR_FORMAT = posix; then TAR_OPTIONS="$TAR_OPTIONS --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=mtime,delete=atime,delete=ctime" fi diff --git a/tests/atlocal.in b/tests/atlocal.in index 5eaaab6..12591e3 100644 --- a/tests/atlocal.in +++ b/tests/atlocal.in @@ -16,17 +16,17 @@ fi STAR_DATA_URL=ftp://ftp.berlios.de/pub/star/testscripts if test -z "$STAR_TESTSCRIPTS"; then STAR_TESTSCRIPTS=$TEST_DATA_DIR -fi +fi # tarball_prereq file sum dir url tarball_prereq() { - if test -d "$3"; then + if test -d "$3"; then if test -r $3/$1; then : elif test -n "$FULL_TEST"; then wget -q --directory-prefix=$3 $4/$1 fi - fi + fi echo "$2 $3/$1" | md5sum --status --check - >/dev/null 2>&1 } @@ -34,4 +34,3 @@ decho() { echo $* echo >&2 $* } - diff --git a/tests/backup01.at b/tests/backup01.at index 538dd3d..83d1bea 100644 --- a/tests/backup01.at +++ b/tests/backup01.at @@ -37,7 +37,7 @@ AT_TAR_CHECK([ mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ], [0], [dir1/ @@ -46,4 +46,4 @@ Renaming `dir1/file1' to `dir1/file1~' dir2/ ]) -AT_CLEANUP \ No newline at end of file +AT_CLEANUP diff --git a/tests/chtype.at b/tests/chtype.at index 9b806c0..1ba86b3 100644 --- a/tests/chtype.at +++ b/tests/chtype.at @@ -51,9 +51,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort ], [0], diff --git a/tests/comprec.at b/tests/comprec.at index cd56a20..f2d0141 100644 --- a/tests/comprec.at +++ b/tests/comprec.at @@ -29,7 +29,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ], [0], diff --git a/tests/delete03.at b/tests/delete03.at index d2823b7..70fa3a9 100644 --- a/tests/delete03.at +++ b/tests/delete03.at @@ -31,8 +31,8 @@ for i in 1 2 3 4 5 6 7 8 9 do touch $prefix$i done tar -cf archive ./$prefix* && - tar --delete -f archive ./${prefix}5 && - tar -tf archive + tar --delete -f archive ./${prefix}5 && + tar -tf archive ], [0], [./PREFIX[]1 diff --git a/tests/exclude.at b/tests/exclude.at index 689aa11..7fe92a4 100644 --- a/tests/exclude.at +++ b/tests/exclude.at @@ -36,7 +36,7 @@ mkdir dir/rock echo "Signature: 8a477f597d28d172789f06886806bc55" > dir/rock/CACHEDIR.TAG echo "test" > dir/rock/file -for option in exclude-caches exclude-caches-under exclude-caches-all +for option in exclude-caches exclude-caches-under exclude-caches-all do echo OPTION $option tar -cf archive.tar --$option -v dir 2>err | sort @@ -45,7 +45,7 @@ do tar tf archive.tar | sort done -for option in exclude-tag exclude-tag-under exclude-tag-all +for option in exclude-tag exclude-tag-under exclude-tag-all do echo OPTION $option tar -cf archive.tar --${option}=tagfile -v dir 2>err | sort diff --git a/tests/exclude06.at b/tests/exclude06.at new file mode 100644 index 0000000..b1c0da7 --- /dev/null +++ b/tests/exclude06.at @@ -0,0 +1,47 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# Tar 1.23 would fail to exclude names longer that 100 characters from +# pax format archives. +# +# Reported-by: Matthew Peterson +# References: +# http://lists.gnu.org/archive/html/help-tar/2010-06/msg00000.html + +AT_SETUP([exclude: long files in pax archives]) +AT_KEYWORDS([exclude exclude06]) + +m4_define([test_base_dir],[one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen]) + +AT_TAR_CHECK([ +AT_TAR_MKHIER(test_base_dir) +genfile --length 20 -f test_base_dir[/1.txt] +genfile --length 20 -f test_base_dir[/1.c] + +tar cf archive.tar test_base_dir +mkdir out +tar -C out -xf archive.tar --exclude='*.txt' --warning=no-timestamp +find out -type f +], +[0], +[[out/]test_base_dir[/1.c] +], +[], +[], +[], +[pax]) + +AT_CLEANUP diff --git a/tests/extrac01.at b/tests/extrac01.at index 5b1a2de..c84c63a 100644 --- a/tests/extrac01.at +++ b/tests/extrac01.at @@ -27,7 +27,7 @@ AT_TAR_CHECK([ mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ]) AT_CLEANUP diff --git a/tests/extrac03.at b/tests/extrac03.at index 9566b5e..ad01752 100644 --- a/tests/extrac03.at +++ b/tests/extrac03.at @@ -27,7 +27,7 @@ AT_TAR_CHECK([ mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive], +tar -xPvf archive --warning=no-timestamp], [0], [directory/../directory/ separator diff --git a/tests/extrac04.at b/tests/extrac04.at index 49a199e..05cb658 100644 --- a/tests/extrac04.at +++ b/tests/extrac04.at @@ -36,7 +36,7 @@ tar -cf archive ./file1 directory tar -tf archive \ --exclude='./*1' \ --exclude='d*/*1' \ - --exclude='d*/s*/*2' | sort + --exclude='d*/s*/*2' | sort ], [0], [directory/ diff --git a/tests/extrac05.at b/tests/extrac05.at index 82c2ed3..5401001 100644 --- a/tests/extrac05.at +++ b/tests/extrac05.at @@ -30,13 +30,13 @@ AT_SETUP([extracting selected members from pax]) AT_KEYWORDS([extract extract05]) -AT_DATA([list], +AT_DATA([list], [jeden cztery ]) AT_TAR_CHECK([ -genfile --sparse --file sparsefile 0 ABCD 1M EFGH 2000K IJKL || AT_SKIP_TEST +genfile --sparse --file sparsefile 0 ABCD 1M EFGH 2000K IJKL || AT_SKIP_TEST genfile --length 118 --file jeden genfile --length 223 --file dwa genfile --length 517 --file trzy @@ -47,7 +47,7 @@ tar cf archive jeden dwa trzy cztery || exit 1 mkdir dir cd dir -tar xvfT ../archive ../../list || exit 1 +tar xvfT ../archive ../../list --warning=no-timestamp || exit 1 cd .. ], diff --git a/tests/extrac06.at b/tests/extrac06.at index 9f3fdb9..35cb221 100644 --- a/tests/extrac06.at +++ b/tests/extrac06.at @@ -23,7 +23,7 @@ # permissions than your umask. In this case, the permissions of the # existing directory will toggle between the version which complies with # your umask (which would be correct, without -p) and the version from the -# tarfile. +# tarfile. # # Reported by: Ian Jackson # @@ -41,7 +41,7 @@ umask 022 # Make sure user's umask is honored, even if we are superuser TAR_OPTIONS="$TAR_OPTIONS --no-same-permissions" -# Create a directory +# Create a directory mkdir directory chmod 777 directory genfile --stat=mode:777 directory @@ -54,10 +54,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 diff --git a/tests/extrac07.at b/tests/extrac07.at index 1c45e97..d993dc3 100644 --- a/tests/extrac07.at +++ b/tests/extrac07.at @@ -28,13 +28,15 @@ AT_SETUP([extracting symlinks to a read-only dir]) AT_KEYWORDS([extract extract07 read-only symlink]) AT_TAR_CHECK([ +AT_UNPRIVILEGED_PREREQ + echo Prepare the directory mkdir dir genfile -f foo cd dir ln -s ../foo . cd .. -chmod -w dir +chmod a-w dir echo Create the archive tar cf archive dir || exit 1 @@ -52,8 +54,6 @@ Extract dir/ dir/foo ], -[],[],[ustar]) # Testing one format is enough +[],[],[],[ustar]) # Testing one format is enough AT_CLEANUP - - diff --git a/tests/extrac08.at b/tests/extrac08.at index 6ca33bd..432aa0b 100644 --- a/tests/extrac08.at +++ b/tests/extrac08.at @@ -40,7 +40,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ], [0], @@ -49,4 +49,4 @@ dir/file 755 ]) -AT_CLEANUP \ No newline at end of file +AT_CLEANUP diff --git a/tests/extrac09.at b/tests/extrac09.at new file mode 100644 index 0000000..8241c30 --- /dev/null +++ b/tests/extrac09.at @@ -0,0 +1,48 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# This checks for the --listed-incremental bug reported by J Chapman Flack at +# http://lists.gnu.org/archive/html/bug-tar/2010-06/msg00000.html + +AT_SETUP([no need to save dir with unreadable . and ..]) +AT_KEYWORDS([extract extrac09]) + +AT_TAR_CHECK([ +AT_UNPRIVILEGED_PREREQ + +mkdir dir +mkdir dir/sub +mkdir dir/sub/extract +genfile --file dir/sub/f +cd dir/sub + +tar -cf archive.tar f + +chmod a-r . .. +tar -xvf archive.tar -C extract f +status=$? +chmod a+r . .. +cmp f extract/f || status=$? +exit $status +], +[0], +[f +], +[],[],[],[gnu]) + +AT_CLEANUP diff --git a/tests/extrac10.at b/tests/extrac10.at new file mode 100644 index 0000000..5a53f64 --- /dev/null +++ b/tests/extrac10.at @@ -0,0 +1,44 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# written by Paul Eggert + +# Check that delayed setting of directory metadata does not collide +# with the -C option. When setting a directory's permissions, time +# stamps, etc., tar should apply the -C option that was in effect when +# the directory was extracted, not the -C option that happens to be in +# effect when the metadata are later set. + +AT_SETUP([-C and delayed setting of metadata]) +AT_KEYWORDS([extract extrac10]) + +AT_TAR_CHECK([ +mkdir d x x/y +echo foo >d/d1 +echo bar >e + +tar -cf archive.tar d e && +tar -xf archive.tar -C x d -C y e && +diff -r d x/d && +diff e x/y/e +], +[0], +[], +[],[],[],[gnu]) + +AT_CLEANUP diff --git a/tests/extrac11.at b/tests/extrac11.at new file mode 100644 index 0000000..9456695 --- /dev/null +++ b/tests/extrac11.at @@ -0,0 +1,77 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# written by Paul Eggert + +# Check that 'tar' works even in a file-descriptor-limited environment. + +AT_SETUP([scarce file descriptors]) +AT_KEYWORDS([extract extrac11]) + +AT_TAR_CHECK([ +dirs='a + a/b + a/b/c + a/b/c/d + a/b/c/d/e + a/b/c/d/e/f + a/b/c/d/e/f/g + a/b/c/d/e/f/g/h + a/b/c/d/e/f/g/h/i + a/b/c/d/e/f/g/h/i/j + a/b/c/d/e/f/g/h/i/j/k +' +files= +mkdir $dirs dest1 dest2 dest3 || exit +for dir in $dirs; do + for file in X Y Z; do + echo $file >$dir/$file || exit + files="$files $file" + done +done + +# Check that "ulimit" itself works. +((ulimit -n 100 && + tar -cf archive1.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive1.tar -C dest1 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest1/a +) >/dev/null 2>&1 || + AT_SKIP_TEST + +# Another test that "ulimit" itself works: +# tar should fail when completely starved of file descriptors. +((ulimit -n 4 && + tar -cf archive2.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive2.tar -C dest2 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest2/a +) >/dev/null 2>&1 && + AT_SKIP_TEST + +# Tar should work when there are few, but enough, file descriptors. +((ulimit -n 10 && + tar -cf archive3.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive3.tar -C dest3 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest3/a >/dev/null 2>&1 +) || { diff -r a dest3/a; exit 1; } +], +[0],[],[],[],[],[gnu]) + +AT_CLEANUP diff --git a/tests/extrac12.at b/tests/extrac12.at new file mode 100644 index 0000000..4c5962e --- /dev/null +++ b/tests/extrac12.at @@ -0,0 +1,39 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# written by Paul Eggert + +# Check that 'tar' extracts permissions on the working directory last. + +AT_SETUP([extract dot permissions]) +AT_KEYWORDS([extract extrac12]) + +AT_TAR_CHECK([ +mkdir src dst +echo file1 >src/file1 +echo file2 >src/file2 +chmod a-w src + +tar --no-recursion -cf archive.tar -C src . ./file1 file2 && +tar -xf archive.tar -C dst && +cmp src/file1 dst/file1 && +cmp src/file2 dst/file2 +], +[0],[],[],[],[],[gnu]) + +AT_CLEANUP diff --git a/tests/extrac13.at b/tests/extrac13.at new file mode 100644 index 0000000..2abed72 --- /dev/null +++ b/tests/extrac13.at @@ -0,0 +1,53 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# written by Paul Eggert + +# Check that 'tar' normally does follow symbolic links when extracting, +# unless --dereference is specified. + +AT_SETUP([extract over symlinks]) +AT_KEYWORDS([extract extrac13]) + +AT_TAR_CHECK([ +mkdir src dst1 dst2 dst3 +echo file1 >src/file1 +ln -s target1 dst1/file1 +echo target1 >dst1/target1 +echo target1 >target1 + +tar -cf archive.tar -C src . && +tar -xf archive.tar -C dst1 --warning=no-timestamp && +diff -c src/file1 dst1/file1 && +diff -c target1 dst1/target1 + +ln -s target1 dst2/file1 +echo target1 >dst2/target1 +tar --overwrite -xf archive.tar -C dst2 --warning=no-timestamp && +diff -c src/file1 dst2/file1 && +diff -c target1 dst2/target1 + +ln -s target1 dst3/file1 +echo target1 >dst3/target1 +tar --overwrite -xhf archive.tar -C dst3 --warning=no-timestamp && +diff -c src/file1 dst3/file1 && +diff -c src/file1 dst3/target1 +], +[0],[],[],[],[],[gnu]) + +AT_CLEANUP diff --git a/tests/extrac14.at b/tests/extrac14.at new file mode 100644 index 0000000..b98c395 --- /dev/null +++ b/tests/extrac14.at @@ -0,0 +1,36 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# written by Paul Eggert + +# Check that 'tar -x -C FOO' follows FOO if FOO is a symbolic link. + +AT_SETUP([extract -C symlink]) +AT_KEYWORDS([extract extrac14]) + +AT_TAR_CHECK([ +mkdir dest +ln -s dest symlink +echo foo >foo +tar -cf archive.tar foo && +tar -xf archive.tar -C symlink --warning=no-timestamp && +cmp foo dest/foo +], +[0],[],[],[],[],[gnu]) + +AT_CLEANUP diff --git a/tests/extrac15.at b/tests/extrac15.at new file mode 100644 index 0000000..bf8d1cf --- /dev/null +++ b/tests/extrac15.at @@ -0,0 +1,44 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# written by Paul Eggert + +# Check diagnostic of 'tar -x a/b/c' when b cannot be created. + +AT_SETUP([extract parent mkdir failure]) +AT_KEYWORDS([extract extrac15]) + +AT_TAR_CHECK([ +AT_UNPRIVILEGED_PREREQ + +mkdir src src/a src/a/b dest dest/a +touch src/a/b/c +chmod a-w dest/a + +tar -cf archive.tar -C src a/b/c && +if tar -xf archive.tar -C dest a/b/c +then (exit 1) +else (exit 0) +fi +], +[0],[],[tar: a/b: Cannot mkdir: Permission denied +tar: a/b/c: Cannot open: No such file or directory +tar: Exiting with failure status due to previous errors +],[],[],[gnu]) + +AT_CLEANUP diff --git a/tests/filerem01.at b/tests/filerem01.at index 70f47bf..a2561d7 100644 --- a/tests/filerem01.at +++ b/tests/filerem01.at @@ -26,7 +26,7 @@ # instead. # # Reported by: Solar Designer -# +# # References: <20090228235820.GA13362@openwall.com> # http://lists.gnu.org/archive/html/bug-tar/2009-03/msg00000.html # @@ -98,4 +98,3 @@ tar: dir/file1: File removed before we read it AT_CLEANUP - diff --git a/tests/filerem02.at b/tests/filerem02.at index 8d7005a..ed444ad 100644 --- a/tests/filerem02.at +++ b/tests/filerem02.at @@ -39,12 +39,11 @@ genfile --run --checkpoint=3 --exec 'rm -rf dir2' -- \ ], [2], [ignore], -[tar: dir2: Cannot stat: No such file or directory -tar: dir2/file1: File removed before we read it -tar: Exiting with failure status due to previous errors -],[],[],[gnu, posix]) +[ignore],[],[],[gnu, posix]) + +# Ignore stdout and stderr because their contents depend on +# the file system implementation. # Timing information: see filerem01.at AT_CLEANUP - diff --git a/tests/genfile.c b/tests/genfile.c index 7ebeddf..8541be6 100644 --- a/tests/genfile.c +++ b/tests/genfile.c @@ -28,8 +28,7 @@ #include #include #include -#include -#include +#include #include #include #include @@ -364,7 +363,7 @@ parse_opt (int key, char *arg, struct argp_state *state) break; case OPT_DATE: - if (!get_date (&touch_time, arg, NULL)) + if (! parse_datetime (&touch_time, arg, NULL)) argp_error (state, _("Unknown date format")); break; @@ -582,13 +581,13 @@ print_stat (const char *name) printf ("%lu", (unsigned long) st.st_ino); else if (strncmp (p, "mode", 4) == 0) { - mode_t mask = ~0; + unsigned val = st.st_mode; if (ispunct ((unsigned char) p[4])) { char *q; - mask = strtoul (p + 5, &q, 8); + val &= strtoul (p + 5, &q, 8); if (*q) { printf ("\n"); @@ -600,7 +599,7 @@ print_stat (const char *name) printf ("\n"); error (EXIT_FAILURE, 0, _("Unknown field `%s'"), p); } - printf ("%0o", st.st_mode & mask); + printf ("%0o", val); } else if (strcmp (p, "nlink") == 0) printf ("%lu", (unsigned long) st.st_nlink); @@ -656,7 +655,7 @@ exec_checkpoint (struct action *p) struct timespec ts[2]; ts[0] = ts[1] = p->ts; - if (utimens (p->name, ts) != 0) + if (utimensat (AT_FDCWD, p->name, ts, 0) != 0) { error (0, errno, _("cannot set time on `%s'"), p->name); break; @@ -699,7 +698,7 @@ exec_checkpoint (struct action *p) if (unlink (p->name)) error (0, errno, _("cannot unlink `%s'"), p->name); break; - + default: abort (); } @@ -855,7 +854,7 @@ main (int argc, char **argv) bindtextdomain (PACKAGE, LOCALEDIR); textdomain (PACKAGE); - get_date (&touch_time, "now", NULL); + parse_datetime (&touch_time, "now", NULL); /* Decode command options. */ diff --git a/tests/gzip.at b/tests/gzip.at index 38d3538..908b6ed 100644 --- a/tests/gzip.at +++ b/tests/gzip.at @@ -1,7 +1,7 @@ # Process this file with autom4te to create testsuite. -*- Autotest -*- # Test suite for GNU tar. -# Copyright (C) 2004, 2007, 2009 Free Software Foundation, Inc. +# Copyright (C) 2004, 2007, 2009, 2010 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -27,13 +27,14 @@ unset TAR_OPTIONS AT_CHECK([ AT_GZIP_PREREQ -tar xfvz /dev/null +tar xfvz /dev/null 2>err +RC=$? +sed -n '/^tar:/p' err >&2 +exit $RC ], [2], [], -[ -gzip: stdin: unexpected end of file -tar: Child returned status 1 +[tar: Child returned status 1 tar: Error is not recoverable: exiting now ], [],[]) diff --git a/tests/incr01.at b/tests/incr01.at index 8f0be14..fad8d3e 100644 --- a/tests/incr01.at +++ b/tests/incr01.at @@ -37,9 +37,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp ], [0], [directory/ @@ -51,5 +51,3 @@ tar: Deleting `directory/bar' [],[],[],[gnu, oldgnu, posix]) AT_CLEANUP - - diff --git a/tests/incr02.at b/tests/incr02.at index c054253..38b78a5 100644 --- a/tests/incr02.at +++ b/tests/incr02.at @@ -23,9 +23,9 @@ # if the archive has normal member ordering, i.e. each directory # member is immediately followed by members located under that directory. # This is not true for incremental archives, where directory members -# precede the non-directory ones. Due to this, GNU tar up to version 1.15.2 +# precede the non-directory ones. Due to this, GNU tar up to version 1.15.2 # failed to correctly restore directory timestamps from an incremental -# archive if this directory contained some files in it. +# archive if this directory contained some files in it. # # References: <200511291228.47081.karaman@dssgmbh.de> diff --git a/tests/incr03.at b/tests/incr03.at index 673191e..287e1ee 100644 --- a/tests/incr03.at +++ b/tests/incr03.at @@ -45,17 +45,17 @@ tar -cf archive.2 -g db directory mv directory orig echo Listing of archive.1 -tar -tf archive.1 | sort +tar -tf archive.1 | sort echo Listing of archive.2 -tar -tf archive.2 | sort +tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db -find directory | sort +tar -xf archive.2 -g db --warning=no-timestamp +find directory | sort ], [0], [Listing of archive.1 @@ -78,4 +78,3 @@ directory/z AT_CLEANUP # End of incr03.at - diff --git a/tests/incr06.at b/tests/incr06.at index 7efd3f2..d63a260 100644 --- a/tests/incr06.at +++ b/tests/incr06.at @@ -75,5 +75,3 @@ sub/b/file4 ],[],[],[],[gnu, oldgnu, posix]) AT_CLEANUP - - diff --git a/tests/label02.at b/tests/label02.at index 3aa5ce7..7d1246f 100644 --- a/tests/label02.at +++ b/tests/label02.at @@ -25,7 +25,7 @@ genfile --length 0 --file foo genfile --length 12288 --file bar genfile --length 12288 --file baz tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz -tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar ], [0], [Test Volume 1 diff --git a/tests/label03.at b/tests/label03.at new file mode 100644 index 0000000..81b0992 --- /dev/null +++ b/tests/label03.at @@ -0,0 +1,87 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# Description: Test the functionality of the --test-label option. +# In versions up to 1.23 it did not match the documentation. This +# test case follows the examples from "9.7 Including a Label in the Archive". +# References: <15929_1268069389_4B95340D_15929_35_1_D621E31C29598A43AF7B4BBD30CCDDFD0838294A@fr0-mailmb04.res.airbus.corp> +# + +AT_SETUP([test-label option]) +AT_KEYWORDS([label label03 test-label]) + +AT_TAR_CHECK([ +exec <&- +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho "# Display label" +tar --test-label --file=iamanarchive; echo $? +decho "# Display label: unlabeled" +tar --test-label --file=unlabeled.tar; echo $? +decho "# Test label: success" +tar --test-label --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label: failure" +tar --test-label --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: unlabeled" +tar --test-label --file=unlabeled.tar 'amalabel'; echo $? +decho "# Test label, verbose: success" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label, verbose: failure" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: multiple arguments" +tar --test-label --file=iamanarchive a iamalabel b; echo $? +decho "# Test label: wildcards" +tar --test-label --file=iamanarchive --wildcards '*label'; echo $? +], +[0], +[# Display label +iamalabel +0 +# Display label: unlabeled +0 +# Test label: success +0 +# Test label: failure +1 +# Test label: unlabeled +1 +# Test label, verbose: success +iamalabel +0 +# Test label, verbose: failure +iamalabel +1 +# Test label: multiple arguments +0 +# Test label: wildcards +0 +], +[# Display label +# Display label: unlabeled +# Test label: success +# Test label: failure +# Test label: unlabeled +# Test label, verbose: success +# Test label, verbose: failure +tar: Archive label mismatch +# Test label: multiple arguments +# Test label: wildcards +],[],[],[gnu,oldgnu,posix]) + +AT_CLEANUP diff --git a/tests/label04.at b/tests/label04.at new file mode 100644 index 0000000..fc3aa26 --- /dev/null +++ b/tests/label04.at @@ -0,0 +1,51 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# Description: Test the functionality of the --label option used in +# conjunction with an operation, other than create. It was broken +# in versions up to 1.23. +# References: <15929_1268069389_4B95340D_15929_35_1_D621E31C29598A43AF7B4BBD30CCDDFD0838294A@fr0-mailmb04.res.airbus.corp> +# + +AT_SETUP([label with non-create option]) +AT_KEYWORDS([label label04]) + +AT_TAR_CHECK([ +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive --label='New volume' file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive --label='New volume' file +], +[0], +[# Create volume +# Update: wrong label +2 +# Update: right label +], +[# Create volume +# Update: wrong label +tar: Volume `New volume' does not match `My volume' +tar: Error is not recoverable: exiting now +# Update: right label +],[],[],[gnu,oldgnu,posix]) + +AT_CLEANUP diff --git a/tests/label05.at b/tests/label05.at new file mode 100644 index 0000000..5b968a1 --- /dev/null +++ b/tests/label05.at @@ -0,0 +1,48 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# Description: See label04. This testcase uses an unlabeled archive +# volume. + +AT_SETUP([label with non-create option]) +AT_KEYWORDS([label label05]) + +AT_TAR_CHECK([ +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive file +], +[0], +[# Create volume +# Update: wrong label +2 +# Update: right label +], +[# Create volume +# Update: wrong label +tar: Archive not labeled to match `My volume' +tar: Error is not recoverable: exiting now +# Update: right label +],[],[],[gnu,oldgnu,posix]) + +AT_CLEANUP diff --git a/tests/link01.at b/tests/link01.at index 5faf42e..e5f7d55 100644 --- a/tests/link01.at +++ b/tests/link01.at @@ -44,7 +44,7 @@ ln directory/test1/test.txt directory/test2/test.txt || AT_SKIP_TEST tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ], diff --git a/tests/link02.at b/tests/link02.at index 756d48f..320a86e 100644 --- a/tests/link02.at +++ b/tests/link02.at @@ -34,9 +34,9 @@ AT_KEYWORDS([hardlinks link02]) AT_TAR_CHECK([ genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[[2-4]] link to //p' ], @@ -49,4 +49,3 @@ file1 AT_CLEANUP # End of link02.at - diff --git a/tests/link03.at b/tests/link03.at index af5b97c..30272bf 100644 --- a/tests/link03.at +++ b/tests/link03.at @@ -26,9 +26,9 @@ AT_KEYWORDS([hardlinks link03]) m4_define([create_files],[ genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 ]) AT_TAR_CHECK([ @@ -52,5 +52,3 @@ file1 ]) AT_CLEANUP - - diff --git a/tests/link04.at b/tests/link04.at new file mode 100644 index 0000000..2c6045e --- /dev/null +++ b/tests/link04.at @@ -0,0 +1,64 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301, USA. + +# written by Paul Eggert + +# Make sure that tar -c correctly handles the case where a file is +# encountered multiple times, even though it has a link count of 1. +# This can occur when "tar -c FOO FOO" is used; it can also occur when +# "tar -ch FOO" is used, if FOO contains symbolic links that point to +# the same file. + +AT_SETUP([link count is 1 but multiple occurrences]) +AT_KEYWORDS([hardlinks link04]) + +AT_TAR_CHECK([ +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || AT_SKIP_TEST + +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[[0-9]] dir/,dir/, +' | sort + +echo == + +tar chf archive dir +tar tvf archive | sed ' + s,.*[[0-9]] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort +], +[0], +[dir/ +dir/ +dir/file +dir/file link to dir/file +dir/symlink -> file +dir/symlink link to dir/symlink +== +dir/ +dir/FOO +dir/FOO link to dir/FOO +]) + +AT_CLEANUP diff --git a/tests/listed01.at b/tests/listed01.at index 5884f8c..cb5b841 100644 --- a/tests/listed01.at +++ b/tests/listed01.at @@ -60,4 +60,3 @@ directory/file2 [],[],[],[gnu, oldgnu]) AT_CLEANUP - diff --git a/tests/listed02.at b/tests/listed02.at index 2f1f070..94a339c 100644 --- a/tests/listed02.at +++ b/tests/listed02.at @@ -19,9 +19,9 @@ # 02110-1301, USA. # Check if listed-incremental backups work for files moved from one directory -# to another. +# to another. # Based on a script by Martin Simmons -# References: +# References: # <20040626230315.163AA1D148@cpc5-cmbg1-6-0-cust208.cmbg.cable.ntl.com> # http://lists.gnu.org/archive/html/bug-tar/2004-06/msg00028.html @@ -69,7 +69,7 @@ sleep 1 echo Creating incremental archive echo >&2 "Creating incremental archive" cp -p tart.incr1 tart.incr2 -tar -c -v --listed-incremental=tart.incr2 -f archive.2 tart || exit 1 +tar -c -v --listed-incremental=tart.incr2 -f archive.2 tart || exit 1 sleep 1 @@ -81,7 +81,7 @@ echo Extracting incremental archive # This command should produce three messages about deletion # of the existing files, that may appear in any order. Piping # to sort makes sure we don't depend on any particular ordering. -tar -x -v --listed-incremental=tart.incr2 -f archive.2 | sort 2>/dev/null +tar -x -v --listed-incremental=tart.incr2 -f archive.2 | sort 2>/dev/null echo Final files: find tart -print | sort 2>/dev/null diff --git a/tests/listed03.at b/tests/listed03.at new file mode 100644 index 0000000..f3feda7 --- /dev/null +++ b/tests/listed03.at @@ -0,0 +1,47 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# This checks for the --listed-incremental bug reported by J Chapman Flack at +# http://lists.gnu.org/archive/html/bug-tar/2010-06/msg00000.html + +AT_SETUP([incremental dump when the parent directory is unreadable]) +AT_KEYWORDS([listed incremental listed03]) + +AT_TAR_CHECK([ +AT_UNPRIVILEGED_PREREQ + +mkdir dir +mkdir dir/sub +mkdir dir/sub/a +genfile --file dir/sub/a/file +cd dir/sub + +chmod a-r .. +tar -c -f archive.tar --listed-incremental=db.1 -v a +status=$? +chmod a+r .. +exit $status +], +[0], +[a/ +a/file +], +[tar: a: Directory is new +],[],[],[gnu]) + +AT_CLEANUP diff --git a/tests/long01.at b/tests/long01.at index d01195e..f57be11 100644 --- a/tests/long01.at +++ b/tests/long01.at @@ -18,7 +18,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. -# In GNU format, when extracting or listing a file member with a name +# In GNU format, when extracting or listing a file member with a name # whose length is divisible by block size (512) tar used to read an # extra block of data. In consequence the following file was not extracted. # Reported by Josef Bauer @@ -46,4 +46,3 @@ endfile [],[],[],[gnu,oldgnu]) AT_CLEANUP - diff --git a/tests/longv7.at b/tests/longv7.at index 9f03744..a17d663 100644 --- a/tests/longv7.at +++ b/tests/longv7.at @@ -45,4 +45,3 @@ tar: Exiting with failure status due to previous errors [],[],[v7]) AT_CLEANUP - diff --git a/tests/multiv01.at b/tests/multiv01.at index 2b39558..2b03b32 100644 --- a/tests/multiv01.at +++ b/tests/multiv01.at @@ -51,7 +51,7 @@ tar -c --multi-volume --tape-length=$TAPE_LENGTH \ mkdir extract-dir-pipe dd bs=4096 count=$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=$PATH ${TRUSS} tar -f t1-pipe.tar -f - \ - -C extract-dir-pipe -x --multi-volume \ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \ --tape-length=$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -61,5 +61,3 @@ cmp file2 extract-dir-pipe/file2 [],[],[],[],[gnu, oldgnu, pax]) AT_CLEANUP - - diff --git a/tests/multiv02.at b/tests/multiv02.at index 88eb92a..0c321e2 100644 --- a/tests/multiv02.at +++ b/tests/multiv02.at @@ -21,8 +21,8 @@ # Previous versions of tar were not able to skip a member straddling # the multivolume archive boundary. Reported by Mads Martin Joergensen # -# -# References: <20040402144254.GC4409@suse.de> +# +# References: <20040402144254.GC4409@suse.de> # http://lists.gnu.org/archive/html/bug-tar/2004-04/msg00002.html AT_SETUP([skipping a straddling member]) @@ -38,7 +38,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 ], [0], [separator diff --git a/tests/multiv03.at b/tests/multiv03.at index 27d0a28..e013c19 100644 --- a/tests/multiv03.at +++ b/tests/multiv03.at @@ -25,7 +25,7 @@ # References: <20040809214854.GB32706@suse.de> # http://lists.gnu.org/archive/html/bug-tar/2004-08/msg00012.html # <200604270859.47241.Juergen.Vollmer@informatik-vollmer.de> -# +# AT_SETUP([MV archive & long filenames]) AT_KEYWORDS([multivolume multiv multiv03]) @@ -59,7 +59,7 @@ tar -M -L 10 -c -f arch.1 -f arch.2 $BFILE || exit 1 echo separator-2 mv $BFILE bfile -tar -M -x -f arch.1 -f arch.2 || exit 1 +tar -M -x -f arch.1 -f arch.2 --warning=no-timestamp || exit 1 cmp $BFILE bfile ], [0], @@ -68,4 +68,3 @@ cmp $BFILE bfile [],[],[gnu, oldgnu]) AT_CLEANUP - diff --git a/tests/multiv05.at b/tests/multiv05.at index 2e5b74c..9d963c7 100644 --- a/tests/multiv05.at +++ b/tests/multiv05.at @@ -40,7 +40,7 @@ tar -c -M -L 502 -f a.tar -f b.tar -f c.tar m4_foreach([f],[FILELIST],f ) echo separator mkdir bak mv m4_foreach([f],[FILELIST],f )bak -tar -vxM -f a.tar -f c.tar -f b.tar -f c.tar +tar -vxM -f a.tar -f c.tar -f b.tar -f c.tar m4_foreach([f], [FILELIST], [echo Diffing f @@ -62,6 +62,3 @@ m4_foreach([file], ],[],[], [gnu]) AT_CLEANUP - - - diff --git a/tests/multiv06.at b/tests/multiv06.at index 9665299..97cefbf 100644 --- a/tests/multiv06.at +++ b/tests/multiv06.at @@ -49,4 +49,3 @@ Testing archive [gnu, pax]) AT_CLEANUP - diff --git a/tests/multiv07.at b/tests/multiv07.at index ff965d6..9a40f7b 100644 --- a/tests/multiv07.at +++ b/tests/multiv07.at @@ -15,7 +15,7 @@ # along with this program. If not, see . # Description: When creating POSIX multivolume archives, tar may in -# some cases write an extended header at the end of one volume, and +# some cases write an extended header at the end of one volume, and # the corresponding ustar header at the beginning of the next volume. # Such archives do not fully comply with the POSIX specs, but tar must # be able to read them anyway. This is what this script tests. @@ -31,6 +31,8 @@ AT_XFAIL_IF(test -f $[]XFAILFILE) AT_TARBALL_PREREQ([xsplit-1.tar],[0e008c84c517e48fbf23ca6a7033cde6]) AT_TARBALL_PREREQ([xsplit-2.tar],[03150b9852d285458f43734e9e0b9a45]) +exec <&- + cd $TEST_DATA_DIR tar -t -M -fxsplit-1.tar -fxsplit-2.tar ], diff --git a/tests/multiv08.at b/tests/multiv08.at new file mode 100644 index 0000000..c7bfb9d --- /dev/null +++ b/tests/multiv08.at @@ -0,0 +1,48 @@ +# Test suite for GNU tar. -*- Autotest -*- +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +# Description: Tar 1.23 would in some cases silently fail to create +# a continuation header in multivolume archives. +# +# In this testcase, the file `a' is 18.5 blocks long and the file `b' +# is 19.5 blocks long. + +AT_SETUP([multivolume header creation]) +AT_KEYWORDS([multivolume multiv multiv08]) + +AT_TAR_CHECK([ +genfile --length 9472 --file a +genfile --length 9984 --file b +decho Creating +tar -c -M -L10 -f A.tar -f B.tar -f C.tar a b +decho Testing +tar -tMR -f A.tar -f B.tar -f C.tar +], +[0], +[Creating +Testing +block 0: a +block 21: b +block 43: ** Block of NULs ** +], +[Creating +Testing +], +[], +[], +[gnu]) + +AT_CLEANUP diff --git a/tests/options.at b/tests/options.at index 8428f64..e682f69 100644 --- a/tests/options.at +++ b/tests/options.at @@ -34,4 +34,3 @@ tar tf archive ]) AT_CLEANUP - diff --git a/tests/options02.at b/tests/options02.at index bec145f..d4cc285 100644 --- a/tests/options02.at +++ b/tests/options02.at @@ -36,4 +36,3 @@ tar tf archive ]) AT_CLEANUP - diff --git a/tests/package.m4 b/tests/package.m4 index 34a1e20..b8a6f54 100644 --- a/tests/package.m4 +++ b/tests/package.m4 @@ -1,6 +1,6 @@ # Signature of the current package. m4_define([AT_PACKAGE_NAME], [GNU tar]) m4_define([AT_PACKAGE_TARNAME], [tar]) -m4_define([AT_PACKAGE_VERSION], [1.23]) -m4_define([AT_PACKAGE_STRING], [GNU tar 1.23]) +m4_define([AT_PACKAGE_VERSION], [1.24]) +m4_define([AT_PACKAGE_STRING], [GNU tar 1.24]) m4_define([AT_PACKAGE_BUGREPORT], [bug-tar@gnu.org]) diff --git a/tests/pipe.at b/tests/pipe.at index 833e134..cab8535 100644 --- a/tests/pipe.at +++ b/tests/pipe.at @@ -39,7 +39,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" diff --git a/tests/remfiles01.at b/tests/remfiles01.at index 940fd95..86b5c03 100644 --- a/tests/remfiles01.at +++ b/tests/remfiles01.at @@ -30,6 +30,7 @@ AT_KEYWORDS([create remove-files remfiles01 gzip]) unset TAR_OPTIONS AT_CHECK([ +AT_UNPRIVILEGED_PREREQ AT_GZIP_PREREQ AT_SORT_PREREQ @@ -51,7 +52,9 @@ EC=$? sed -n '/(child)/p' err >&2 rm err find . | sort -exit $EC +# Gzip exit code is propagated to the shell. Usually it is +# 141. We convert all non-zero exits to 2 to make it predictable. +test $EC && exit 2 ], [2], [. diff --git a/tests/remfiles03.at b/tests/remfiles03.at new file mode 100644 index 0000000..85d76a8 --- /dev/null +++ b/tests/remfiles03.at @@ -0,0 +1,43 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2009 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301, USA. + +# Description: Called with --remove-files, tar 1.23 failed +# to remove a directory if it contained symlinks to another files +# within that directory. +# Reported-by: Alexander Kozlov +# References: http://lists.gnu.org/archive/html/bug-tar/2010-03/msg00028.html +# + +AT_SETUP([remove-files with symbolic links]) +AT_KEYWORDS([create remove-files remfiles03]) + +AT_CHECK([ +mkdir a +mkdir a/b +ln -s b a/c || AT_SKIP_TEST +tar --remove-files -cf a.tar a +genfile --stat a +], +[0], +[], +[genfile: stat(a) failed: No such file or directory +]) + +AT_CLEANUP diff --git a/tests/rename01.at b/tests/rename01.at index 30d1350..e62e89d 100644 --- a/tests/rename01.at +++ b/tests/rename01.at @@ -19,7 +19,7 @@ # 02110-1301, USA. # Description: Test basic handling of renamed directory in the incremental -# archives. +# archives. AT_SETUP([renamed dirs in incrementals]) AT_KEYWORDS([incremental rename rename01]) @@ -46,7 +46,7 @@ mv foo old tar xfg arch.1 /dev/null echo "Begin directory listing 1" -find foo | sort +find foo | sort echo "End directory listing 1" tar xfg arch.2 /dev/null diff --git a/tests/rename02.at b/tests/rename02.at index d20f2b0..4c51f26 100644 --- a/tests/rename02.at +++ b/tests/rename02.at @@ -19,7 +19,7 @@ # 02110-1301, USA. # Description: Incremental archives should be able to handle directories -# moved between directory hierarchies. +# moved between directory hierarchies. AT_SETUP([move between hierarchies]) AT_KEYWORDS([incremental rename rename02]) @@ -46,14 +46,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo "Begin directory listing 1" -find foo | sort +find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 diff --git a/tests/rename03.at b/tests/rename03.at index c79df8b..d6d9a27 100644 --- a/tests/rename03.at +++ b/tests/rename03.at @@ -58,13 +58,13 @@ echo "Second dump" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo "Begin directory listing 1" -find foo | sort +find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 diff --git a/tests/rename04.at b/tests/rename04.at index 3e9eb1a..ac593de 100644 --- a/tests/rename04.at +++ b/tests/rename04.at @@ -79,5 +79,3 @@ Second restore AT_CLEANUP # End of rename04.at - - diff --git a/tests/rename05.at b/tests/rename05.at index 3ad93a6..54a9067 100644 --- a/tests/rename05.at +++ b/tests/rename05.at @@ -46,11 +46,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort ], [0], @@ -77,5 +77,3 @@ Second restore AT_CLEANUP # End of rename05.at - - diff --git a/tests/same-order01.at b/tests/same-order01.at index d339dfa..2ed4670 100644 --- a/tests/same-order01.at +++ b/tests/same-order01.at @@ -34,9 +34,9 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 -ls directory|sort +ls directory|sort ], [0], [file1 @@ -44,4 +44,3 @@ file2 ]) AT_CLEANUP - diff --git a/tests/same-order02.at b/tests/same-order02.at index e3f7b34..7beecc3 100644 --- a/tests/same-order02.at +++ b/tests/same-order02.at @@ -19,7 +19,7 @@ # 02110-1301, USA. # In previous versions a single -C option did not work with --same-order -# (see same-order01.sh). However, multiple -C options worked OK. +# (see same-order01.sh). However, multiple -C options worked OK. # Test if we did not break the correct behavior. AT_SETUP([multiple -C options]) @@ -34,7 +34,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator diff --git a/tests/shortfile.at b/tests/shortfile.at index 1c0b4dc..261f42f 100644 --- a/tests/shortfile.at +++ b/tests/shortfile.at @@ -38,4 +38,3 @@ tar: Exiting with failure status due to previous errors [],[],[gnu]) AT_CLEANUP - diff --git a/tests/shortupd.at b/tests/shortupd.at index 33f3570..a2bbd13 100644 --- a/tests/shortupd.at +++ b/tests/shortupd.at @@ -36,4 +36,3 @@ tar uf archive foo [0]) AT_CLEANUP - diff --git a/tests/sigpipe.at b/tests/sigpipe.at new file mode 100644 index 0000000..9edca77 --- /dev/null +++ b/tests/sigpipe.at @@ -0,0 +1,39 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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 . + +AT_SETUP([sigpipe handling]) +AT_KEYWORDS([sigpipe]) + +# Description: Tar 1.23 ignored sigpipe which lead to spurious "write +# error" diagnostics when piping output to another programs. +# Reported-by: "Dmitry V. Levin" +# References: http://lists.gnu.org/archive/html/bug-tar/2010-03/msg00039.html +# <20100319184141.GC30047@wo.int.altlinux.org> + +AT_CHECK([ +genfile --length 2048 --file first +genfile --length 2048 --file second +genfile --length 2049 --file third + +tar cf archive first second third + +tar tf archive | : +], +[0]) + +AT_CLEANUP diff --git a/tests/sparse01.at b/tests/sparse01.at index 465031f..039fbbf 100644 --- a/tests/sparse01.at +++ b/tests/sparse01.at @@ -31,7 +31,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile ], @@ -49,4 +49,3 @@ sparsefile 10344448 ]) AT_CLEANUP - diff --git a/tests/sparse02.at b/tests/sparse02.at index bd0016d..9e7ce8a 100644 --- a/tests/sparse02.at +++ b/tests/sparse02.at @@ -23,7 +23,7 @@ AT_KEYWORDS([sparse sparse02]) # Tar 1.14 - 1.15.1 was unable to extract sparse files to a pipe. # References: <16896.21739.460782.124775@jik.kamens.brookline.ma.us> -# http://lists.gnu.org/archive/html/bug-tar/2005-02/msg00003.html +# http://lists.gnu.org/archive/html/bug-tar/2005-02/msg00003.html AT_TAR_CHECK([ genfile --sparse --file sparsefile --block-size 512 0 ABCD 1M EFGH 2000K IJKL || AT_SKIP_TEST diff --git a/tests/sparsemv.at b/tests/sparsemv.at index 81da613..6549083 100644 --- a/tests/sparsemv.at +++ b/tests/sparsemv.at @@ -35,7 +35,7 @@ echo "Pass 1: Split between data blocks" echo "Create archive" tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1 echo "Test archive" -tar --record-size=512 -t -M -f arc.1 -f arc.2 +tar --record-size=512 -t -M -f arc.1 -f arc.2 echo "Compare archive" tar --record-size=512 -d -M -f arc.1 -f arc.2 @@ -44,7 +44,7 @@ genfile --sparse --file sparsefile 0 ABCDEFGHIJ 1M ABCDEFGHI || AT_SKIP_TEST echo "Create archive" tar --sparse -c --record-size=512 -M -L6 -f arc.1 -f arc.2 sparsefile || exit 1 echo "Test archive" -tar --record-size=512 -t -M -f arc.1 -f arc.2 +tar --record-size=512 -t -M -f arc.1 -f arc.2 echo "Compare archive" tar --record-size=512 -d -M -f arc.1 -f arc.2 ], diff --git a/tests/sparsemvp.at b/tests/sparsemvp.at index 1ab8bf1..729f542 100644 --- a/tests/sparsemvp.at +++ b/tests/sparsemvp.at @@ -29,7 +29,7 @@ exec <&- genfile --sparse --file sparsefile $2 || AT_SKIP_TEST echo "Pass 1: Split between data blocks" echo "Create archive" -tar --sparse --sparse-version=$1 -c --record-size=512 -M -L6 -f arc.1 -f arc.2 -f arc.3 sparsefile +tar --sparse --sparse-version=$1 -c --record-size=512 -M -L6 -f arc.1 -f arc.2 -f arc.3 sparsefile echo "Test archive" tar -t -M -f arc.1 -f arc.2 -f arc.3 echo "Compare archive" @@ -38,7 +38,7 @@ tar -d -M -f arc.1 -f arc.2 -f arc.3 echo "Pass 2: Split within a data block" genfile --sparse --file sparsefile $3 || AT_SKIP_TEST echo "Create archive" -tar --sparse --sparse-version=$1 -c --record-size=512 -M -L6 -f arc.1 -f arc.2 -f arc.3 sparsefile +tar --sparse --sparse-version=$1 -c --record-size=512 -M -L6 -f arc.1 -f arc.2 -f arc.3 sparsefile echo "Test archive" tar -t -M -f arc.1 -f arc.2 -f arc.3 echo "Compare archive" @@ -57,4 +57,3 @@ sparsefile Compare archive ], [],[],[],[pax])]) - diff --git a/tests/spmvp00.at b/tests/spmvp00.at index eb460cc..48597d4 100644 --- a/tests/spmvp00.at +++ b/tests/spmvp00.at @@ -19,7 +19,7 @@ # 02110-1301, USA. AT_SETUP([sparse files in PAX MV archives, v.0.0]) -AT_KEYWORDS([sparse multiv sparsemvp sparsemvp00]) +AT_KEYWORDS([sparse multivolume multiv sparsemvp sparsemvp00]) TAR_MVP_TEST(0.0, [0 ABCDEFGHI 1M ABCDEFGHI], [0 ABCDEFGH 1M ABCDEFGHI]) diff --git a/tests/spmvp10.at b/tests/spmvp10.at index 5a4ad26..8e1dccb 100644 --- a/tests/spmvp10.at +++ b/tests/spmvp10.at @@ -19,7 +19,7 @@ # 02110-1301, USA. AT_SETUP([sparse files in PAX MV archives, v.1.0]) -AT_KEYWORDS([sparse multiv sparsemvp sparsemvp10]) +AT_KEYWORDS([sparse multivolume multiv sparsemvp sparsemvp10]) TAR_MVP_TEST(1.0, [0 ABCDEFGH 1M ABCDEFGHI], [0 ABCDEFG 1M ABCDEFGHI]) diff --git a/tests/star/README b/tests/star/README index e247ff4..2b96aa6 100644 --- a/tests/star/README +++ b/tests/star/README @@ -10,14 +10,14 @@ STAR_TESTSCRIPTS to point to the directory where they reside, for example: make STAR_TESTSCRIPTS=testdir check -or +or make TESTS_ENVIRONMENT='STAR_TESTSCRIPTS=testdir' check The file `quicktest.sh' is a separate test. It is never executed within `make check' command, you will need to run it manually. Please, carefully read section `quicktest.sh' below before running it. - + Following is a short description of the tests: * gtarfail.at and gtarfail2.at @@ -30,7 +30,7 @@ by previous versions of GNU tar. Requires gnu-multi-fail-volume1.gtar and gnu-multi-fail-volume2.gtar. These are two parts of a multi-volume archive that previous versions -of tar refused to read (at least, without -B option). +of tar refused to read (at least, without -B option). * ustar-big-2g.at diff --git a/tests/star/gtarfail2.at b/tests/star/gtarfail2.at index c0ce544..f00b767 100644 --- a/tests/star/gtarfail2.at +++ b/tests/star/gtarfail2.at @@ -41,5 +41,3 @@ lrwxrwxrwx jes/glone 0 2001-08-29 10:54 build/psmake/astoi.c -> ../../li ]) AT_CLEANUP - - diff --git a/tests/star/multi-fail.at b/tests/star/multi-fail.at index 2b351d1..ebf7717 100644 --- a/tests/star/multi-fail.at +++ b/tests/star/multi-fail.at @@ -86,4 +86,3 @@ tar --utc -tvM -f $STAR_TESTSCRIPTS/gnu-multi-fail-volume1.gtar \ ]) AT_CLEANUP - diff --git a/tests/star/pax-big-10g.at b/tests/star/pax-big-10g.at index f37d2f0..732d0fa 100644 --- a/tests/star/pax-big-10g.at +++ b/tests/star/pax-big-10g.at @@ -39,5 +39,3 @@ RE_CHECK([stderr],[tar: Record size = .* ]) AT_CLEANUP - - diff --git a/tests/star/quicktest.sh b/tests/star/quicktest.sh index 01b8e12..cbc6511 100755 --- a/tests/star/quicktest.sh +++ b/tests/star/quicktest.sh @@ -57,7 +57,7 @@ test_access() { echo "$1 does not exist or is unreadable" echo 77 fi -} +} check_environ() { if [ "$STAR_TESTSCRIPTS" = "" ]; then @@ -70,12 +70,12 @@ check_environ() { else echo "STAR_TESTSCRIPTS is not a directory" exit 77 - fi + fi ARCHIVE=$STAR_TESTSCRIPTS/ustar-all-quicktest.tar test_access $ARCHIVE FILELIST=$STAR_TESTSCRIPTS/quicktest.filelist - test_access $FILELIST + test_access $FILELIST ${TARTEST:-tartest} < /dev/null > /dev/null 2>&1 if [ $? -eq 127 ]; then @@ -93,7 +93,7 @@ getargs() { *) echo "Unknown option: $option" >&2 exit 77;; esac - done + done } if [ -w / ]; then diff --git a/tests/star/ustar-big-2g.at b/tests/star/ustar-big-2g.at index a5bee73..1609d1b 100644 --- a/tests/star/ustar-big-2g.at +++ b/tests/star/ustar-big-2g.at @@ -39,4 +39,3 @@ RE_CHECK([stderr],[tar: Record size = .* ]) AT_CLEANUP - diff --git a/tests/star/ustar-big-8g.at b/tests/star/ustar-big-8g.at index 49a05c0..d1ecbcd 100644 --- a/tests/star/ustar-big-8g.at +++ b/tests/star/ustar-big-8g.at @@ -39,4 +39,3 @@ RE_CHECK([stderr],[tar: Record size = .* ]) AT_CLEANUP - diff --git a/tests/testsuite b/tests/testsuite index f846810..c224260 100755 --- a/tests/testsuite +++ b/tests/testsuite @@ -621,11 +621,11 @@ at_change_dir=false # List of the tested programs. at_tested='tar' # List of the all the test groups. -at_groups_all=' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98' +at_groups_all=' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115' # As many question marks as there are digits in the last test group number. # Used to normalize the test group numbers so that `ls' lists them in # numerical order. -at_format='??' +at_format='???' # Description of all the test groups. at_help_all="1;version.at:19;tar version;; 2;pipe.at:30;decompressing from stdin;pipe; @@ -639,92 +639,109 @@ at_help_all="1;version.at:19;tar version;; 10;append01.at:29;appending files with long names;append append01; 11;append02.at:54;append vs. create;append append02 append-gnu; 12;xform-h.at:30;transforming hard links on create;transform xform xform-h; -13;exclude.at:23;exclude;exclude; -14;exclude01.at:17;exclude wildcards;exclude exclude01; -15;exclude02.at:17;exclude: anchoring;exclude exclude02; -16;exclude03.at:17;exclude: wildcards match slash;exclude exclude03; -17;exclude04.at:17;exclude: case insensitive;exclude exclude04; -18;exclude05.at:19;exclude: lots of excludes;exclude exclude05; -19;delete01.at:23;deleting a member after a big one;delete delete01; -20;delete02.at:23;deleting a member from stdin archive;delete delete02; -21;delete03.at:21;deleting members with long names;delete delete03; -22;delete04.at:23;deleting a large last member;delete delete04; -23;delete05.at:27;deleting non-existing member;delete delete05; -24;extrac01.at:23;extract over an existing directory;extract extract01; -25;extrac02.at:23;extracting symlinks over an existing file;extract extract02 symlink; -26;extrac03.at:23;extraction loops;extract extract03; -27;extrac04.at:23;extract + fnmatch;extract extract04 fnmatch; -28;extrac05.at:30;extracting selected members from pax;extract extract05; -29;extrac06.at:33;mode of extracted directories;extract extract06 directory mode; -30;extrac07.at:27;extracting symlinks to a read-only dir;extract extract07 read-only symlink; -31;extrac08.at:33;restoring mode on existing directory;extract extrac08; -32;label01.at:19;single-volume label;label label01; -33;label02.at:19;multi-volume label;label label02 multi-label multivolume multiv; -34;backup01.at:33;extracting existing dir with --backup;extract backup backup01; -35;gzip.at:23;gzip;gzip; -36;incremental.at:23;incremental;incremental incr00; -37;incr01.at:27;restore broken symlinks from incremental;incremental incr01; -38;incr02.at:32;restoring timestamps from incremental;incremental timestamp restore incr02; -39;listed01.at:26;--listed for individual files;listed incremental listed01; -40;listed02.at:28;working --listed;listed incremental listed02; -41;incr03.at:28;renamed files in incrementals;incremental incr03 rename; -42;incr04.at:29;proper icontents initialization;incremental incr04 icontents; -43;incr05.at:19;incremental dumps with -C;incremental incr05; -44;incr06.at:19;incremental dumps of nested directories;incremental incr06; -45;filerem01.at:34;file removed as we read it (ca. 22 seconds);create incremental filechange filerem filerem01; -46;filerem02.at:24;toplevel file removed (ca. 24 seconds);create incremental filechange filerem filerem02; -47;rename01.at:24;renamed dirs in incrementals;incremental rename rename01; -48;rename02.at:24;move between hierarchies;incremental rename rename02; -49;rename03.at:23;cyclic renames;incremental rename rename03 cyclic-rename; -50;rename04.at:27;renamed directory containing subdirectories;incremental rename04 rename; -51;rename05.at:24;renamed subdirectories;incremental rename05 rename; -52;chtype.at:27;changed file types in incrementals;incremental chtype; -53;ignfail.at:23;ignfail;ignfail; -54;link01.at:33;link count gt 2;hardlinks link01; -55;link02.at:32;preserve hard links with --remove-files;hardlinks link02; -56;link03.at:24;working -l with --remove-files;hardlinks link03; -57;longv7.at:24;long names in V7 archives;longname longv7; -58;long01.at:28;long file names divisible by block size;longname long512; -59;lustar01.at:21;ustar: unsplittable file name;longname ustar lustar01; -60;lustar02.at:21;ustar: unsplittable path name;longname ustar lustar02; -61;lustar03.at:21;ustar: splitting long names;longname ustar lustar03; -62;multiv01.at:23;multivolume dumps from pipes;multivolume multiv multiv01; -63;multiv02.at:28;skipping a straddling member;multivolume multiv multiv02; -64;multiv03.at:30;MV archive & long filenames;multivolume multiv multiv03; -65;multiv04.at:36;split directory members in a MV archive;multivolume multiv incremental multiv04; -66;multiv05.at:26;Restoring after an out of sync volume;multivolume multiv multiv05 sync; -67;multiv06.at:27;Multivolumes with L=record_size;multivolume multiv multiv06; -68;multiv07.at:26;volumes split at an extended header;multivolume multiv multiv07 xsplit; -69;old.at:23;old archives;old; -70;recurse.at:21;recurse;recurse; -71;same-order01.at:26;working -C with --same-order;same-order same-order01; -72;same-order02.at:25;multiple -C options;same-order same-order02; -73;shortrec.at:25;short records;shortrec; -74;sparse01.at:21;sparse files;sparse sparse01; -75;sparse02.at:21;extracting sparse file over a pipe;sparse sparse02; -76;sparse03.at:21;storing sparse files > 8G;sparse sparse03; -77;sparsemv.at:21;sparse files in MV archives;sparse multiv sparsemv; -78;spmvp00.at:21;sparse files in PAX MV archives, v.0.0;sparse multiv sparsemvp sparsemvp00; -79;spmvp01.at:21;sparse files in PAX MV archives, v.0.1;sparse multiv sparsemvp sparsemvp01; -80;spmvp10.at:21;sparse files in PAX MV archives, v.1.0;sparse multiv sparsemvp sparsemvp10; -81;update.at:28;update unchanged directories;update update00; -82;update01.at:29;update directories;update update01; -83;update02.at:26;update changed files;update update02; -84;volume.at:23;volume;volume volcheck; -85;volsize.at:29;volume header size;volume volsize; -86;comprec.at:21;compressed format recognition;comprec; -87;shortfile.at:26;short input files;shortfile shortfile0; -88;shortupd.at:29;updating short archives;shortfile shortfile1 shortupd; -89;truncate.at:29;truncate;truncate filechange; -90;grow.at:24;grow;grow filechange; -91;remfiles01.at:28;remove-files with compression;create remove-files remfiles01 gzip; -92;remfiles02.at:28;remove-files with compression: grand-child;create remove-files remfiles02 gzip; -93;gtarfail.at:21;gtarfail;star gtarfail; -94;gtarfail2.at:21;gtarfail2;star gtarfail2; -95;multi-fail.at:21;multi-fail;star multivolume multiv multi-fail; -96;ustar-big-2g.at:21;ustar-big-2g;star ustar-big-2g; -97;ustar-big-8g.at:21;ustar-big-8g;star ustar-big-8g; -98;pax-big-10g.at:21;pax-big-10g;star pax-big-10g; +13;xform01.at:26;transformations and GNU volume labels;transform xform xform01 volume; +14;exclude.at:23;exclude;exclude; +15;exclude01.at:17;exclude wildcards;exclude exclude01; +16;exclude02.at:17;exclude: anchoring;exclude exclude02; +17;exclude03.at:17;exclude: wildcards match slash;exclude exclude03; +18;exclude04.at:17;exclude: case insensitive;exclude exclude04; +19;exclude05.at:19;exclude: lots of excludes;exclude exclude05; +20;exclude06.at:24;exclude: long files in pax archives;exclude exclude06; +21;delete01.at:23;deleting a member after a big one;delete delete01; +22;delete02.at:23;deleting a member from stdin archive;delete delete02; +23;delete03.at:21;deleting members with long names;delete delete03; +24;delete04.at:23;deleting a large last member;delete delete04; +25;delete05.at:27;deleting non-existing member;delete delete05; +26;extrac01.at:23;extract over an existing directory;extract extract01; +27;extrac02.at:23;extracting symlinks over an existing file;extract extract02 symlink; +28;extrac03.at:23;extraction loops;extract extract03; +29;extrac04.at:23;extract + fnmatch;extract extract04 fnmatch; +30;extrac05.at:30;extracting selected members from pax;extract extract05; +31;extrac06.at:33;mode of extracted directories;extract extract06 directory mode; +32;extrac07.at:27;extracting symlinks to a read-only dir;extract extract07 read-only symlink; +33;extrac08.at:33;restoring mode on existing directory;extract extrac08; +34;extrac09.at:22;no need to save dir with unreadable . and ..;extract extrac09; +35;extrac10.at:27;-C and delayed setting of metadata;extract extrac10; +36;extrac11.at:23;scarce file descriptors;extract extrac11; +37;extrac12.at:23;extract dot permissions;extract extrac12; +38;extrac13.at:24;extract over symlinks;extract extrac13; +39;extrac14.at:23;extract -C symlink;extract extrac14; +40;extrac15.at:23;extract parent mkdir failure;extract extrac15; +41;label01.at:19;single-volume label;label label01; +42;label02.at:19;multi-volume label;label label02 multi-label multivolume multiv; +43;label03.at:25;test-label option;label label03 test-label; +44;label04.at:25;label with non-create option;label label04; +45;label05.at:22;label with non-create option;label label05; +46;backup01.at:33;extracting existing dir with --backup;extract backup backup01; +47;gzip.at:23;gzip;gzip; +48;incremental.at:23;incremental;incremental incr00; +49;incr01.at:27;restore broken symlinks from incremental;incremental incr01; +50;incr02.at:32;restoring timestamps from incremental;incremental timestamp restore incr02; +51;listed01.at:26;--listed for individual files;listed incremental listed01; +52;listed02.at:28;working --listed;listed incremental listed02; +53;listed03.at:22;incremental dump when the parent directory is unreadable;listed incremental listed03; +54;incr03.at:28;renamed files in incrementals;incremental incr03 rename; +55;incr04.at:29;proper icontents initialization;incremental incr04 icontents; +56;incr05.at:19;incremental dumps with -C;incremental incr05; +57;incr06.at:19;incremental dumps of nested directories;incremental incr06; +58;filerem01.at:34;file removed as we read it (ca. 22 seconds);create incremental filechange filerem filerem01; +59;filerem02.at:24;toplevel file removed (ca. 24 seconds);create incremental filechange filerem filerem02; +60;rename01.at:24;renamed dirs in incrementals;incremental rename rename01; +61;rename02.at:24;move between hierarchies;incremental rename rename02; +62;rename03.at:23;cyclic renames;incremental rename rename03 cyclic-rename; +63;rename04.at:27;renamed directory containing subdirectories;incremental rename04 rename; +64;rename05.at:24;renamed subdirectories;incremental rename05 rename; +65;chtype.at:27;changed file types in incrementals;incremental chtype; +66;ignfail.at:23;ignfail;ignfail; +67;link01.at:33;link count gt 2;hardlinks link01; +68;link02.at:32;preserve hard links with --remove-files;hardlinks link02; +69;link03.at:24;working -l with --remove-files;hardlinks link03; +70;link04.at:29;link count is 1 but multiple occurrences;hardlinks link04; +71;longv7.at:24;long names in V7 archives;longname longv7; +72;long01.at:28;long file names divisible by block size;longname long512; +73;lustar01.at:21;ustar: unsplittable file name;longname ustar lustar01; +74;lustar02.at:21;ustar: unsplittable path name;longname ustar lustar02; +75;lustar03.at:21;ustar: splitting long names;longname ustar lustar03; +76;multiv01.at:23;multivolume dumps from pipes;multivolume multiv multiv01; +77;multiv02.at:28;skipping a straddling member;multivolume multiv multiv02; +78;multiv03.at:30;MV archive & long filenames;multivolume multiv multiv03; +79;multiv04.at:36;split directory members in a MV archive;multivolume multiv incremental multiv04; +80;multiv05.at:26;Restoring after an out of sync volume;multivolume multiv multiv05 sync; +81;multiv06.at:27;Multivolumes with L=record_size;multivolume multiv multiv06; +82;multiv07.at:26;volumes split at an extended header;multivolume multiv multiv07 xsplit; +83;multiv08.at:23;multivolume header creation;multivolume multiv multiv08; +84;old.at:23;old archives;old; +85;recurse.at:21;recurse;recurse; +86;same-order01.at:26;working -C with --same-order;same-order same-order01; +87;same-order02.at:25;multiple -C options;same-order same-order02; +88;shortrec.at:25;short records;shortrec; +89;sparse01.at:21;sparse files;sparse sparse01; +90;sparse02.at:21;extracting sparse file over a pipe;sparse sparse02; +91;sparse03.at:21;storing sparse files > 8G;sparse sparse03; +92;sparsemv.at:21;sparse files in MV archives;sparse multiv sparsemv; +93;spmvp00.at:21;sparse files in PAX MV archives, v.0.0;sparse multivolume multiv sparsemvp sparsemvp00; +94;spmvp01.at:21;sparse files in PAX MV archives, v.0.1;sparse multiv sparsemvp sparsemvp01; +95;spmvp10.at:21;sparse files in PAX MV archives, v.1.0;sparse multivolume multiv sparsemvp sparsemvp10; +96;update.at:28;update unchanged directories;update update00; +97;update01.at:29;update directories;update update01; +98;update02.at:26;update changed files;update update02; +99;volume.at:23;volume;volume volcheck; +100;volsize.at:29;volume header size;volume volsize; +101;comprec.at:21;compressed format recognition;comprec; +102;shortfile.at:26;short input files;shortfile shortfile0; +103;shortupd.at:29;updating short archives;shortfile shortfile1 shortupd; +104;truncate.at:29;truncate;truncate filechange; +105;grow.at:24;grow;grow filechange; +106;remfiles01.at:28;remove-files with compression;create remove-files remfiles01 gzip; +107;remfiles02.at:28;remove-files with compression: grand-child;create remove-files remfiles02 gzip; +108;remfiles03.at:28;remove-files with symbolic links;create remove-files remfiles03; +109;sigpipe.at:19;sigpipe handling;sigpipe; +110;gtarfail.at:21;gtarfail;star gtarfail; +111;gtarfail2.at:21;gtarfail2;star gtarfail2; +112;multi-fail.at:21;multi-fail;star multivolume multiv multi-fail; +113;ustar-big-2g.at:21;ustar-big-2g;star ustar-big-2g; +114;ustar-big-8g.at:21;ustar-big-8g;star ustar-big-8g; +115;pax-big-10g.at:21;pax-big-10g;star pax-big-10g; " # at_func_validate_ranges [NAME...] @@ -736,7 +753,7 @@ at_func_validate_ranges () for at_grp do eval at_value=\$$at_grp - if test $at_value -lt 1 || test $at_value -gt 98; then + if test $at_value -lt 1 || test $at_value -gt 115; then $as_echo "invalid test group: $at_value" >&2 exit 1 fi @@ -973,7 +990,7 @@ fi # List of tests. if $at_list_p; then cat <<_ATEOF || at_write_fail=1 -GNU tar 1.23 test suite test groups: +GNU tar 1.24 test suite test groups: NUM: FILE-NAME:LINE TEST-GROUP-NAME KEYWORDS @@ -1002,7 +1019,7 @@ _ATEOF exit $at_write_fail fi if $at_version_p; then - $as_echo "$as_me (GNU tar 1.23)" && + $as_echo "$as_me (GNU tar 1.24)" && cat <<\_ACEOF || at_write_fail=1 Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 @@ -1185,13 +1202,13 @@ exec 5>>"$at_suite_log" # Banners and logs. cat <<\_ASBOX ## ------------------------ ## -## GNU tar 1.23 test suite. ## +## GNU tar 1.24 test suite. ## ## ------------------------ ## _ASBOX { cat <<\_ASBOX ## ------------------------ ## -## GNU tar 1.23 test suite. ## +## GNU tar 1.24 test suite. ## ## ------------------------ ## _ASBOX echo @@ -1923,7 +1940,7 @@ _ASBOX $as_echo "Please send \`${at_testdir+${at_testdir}/}$as_me.log' and all information you think might help: To: - Subject: [GNU tar 1.23] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} + Subject: [GNU tar 1.24] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} " if test $at_debug_p = false; then echo @@ -1965,7 +1982,7 @@ fi at_status=$? at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "tar (GNU tar) 1.23 +echo >>"$at_stdout"; $as_echo "tar (GNU tar) 1.24 " | \ $at_diff - "$at_stdout" || at_failed=: at_func_check_status 0 $at_status "$at_srcdir/version.at:21" @@ -2026,7 +2043,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo \"separator\" cmp orig/file1 directory/file1 echo \"separator\" @@ -2053,7 +2070,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -2078,7 +2095,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -2118,7 +2135,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo \"separator\" cmp orig/file1 directory/file1 echo \"separator\" @@ -2145,7 +2162,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -2170,7 +2187,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -2210,7 +2227,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo \"separator\" cmp orig/file1 directory/file1 echo \"separator\" @@ -2237,7 +2254,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -2262,7 +2279,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -2302,7 +2319,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo \"separator\" cmp orig/file1 directory/file1 echo \"separator\" @@ -2329,7 +2346,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -2354,7 +2371,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -2394,7 +2411,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo \"separator\" cmp orig/file1 directory/file1 echo \"separator\" @@ -2421,7 +2438,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -2446,7 +2463,7 @@ genfile --length 10240 --pattern zeros --file directory/file1 genfile --length 13 --file directory/file2 tar cf archive directory mv directory orig -cat archive | tar xfv - | sort +cat archive | tar xfv - --warning=no-timestamp | sort echo "separator" cmp orig/file1 directory/file1 echo "separator" @@ -5388,21 +5405,106 @@ $at_traceon; } + + $at_traceoff $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` #AT_STOP_12 #AT_START_13 -# 13. exclude.at:23: exclude +# 13. xform01.at:26: transformations and GNU volume labels +at_setup_line='xform01.at:26' +at_desc="transformations and GNU volume labels" +$at_quiet $as_echo_n " 13: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "13. xform01.at:26: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/xform01.at:29: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +genfile --file file +tar -cf archive.tar -V /label/ file +tar tf archive.tar +)" +echo xform01.at:29 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +genfile --file file +tar -cf archive.tar -V /label/ file +tar tf archive.tar +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +genfile --file file +tar -cf archive.tar -V /label/ file +tar tf archive.tar +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "/label/ +file +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/xform01.at:29" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_13 +#AT_START_14 +# 14. exclude.at:23: exclude at_setup_line='exclude.at:23' at_desc="exclude" -$at_quiet $as_echo_n " 13: $at_desc " +$at_quiet $as_echo_n " 14: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "13. exclude.at:23: testing ..." + $as_echo "14. exclude.at:23: testing ..." $at_traceon @@ -5659,17 +5761,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_13 -#AT_START_14 -# 14. exclude01.at:17: exclude wildcards +#AT_STOP_14 +#AT_START_15 +# 15. exclude01.at:17: exclude wildcards at_setup_line='exclude01.at:17' at_desc="exclude wildcards" -$at_quiet $as_echo_n " 14: $at_desc " +$at_quiet $as_echo_n " 15: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "14. exclude01.at:17: testing ..." + $as_echo "15. exclude01.at:17: testing ..." $at_traceon @@ -6493,17 +6595,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_14 -#AT_START_15 -# 15. exclude02.at:17: exclude: anchoring +#AT_STOP_15 +#AT_START_16 +# 16. exclude02.at:17: exclude: anchoring at_setup_line='exclude02.at:17' at_desc="exclude: anchoring" -$at_quiet $as_echo_n " 15: $at_desc " +$at_quiet $as_echo_n " 16: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "15. exclude02.at:17: testing ..." + $as_echo "16. exclude02.at:17: testing ..." $at_traceon @@ -7407,17 +7509,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_15 -#AT_START_16 -# 16. exclude03.at:17: exclude: wildcards match slash +#AT_STOP_16 +#AT_START_17 +# 17. exclude03.at:17: exclude: wildcards match slash at_setup_line='exclude03.at:17' at_desc="exclude: wildcards match slash" -$at_quiet $as_echo_n " 16: $at_desc " +$at_quiet $as_echo_n " 17: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "16. exclude03.at:17: testing ..." + $as_echo "17. exclude03.at:17: testing ..." $at_traceon @@ -8261,17 +8363,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_16 -#AT_START_17 -# 17. exclude04.at:17: exclude: case insensitive +#AT_STOP_17 +#AT_START_18 +# 18. exclude04.at:17: exclude: case insensitive at_setup_line='exclude04.at:17' at_desc="exclude: case insensitive" -$at_quiet $as_echo_n " 17: $at_desc " +$at_quiet $as_echo_n " 18: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "17. exclude04.at:17: testing ..." + $as_echo "18. exclude04.at:17: testing ..." $at_traceon @@ -9145,17 +9247,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_17 -#AT_START_18 -# 18. exclude05.at:19: exclude: lots of excludes +#AT_STOP_18 +#AT_START_19 +# 19. exclude05.at:19: exclude: lots of excludes at_setup_line='exclude05.at:19' at_desc="exclude: lots of excludes" -$at_quiet $as_echo_n " 18: $at_desc " +$at_quiet $as_echo_n " 19: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "18. exclude05.at:19: testing ..." + $as_echo "19. exclude05.at:19: testing ..." $at_traceon @@ -9829,17 +9931,119 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_18 -#AT_START_19 -# 19. delete01.at:23: deleting a member after a big one +#AT_STOP_19 +#AT_START_20 +# 20. exclude06.at:24: exclude: long files in pax archives +at_setup_line='exclude06.at:24' +at_desc="exclude: long files in pax archives" +$at_quiet $as_echo_n " 20: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "20. exclude06.at:24: testing ..." + $at_traceon + + + + + + + + { $at_traceoff +$as_echo "$at_srcdir/exclude06.at:29: +mkdir pax +(cd pax +TEST_TAR_FORMAT=pax +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H pax\" +export TAR_OPTIONS +rm -rf * + + +install-sh -d one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen >/dev/null || exit 77 +genfile --length 20 -f one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen/1.txt +genfile --length 20 -f one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen/1.c + +tar cf archive.tar one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen +mkdir out +tar -C out -xf archive.tar --exclude='*.txt' --warning=no-timestamp +find out -type f +)" +echo exclude06.at:29 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir pax +(cd pax +TEST_TAR_FORMAT=pax +export TEST_TAR_FORMAT +TAR_OPTIONS="-H pax" +export TAR_OPTIONS +rm -rf * + + +install-sh -d one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen >/dev/null || exit 77 +genfile --length 20 -f one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen/1.txt +genfile --length 20 -f one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen/1.c + +tar cf archive.tar one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen +mkdir out +tar -C out -xf archive.tar --exclude='*.txt' --warning=no-timestamp +find out -type f +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir pax +(cd pax +TEST_TAR_FORMAT=pax +export TEST_TAR_FORMAT +TAR_OPTIONS="-H pax" +export TAR_OPTIONS +rm -rf * + + +install-sh -d one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen >/dev/null || exit 77 +genfile --length 20 -f one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen/1.txt +genfile --length 20 -f one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen/1.c + +tar cf archive.tar one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen +mkdir out +tar -C out -xf archive.tar --exclude='*.txt' --warning=no-timestamp +find out -type f +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "out/one/two/three/four/five/six/seven/eight/nine/ten/eleven/twelve/thirteen/fourteen/fifteen/sixteen/seventeen/1.c +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/exclude06.at:29" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_20 +#AT_START_21 +# 21. delete01.at:23: deleting a member after a big one at_setup_line='delete01.at:23' at_desc="deleting a member after a big one" -$at_quiet $as_echo_n " 19: $at_desc " +$at_quiet $as_echo_n " 21: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "19. delete01.at:23: testing ..." + $as_echo "21. delete01.at:23: testing ..." $at_traceon @@ -10158,17 +10362,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_19 -#AT_START_20 -# 20. delete02.at:23: deleting a member from stdin archive +#AT_STOP_21 +#AT_START_22 +# 22. delete02.at:23: deleting a member from stdin archive at_setup_line='delete02.at:23' at_desc="deleting a member from stdin archive" -$at_quiet $as_echo_n " 20: $at_desc " +$at_quiet $as_echo_n " 22: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "20. delete02.at:23: testing ..." + $as_echo "22. delete02.at:23: testing ..." $at_traceon @@ -10557,17 +10761,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_20 -#AT_START_21 -# 21. delete03.at:21: deleting members with long names +#AT_STOP_22 +#AT_START_23 +# 23. delete03.at:21: deleting members with long names at_setup_line='delete03.at:21' at_desc="deleting members with long names" -$at_quiet $as_echo_n " 21: $at_desc " +$at_quiet $as_echo_n " 23: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "21. delete03.at:21: testing ..." + $as_echo "23. delete03.at:21: testing ..." $at_traceon @@ -10832,17 +11036,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_21 -#AT_START_22 -# 22. delete04.at:23: deleting a large last member +#AT_STOP_23 +#AT_START_24 +# 24. delete04.at:23: deleting a large last member at_setup_line='delete04.at:23' at_desc="deleting a large last member" -$at_quiet $as_echo_n " 22: $at_desc " +$at_quiet $as_echo_n " 24: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "22. delete04.at:23: testing ..." + $as_echo "24. delete04.at:23: testing ..." $at_traceon @@ -11336,17 +11540,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_22 -#AT_START_23 -# 23. delete05.at:27: deleting non-existing member +#AT_STOP_24 +#AT_START_25 +# 25. delete05.at:27: deleting non-existing member at_setup_line='delete05.at:27' at_desc="deleting non-existing member" -$at_quiet $as_echo_n " 23: $at_desc " +$at_quiet $as_echo_n " 25: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "23. delete05.at:27: testing ..." + $as_echo "25. delete05.at:27: testing ..." $at_traceon @@ -11745,17 +11949,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_23 -#AT_START_24 -# 24. extrac01.at:23: extract over an existing directory +#AT_STOP_25 +#AT_START_26 +# 26. extrac01.at:23: extract over an existing directory at_setup_line='extrac01.at:23' at_desc="extract over an existing directory" -$at_quiet $as_echo_n " 24: $at_desc " +$at_quiet $as_echo_n " 26: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "24. extrac01.at:23: testing ..." + $as_echo "26. extrac01.at:23: testing ..." $at_traceon @@ -11775,7 +11979,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 )" echo extrac01.at:26 >"$at_check_line_file" @@ -11793,7 +11997,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -11809,7 +12013,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -11834,7 +12038,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 )" echo extrac01.at:26 >"$at_check_line_file" @@ -11852,7 +12056,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -11868,7 +12072,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -11893,7 +12097,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 )" echo extrac01.at:26 >"$at_check_line_file" @@ -11911,7 +12115,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -11927,7 +12131,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -11952,7 +12156,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 )" echo extrac01.at:26 >"$at_check_line_file" @@ -11970,7 +12174,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -11986,7 +12190,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -12011,7 +12215,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 )" echo extrac01.at:26 >"$at_check_line_file" @@ -12029,7 +12233,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -12045,7 +12249,7 @@ rm -rf * mkdir directory touch directory/file tar cf archive directory || exit 1 -tar xf archive || exit 1 +tar xf archive --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -12064,17 +12268,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_24 -#AT_START_25 -# 25. extrac02.at:23: extracting symlinks over an existing file +#AT_STOP_26 +#AT_START_27 +# 27. extrac02.at:23: extracting symlinks over an existing file at_setup_line='extrac02.at:23' at_desc="extracting symlinks over an existing file" -$at_quiet $as_echo_n " 25: $at_desc " +$at_quiet $as_echo_n " 27: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "25. extrac02.at:23: testing ..." + $as_echo "27. extrac02.at:23: testing ..." $at_traceon @@ -12415,17 +12619,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_25 -#AT_START_26 -# 26. extrac03.at:23: extraction loops +#AT_STOP_27 +#AT_START_28 +# 28. extrac03.at:23: extraction loops at_setup_line='extrac03.at:23' at_desc="extraction loops" -$at_quiet $as_echo_n " 26: $at_desc " +$at_quiet $as_echo_n " 28: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "26. extrac03.at:23: testing ..." + $as_echo "28. extrac03.at:23: testing ..." $at_traceon @@ -12445,7 +12649,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive)" +tar -xPvf archive --warning=no-timestamp)" echo extrac03.at:26 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' @@ -12462,7 +12666,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stder1" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else ( :; @@ -12477,7 +12681,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stderr" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false @@ -12505,7 +12709,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive)" +tar -xPvf archive --warning=no-timestamp)" echo extrac03.at:26 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' @@ -12522,7 +12726,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stder1" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else ( :; @@ -12537,7 +12741,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stderr" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false @@ -12565,7 +12769,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive)" +tar -xPvf archive --warning=no-timestamp)" echo extrac03.at:26 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' @@ -12582,7 +12786,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stder1" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else ( :; @@ -12597,7 +12801,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stderr" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false @@ -12625,7 +12829,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive)" +tar -xPvf archive --warning=no-timestamp)" echo extrac03.at:26 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' @@ -12642,7 +12846,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stder1" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else ( :; @@ -12657,7 +12861,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stderr" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false @@ -12685,7 +12889,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive)" +tar -xPvf archive --warning=no-timestamp)" echo extrac03.at:26 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' @@ -12702,7 +12906,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stder1" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else ( :; @@ -12717,7 +12921,7 @@ rm -rf * mkdir directory tar -cPvf archive directory/../directory echo separator -tar -xPvf archive) ) >"$at_stdout" 2>"$at_stderr" +tar -xPvf archive --warning=no-timestamp) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false @@ -12739,17 +12943,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_26 -#AT_START_27 -# 27. extrac04.at:23: extract + fnmatch +#AT_STOP_28 +#AT_START_29 +# 29. extrac04.at:23: extract + fnmatch at_setup_line='extrac04.at:23' at_desc="extract + fnmatch" -$at_quiet $as_echo_n " 27: $at_desc " +$at_quiet $as_echo_n " 29: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "27. extrac04.at:23: testing ..." + $as_echo "29. extrac04.at:23: testing ..." $at_traceon @@ -13243,17 +13447,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_27 -#AT_START_28 -# 28. extrac05.at:30: extracting selected members from pax +#AT_STOP_29 +#AT_START_30 +# 30. extrac05.at:30: extracting selected members from pax at_setup_line='extrac05.at:30' at_desc="extracting selected members from pax" -$at_quiet $as_echo_n " 28: $at_desc " +$at_quiet $as_echo_n " 30: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "28. extrac05.at:30: testing ..." + $as_echo "30. extrac05.at:30: testing ..." $at_traceon @@ -13287,7 +13491,7 @@ tar cf archive jeden dwa trzy cztery || exit 1 mkdir dir cd dir -tar xvfT ../archive ../../list || exit 1 +tar xvfT ../archive ../../list --warning=no-timestamp || exit 1 cd .. )" @@ -13315,7 +13519,7 @@ tar cf archive jeden dwa trzy cztery || exit 1 mkdir dir cd dir -tar xvfT ../archive ../../list || exit 1 +tar xvfT ../archive ../../list --warning=no-timestamp || exit 1 cd .. ) ) >"$at_stdout" 2>"$at_stder1" @@ -13341,7 +13545,7 @@ tar cf archive jeden dwa trzy cztery || exit 1 mkdir dir cd dir -tar xvfT ../archive ../../list || exit 1 +tar xvfT ../archive ../../list --warning=no-timestamp || exit 1 cd .. ) ) >"$at_stdout" 2>"$at_stderr" @@ -13365,17 +13569,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_28 -#AT_START_29 -# 29. extrac06.at:33: mode of extracted directories +#AT_STOP_30 +#AT_START_31 +# 31. extrac06.at:33: mode of extracted directories at_setup_line='extrac06.at:33' at_desc="mode of extracted directories" -$at_quiet $as_echo_n " 29: $at_desc " +$at_quiet $as_echo_n " 31: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "29. extrac06.at:33: testing ..." + $as_echo "31. extrac06.at:33: testing ..." $at_traceon @@ -13412,10 +13616,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13453,10 +13657,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13492,10 +13696,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13545,10 +13749,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13586,10 +13790,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13625,10 +13829,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13678,10 +13882,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13719,10 +13923,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13758,10 +13962,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13811,10 +14015,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13852,10 +14056,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13891,10 +14095,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13944,10 +14148,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -13985,10 +14189,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -14024,10 +14228,10 @@ chmod 755 directory genfile --stat=mode:777 directory # ... and attempt to restore it twice -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory -tar xf arc directory +tar xf arc directory --warning=no-timestamp genfile --stat=mode:777 directory # After both restores, the directory mode should be 755 @@ -14054,17 +14258,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_29 -#AT_START_30 -# 30. extrac07.at:27: extracting symlinks to a read-only dir +#AT_STOP_31 +#AT_START_32 +# 32. extrac07.at:27: extracting symlinks to a read-only dir at_setup_line='extrac07.at:27' at_desc="extracting symlinks to a read-only dir" -$at_quiet $as_echo_n " 30: $at_desc " +$at_quiet $as_echo_n " 32: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "30. extrac07.at:27: testing ..." + $as_echo "32. extrac07.at:27: testing ..." $at_traceon @@ -14073,21 +14277,30 @@ echo "# -*- compilation -*-" >> "$at_group_log" { $at_traceoff $as_echo "$at_srcdir/extrac07.at:30: -mkdir v7 -(cd v7 -TEST_TAR_FORMAT=v7 +mkdir ustar +(cd ustar +TEST_TAR_FORMAT=ustar export TEST_TAR_FORMAT -TAR_OPTIONS=\"-H v7\" +TAR_OPTIONS=\"-H ustar\" export TAR_OPTIONS rm -rf * + +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + echo Prepare the directory mkdir dir genfile -f foo cd dir ln -s ../foo . cd .. -chmod -w dir +chmod a-w dir echo Create the archive tar cf archive dir || exit 1 @@ -14103,21 +14316,30 @@ echo extrac07.at:30 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then ( $at_traceon; -mkdir v7 -(cd v7 -TEST_TAR_FORMAT=v7 +mkdir ustar +(cd ustar +TEST_TAR_FORMAT=ustar export TEST_TAR_FORMAT -TAR_OPTIONS="-H v7" +TAR_OPTIONS="-H ustar" export TAR_OPTIONS rm -rf * + +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + echo Prepare the directory mkdir dir genfile -f foo cd dir ln -s ../foo . cd .. -chmod -w dir +chmod a-w dir echo Create the archive tar cf archive dir || exit 1 @@ -14131,21 +14353,30 @@ tar -C out -xvf archive at_func_filter_trace $? else ( :; -mkdir v7 -(cd v7 -TEST_TAR_FORMAT=v7 +mkdir ustar +(cd ustar +TEST_TAR_FORMAT=ustar export TEST_TAR_FORMAT -TAR_OPTIONS="-H v7" +TAR_OPTIONS="-H ustar" export TAR_OPTIONS rm -rf * + +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + echo Prepare the directory mkdir dir genfile -f foo cd dir ln -s ../foo . cd .. -chmod -w dir +chmod a-w dir echo Create the archive tar cf archive dir || exit 1 @@ -14168,435 +14399,6 @@ dir/foo " | \ $at_diff - "$at_stdout" || at_failed=: at_func_check_status 0 $at_status "$at_srcdir/extrac07.at:30" -if $at_failed; then - : -else - ustar -fi - -$at_failed && at_func_log_failure -$at_traceon; } - - { $at_traceoff -$as_echo "$at_srcdir/extrac07.at:30: -mkdir oldgnu -(cd oldgnu -TEST_TAR_FORMAT=oldgnu -export TEST_TAR_FORMAT -TAR_OPTIONS=\"-H oldgnu\" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -)" -echo extrac07.at:30 >"$at_check_line_file" - -if { echo 'Not enabling shell tracing (command contains an embedded newline)' - false; }; then - ( $at_traceon; -mkdir oldgnu -(cd oldgnu -TEST_TAR_FORMAT=oldgnu -export TEST_TAR_FORMAT -TAR_OPTIONS="-H oldgnu" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -) ) >"$at_stdout" 2>"$at_stder1" - at_func_filter_trace $? -else - ( :; -mkdir oldgnu -(cd oldgnu -TEST_TAR_FORMAT=oldgnu -export TEST_TAR_FORMAT -TAR_OPTIONS="-H oldgnu" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -) ) >"$at_stdout" 2>"$at_stderr" -fi -at_status=$? -at_failed=false -at_func_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Prepare the directory -Create the archive -Extract -dir/ -dir/foo -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/extrac07.at:30" -if $at_failed; then - : -else - ustar -fi - -$at_failed && at_func_log_failure -$at_traceon; } - - { $at_traceoff -$as_echo "$at_srcdir/extrac07.at:30: -mkdir ustar -(cd ustar -TEST_TAR_FORMAT=ustar -export TEST_TAR_FORMAT -TAR_OPTIONS=\"-H ustar\" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -)" -echo extrac07.at:30 >"$at_check_line_file" - -if { echo 'Not enabling shell tracing (command contains an embedded newline)' - false; }; then - ( $at_traceon; -mkdir ustar -(cd ustar -TEST_TAR_FORMAT=ustar -export TEST_TAR_FORMAT -TAR_OPTIONS="-H ustar" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -) ) >"$at_stdout" 2>"$at_stder1" - at_func_filter_trace $? -else - ( :; -mkdir ustar -(cd ustar -TEST_TAR_FORMAT=ustar -export TEST_TAR_FORMAT -TAR_OPTIONS="-H ustar" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -) ) >"$at_stdout" 2>"$at_stderr" -fi -at_status=$? -at_failed=false -at_func_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Prepare the directory -Create the archive -Extract -dir/ -dir/foo -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/extrac07.at:30" -if $at_failed; then - : -else - ustar -fi - -$at_failed && at_func_log_failure -$at_traceon; } - - { $at_traceoff -$as_echo "$at_srcdir/extrac07.at:30: -mkdir posix -(cd posix -TEST_TAR_FORMAT=posix -export TEST_TAR_FORMAT -TAR_OPTIONS=\"-H posix\" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -)" -echo extrac07.at:30 >"$at_check_line_file" - -if { echo 'Not enabling shell tracing (command contains an embedded newline)' - false; }; then - ( $at_traceon; -mkdir posix -(cd posix -TEST_TAR_FORMAT=posix -export TEST_TAR_FORMAT -TAR_OPTIONS="-H posix" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -) ) >"$at_stdout" 2>"$at_stder1" - at_func_filter_trace $? -else - ( :; -mkdir posix -(cd posix -TEST_TAR_FORMAT=posix -export TEST_TAR_FORMAT -TAR_OPTIONS="-H posix" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -) ) >"$at_stdout" 2>"$at_stderr" -fi -at_status=$? -at_failed=false -at_func_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Prepare the directory -Create the archive -Extract -dir/ -dir/foo -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/extrac07.at:30" -if $at_failed; then - : -else - ustar -fi - -$at_failed && at_func_log_failure -$at_traceon; } - - { $at_traceoff -$as_echo "$at_srcdir/extrac07.at:30: -mkdir gnu -(cd gnu -TEST_TAR_FORMAT=gnu -export TEST_TAR_FORMAT -TAR_OPTIONS=\"-H gnu\" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -)" -echo extrac07.at:30 >"$at_check_line_file" - -if { echo 'Not enabling shell tracing (command contains an embedded newline)' - false; }; then - ( $at_traceon; -mkdir gnu -(cd gnu -TEST_TAR_FORMAT=gnu -export TEST_TAR_FORMAT -TAR_OPTIONS="-H gnu" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -) ) >"$at_stdout" 2>"$at_stder1" - at_func_filter_trace $? -else - ( :; -mkdir gnu -(cd gnu -TEST_TAR_FORMAT=gnu -export TEST_TAR_FORMAT -TAR_OPTIONS="-H gnu" -export TAR_OPTIONS -rm -rf * - -echo Prepare the directory -mkdir dir -genfile -f foo -cd dir -ln -s ../foo . -cd .. -chmod -w dir - -echo Create the archive -tar cf archive dir || exit 1 - -chmod +w dir - -echo Extract -mkdir out -tar -C out -xvf archive -) ) >"$at_stdout" 2>"$at_stderr" -fi -at_status=$? -at_failed=false -at_func_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Prepare the directory -Create the archive -Extract -dir/ -dir/foo -" | \ - $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/extrac07.at:30" -if $at_failed; then - : -else - ustar -fi $at_failed && at_func_log_failure $at_traceon; } @@ -14608,17 +14410,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_30 -#AT_START_31 -# 31. extrac08.at:33: restoring mode on existing directory +#AT_STOP_32 +#AT_START_33 +# 33. extrac08.at:33: restoring mode on existing directory at_setup_line='extrac08.at:33' at_desc="restoring mode on existing directory" -$at_quiet $as_echo_n " 31: $at_desc " +$at_quiet $as_echo_n " 33: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "31. extrac08.at:33: testing ..." + $as_echo "33. extrac08.at:33: testing ..." $at_traceon @@ -14641,7 +14443,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir )" echo extrac08.at:36 >"$at_check_line_file" @@ -14663,7 +14465,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -14683,7 +14485,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -14716,7 +14518,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir )" echo extrac08.at:36 >"$at_check_line_file" @@ -14738,7 +14540,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -14758,7 +14560,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -14791,7 +14593,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir )" echo extrac08.at:36 >"$at_check_line_file" @@ -14813,7 +14615,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -14833,7 +14635,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -14866,7 +14668,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir )" echo extrac08.at:36 >"$at_check_line_file" @@ -14888,7 +14690,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -14908,7 +14710,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -14941,7 +14743,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir )" echo extrac08.at:36 >"$at_check_line_file" @@ -14963,7 +14765,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -14983,7 +14785,7 @@ chmod 755 dir echo bla > dir/file tar cf test.tar dir chmod 700 dir -tar xfv test.tar +tar xfv test.tar --warning=no-timestamp genfile --stat=mode.777 dir ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -15007,17 +14809,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_31 -#AT_START_32 -# 32. label01.at:19: single-volume label -at_setup_line='label01.at:19' -at_desc="single-volume label" -$at_quiet $as_echo_n " 32: $at_desc " +#AT_STOP_33 +#AT_START_34 +# 34. extrac09.at:22: no need to save dir with unreadable . and .. +at_setup_line='extrac09.at:22' +at_desc="no need to save dir with unreadable . and .." +$at_quiet $as_echo_n " 34: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "32. label01.at:19: testing ..." + $as_echo "34. extrac09.at:22: testing ..." $at_traceon @@ -15025,7 +14827,7 @@ echo "# -*- compilation -*-" >> "$at_group_log" { $at_traceoff -$as_echo "$at_srcdir/label01.at:22: +$as_echo "$at_srcdir/extrac09.at:25: mkdir gnu (cd gnu TEST_TAR_FORMAT=gnu @@ -15034,12 +14836,31 @@ TAR_OPTIONS=\"-H gnu\" export TAR_OPTIONS rm -rf * -genfile --file foo -genfile --file bar -tar -cf archive --label=Test foo bar -tar tf archive + +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + +mkdir dir +mkdir dir/sub +mkdir dir/sub/extract +genfile --file dir/sub/f +cd dir/sub + +tar -cf archive.tar f + +chmod a-r . .. +tar -xvf archive.tar -C extract f +status=\$? +chmod a+r . .. +cmp f extract/f || status=\$? +exit \$status )" -echo label01.at:22 >"$at_check_line_file" +echo extrac09.at:25 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then @@ -15052,10 +14873,29 @@ TAR_OPTIONS="-H gnu" export TAR_OPTIONS rm -rf * -genfile --file foo -genfile --file bar -tar -cf archive --label=Test foo bar -tar tf archive + +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + +mkdir dir +mkdir dir/sub +mkdir dir/sub/extract +genfile --file dir/sub/f +cd dir/sub + +tar -cf archive.tar f + +chmod a-r . .. +tar -xvf archive.tar -C extract f +status=$? +chmod a+r . .. +cmp f extract/f || status=$? +exit $status ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -15068,32 +14908,896 @@ TAR_OPTIONS="-H gnu" export TAR_OPTIONS rm -rf * -genfile --file foo -genfile --file bar -tar -cf archive --label=Test foo bar -tar tf archive + +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + +mkdir dir +mkdir dir/sub +mkdir dir/sub/extract +genfile --file dir/sub/f +cd dir/sub + +tar -cf archive.tar f + +chmod a-r . .. +tar -xvf archive.tar -C extract f +status=$? +chmod a+r . .. +cmp f extract/f || status=$? +exit $status ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Test -foo -bar +echo >>"$at_stdout"; $as_echo "f " | \ $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/label01.at:22" +at_func_check_status 0 $at_status "$at_srcdir/extrac09.at:25" $at_failed && at_func_log_failure $at_traceon; } - { $at_traceoff -$as_echo "$at_srcdir/label01.at:22: -mkdir oldgnu -(cd oldgnu -TEST_TAR_FORMAT=oldgnu + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_34 +#AT_START_35 +# 35. extrac10.at:27: -C and delayed setting of metadata +at_setup_line='extrac10.at:27' +at_desc="-C and delayed setting of metadata" +$at_quiet $as_echo_n " 35: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "35. extrac10.at:27: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/extrac10.at:30: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu export TEST_TAR_FORMAT -TAR_OPTIONS=\"-H oldgnu\" +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +mkdir d x x/y +echo foo >d/d1 +echo bar >e + +tar -cf archive.tar d e && +tar -xf archive.tar -C x d -C y e && +diff -r d x/d && +diff e x/y/e +)" +echo extrac10.at:30 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +mkdir d x x/y +echo foo >d/d1 +echo bar >e + +tar -cf archive.tar d e && +tar -xf archive.tar -C x d -C y e && +diff -r d x/d && +diff e x/y/e +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +mkdir d x x/y +echo foo >d/d1 +echo bar >e + +tar -cf archive.tar d e && +tar -xf archive.tar -C x d -C y e && +diff -r d x/d && +diff e x/y/e +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +at_func_diff_devnull "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/extrac10.at:30" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_35 +#AT_START_36 +# 36. extrac11.at:23: scarce file descriptors +at_setup_line='extrac11.at:23' +at_desc="scarce file descriptors" +$at_quiet $as_echo_n " 36: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "36. extrac11.at:23: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/extrac11.at:26: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +dirs='a + a/b + a/b/c + a/b/c/d + a/b/c/d/e + a/b/c/d/e/f + a/b/c/d/e/f/g + a/b/c/d/e/f/g/h + a/b/c/d/e/f/g/h/i + a/b/c/d/e/f/g/h/i/j + a/b/c/d/e/f/g/h/i/j/k +' +files= +mkdir \$dirs dest1 dest2 dest3 || exit +for dir in \$dirs; do + for file in X Y Z; do + echo \$file >\$dir/\$file || exit + files=\"\$files \$file\" + done +done + +# Check that \"ulimit\" itself works. +((ulimit -n 100 && + tar -cf archive1.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive1.tar -C dest1 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest1/a +) >/dev/null 2>&1 || + exit 77 + +# Another test that \"ulimit\" itself works: +# tar should fail when completely starved of file descriptors. +((ulimit -n 4 && + tar -cf archive2.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive2.tar -C dest2 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest2/a +) >/dev/null 2>&1 && + exit 77 + +# Tar should work when there are few, but enough, file descriptors. +((ulimit -n 10 && + tar -cf archive3.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive3.tar -C dest3 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest3/a >/dev/null 2>&1 +) || { diff -r a dest3/a; exit 1; } +)" +echo extrac11.at:26 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +dirs='a + a/b + a/b/c + a/b/c/d + a/b/c/d/e + a/b/c/d/e/f + a/b/c/d/e/f/g + a/b/c/d/e/f/g/h + a/b/c/d/e/f/g/h/i + a/b/c/d/e/f/g/h/i/j + a/b/c/d/e/f/g/h/i/j/k +' +files= +mkdir $dirs dest1 dest2 dest3 || exit +for dir in $dirs; do + for file in X Y Z; do + echo $file >$dir/$file || exit + files="$files $file" + done +done + +# Check that "ulimit" itself works. +((ulimit -n 100 && + tar -cf archive1.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive1.tar -C dest1 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest1/a +) >/dev/null 2>&1 || + exit 77 + +# Another test that "ulimit" itself works: +# tar should fail when completely starved of file descriptors. +((ulimit -n 4 && + tar -cf archive2.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive2.tar -C dest2 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest2/a +) >/dev/null 2>&1 && + exit 77 + +# Tar should work when there are few, but enough, file descriptors. +((ulimit -n 10 && + tar -cf archive3.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive3.tar -C dest3 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest3/a >/dev/null 2>&1 +) || { diff -r a dest3/a; exit 1; } +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +dirs='a + a/b + a/b/c + a/b/c/d + a/b/c/d/e + a/b/c/d/e/f + a/b/c/d/e/f/g + a/b/c/d/e/f/g/h + a/b/c/d/e/f/g/h/i + a/b/c/d/e/f/g/h/i/j + a/b/c/d/e/f/g/h/i/j/k +' +files= +mkdir $dirs dest1 dest2 dest3 || exit +for dir in $dirs; do + for file in X Y Z; do + echo $file >$dir/$file || exit + files="$files $file" + done +done + +# Check that "ulimit" itself works. +((ulimit -n 100 && + tar -cf archive1.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive1.tar -C dest1 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest1/a +) >/dev/null 2>&1 || + exit 77 + +# Another test that "ulimit" itself works: +# tar should fail when completely starved of file descriptors. +((ulimit -n 4 && + tar -cf archive2.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive2.tar -C dest2 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest2/a +) >/dev/null 2>&1 && + exit 77 + +# Tar should work when there are few, but enough, file descriptors. +((ulimit -n 10 && + tar -cf archive3.tar a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- && + tar -xf archive3.tar -C dest3 a 3<&- 4<&- 5<&- 6<&- 7<&- 8<&- 9<&- + ) && + diff -r a dest3/a >/dev/null 2>&1 +) || { diff -r a dest3/a; exit 1; } +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +at_func_diff_devnull "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/extrac11.at:26" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_36 +#AT_START_37 +# 37. extrac12.at:23: extract dot permissions +at_setup_line='extrac12.at:23' +at_desc="extract dot permissions" +$at_quiet $as_echo_n " 37: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "37. extrac12.at:23: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/extrac12.at:26: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +mkdir src dst +echo file1 >src/file1 +echo file2 >src/file2 +chmod a-w src + +tar --no-recursion -cf archive.tar -C src . ./file1 file2 && +tar -xf archive.tar -C dst && +cmp src/file1 dst/file1 && +cmp src/file2 dst/file2 +)" +echo extrac12.at:26 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +mkdir src dst +echo file1 >src/file1 +echo file2 >src/file2 +chmod a-w src + +tar --no-recursion -cf archive.tar -C src . ./file1 file2 && +tar -xf archive.tar -C dst && +cmp src/file1 dst/file1 && +cmp src/file2 dst/file2 +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +mkdir src dst +echo file1 >src/file1 +echo file2 >src/file2 +chmod a-w src + +tar --no-recursion -cf archive.tar -C src . ./file1 file2 && +tar -xf archive.tar -C dst && +cmp src/file1 dst/file1 && +cmp src/file2 dst/file2 +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +at_func_diff_devnull "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/extrac12.at:26" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_37 +#AT_START_38 +# 38. extrac13.at:24: extract over symlinks +at_setup_line='extrac13.at:24' +at_desc="extract over symlinks" +$at_quiet $as_echo_n " 38: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "38. extrac13.at:24: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/extrac13.at:27: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +mkdir src dst1 dst2 dst3 +echo file1 >src/file1 +ln -s target1 dst1/file1 +echo target1 >dst1/target1 +echo target1 >target1 + +tar -cf archive.tar -C src . && +tar -xf archive.tar -C dst1 --warning=no-timestamp && +diff -c src/file1 dst1/file1 && +diff -c target1 dst1/target1 + +ln -s target1 dst2/file1 +echo target1 >dst2/target1 +tar --overwrite -xf archive.tar -C dst2 --warning=no-timestamp && +diff -c src/file1 dst2/file1 && +diff -c target1 dst2/target1 + +ln -s target1 dst3/file1 +echo target1 >dst3/target1 +tar --overwrite -xhf archive.tar -C dst3 --warning=no-timestamp && +diff -c src/file1 dst3/file1 && +diff -c src/file1 dst3/target1 +)" +echo extrac13.at:27 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +mkdir src dst1 dst2 dst3 +echo file1 >src/file1 +ln -s target1 dst1/file1 +echo target1 >dst1/target1 +echo target1 >target1 + +tar -cf archive.tar -C src . && +tar -xf archive.tar -C dst1 --warning=no-timestamp && +diff -c src/file1 dst1/file1 && +diff -c target1 dst1/target1 + +ln -s target1 dst2/file1 +echo target1 >dst2/target1 +tar --overwrite -xf archive.tar -C dst2 --warning=no-timestamp && +diff -c src/file1 dst2/file1 && +diff -c target1 dst2/target1 + +ln -s target1 dst3/file1 +echo target1 >dst3/target1 +tar --overwrite -xhf archive.tar -C dst3 --warning=no-timestamp && +diff -c src/file1 dst3/file1 && +diff -c src/file1 dst3/target1 +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +mkdir src dst1 dst2 dst3 +echo file1 >src/file1 +ln -s target1 dst1/file1 +echo target1 >dst1/target1 +echo target1 >target1 + +tar -cf archive.tar -C src . && +tar -xf archive.tar -C dst1 --warning=no-timestamp && +diff -c src/file1 dst1/file1 && +diff -c target1 dst1/target1 + +ln -s target1 dst2/file1 +echo target1 >dst2/target1 +tar --overwrite -xf archive.tar -C dst2 --warning=no-timestamp && +diff -c src/file1 dst2/file1 && +diff -c target1 dst2/target1 + +ln -s target1 dst3/file1 +echo target1 >dst3/target1 +tar --overwrite -xhf archive.tar -C dst3 --warning=no-timestamp && +diff -c src/file1 dst3/file1 && +diff -c src/file1 dst3/target1 +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +at_func_diff_devnull "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/extrac13.at:27" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_38 +#AT_START_39 +# 39. extrac14.at:23: extract -C symlink +at_setup_line='extrac14.at:23' +at_desc="extract -C symlink" +$at_quiet $as_echo_n " 39: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "39. extrac14.at:23: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/extrac14.at:26: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +mkdir dest +ln -s dest symlink +echo foo >foo +tar -cf archive.tar foo && +tar -xf archive.tar -C symlink --warning=no-timestamp && +cmp foo dest/foo +)" +echo extrac14.at:26 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +mkdir dest +ln -s dest symlink +echo foo >foo +tar -cf archive.tar foo && +tar -xf archive.tar -C symlink --warning=no-timestamp && +cmp foo dest/foo +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +mkdir dest +ln -s dest symlink +echo foo >foo +tar -cf archive.tar foo && +tar -xf archive.tar -C symlink --warning=no-timestamp && +cmp foo dest/foo +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +at_func_diff_devnull "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/extrac14.at:26" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_39 +#AT_START_40 +# 40. extrac15.at:23: extract parent mkdir failure +at_setup_line='extrac15.at:23' +at_desc="extract parent mkdir failure" +$at_quiet $as_echo_n " 40: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "40. extrac15.at:23: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/extrac15.at:26: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + + +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + +mkdir src src/a src/a/b dest dest/a +touch src/a/b/c +chmod a-w dest/a + +tar -cf archive.tar -C src a/b/c && +if tar -xf archive.tar -C dest a/b/c +then (exit 1) +else (exit 0) +fi +)" +echo extrac15.at:26 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + + +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + +mkdir src src/a src/a/b dest dest/a +touch src/a/b/c +chmod a-w dest/a + +tar -cf archive.tar -C src a/b/c && +if tar -xf archive.tar -C dest a/b/c +then (exit 1) +else (exit 0) +fi +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + + +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + +mkdir src src/a src/a/b dest dest/a +touch src/a/b/c +chmod a-w dest/a + +tar -cf archive.tar -C src a/b/c && +if tar -xf archive.tar -C dest a/b/c +then (exit 1) +else (exit 0) +fi +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "tar: a/b: Cannot mkdir: Permission denied +tar: a/b/c: Cannot open: No such file or directory +tar: Exiting with failure status due to previous errors +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_func_diff_devnull "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/extrac15.at:26" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_40 +#AT_START_41 +# 41. label01.at:19: single-volume label +at_setup_line='label01.at:19' +at_desc="single-volume label" +$at_quiet $as_echo_n " 41: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "41. label01.at:19: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/label01.at:22: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +genfile --file foo +genfile --file bar +tar -cf archive --label=Test foo bar +tar tf archive +)" +echo label01.at:22 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +genfile --file foo +genfile --file bar +tar -cf archive --label=Test foo bar +tar tf archive +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +genfile --file foo +genfile --file bar +tar -cf archive --label=Test foo bar +tar tf archive +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "Test +foo +bar +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label01.at:22" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/label01.at:22: +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H oldgnu\" export TAR_OPTIONS rm -rf * @@ -15220,17 +15924,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_32 -#AT_START_33 -# 33. label02.at:19: multi-volume label +#AT_STOP_41 +#AT_START_42 +# 42. label02.at:19: multi-volume label at_setup_line='label02.at:19' at_desc="multi-volume label" -$at_quiet $as_echo_n " 33: $at_desc " +$at_quiet $as_echo_n " 42: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "33. label02.at:19: testing ..." + $as_echo "42. label02.at:19: testing ..." $at_traceon @@ -15308,7 +16012,317 @@ $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/label02.at:22: +$as_echo "$at_srcdir/label02.at:22: +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H oldgnu\" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --length 0 --file foo +genfile --length 12288 --file bar +genfile --length 12288 --file baz +tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz +tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +)" +echo label02.at:22 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --length 0 --file foo +genfile --length 12288 --file bar +genfile --length 12288 --file baz +tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz +tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --length 0 --file foo +genfile --length 12288 --file bar +genfile --length 12288 --file baz +tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz +tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "Test Volume 1 +foo +bar +baz +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label02.at:22" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/label02.at:22: +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H posix\" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --length 0 --file foo +genfile --length 12288 --file bar +genfile --length 12288 --file baz +tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz +tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +)" +echo label02.at:22 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS="-H posix" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --length 0 --file foo +genfile --length 12288 --file bar +genfile --length 12288 --file baz +tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz +tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS="-H posix" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --length 0 --file foo +genfile --length 12288 --file bar +genfile --length 12288 --file baz +tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz +tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "Test Volume 1 +foo +bar +baz +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label02.at:22" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_42 +#AT_START_43 +# 43. label03.at:25: test-label option +at_setup_line='label03.at:25' +at_desc="test-label option" +$at_quiet $as_echo_n " 43: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "43. label03.at:25: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/label03.at:28: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho \"# Display label\" +tar --test-label --file=iamanarchive; echo \$? +decho \"# Display label: unlabeled\" +tar --test-label --file=unlabeled.tar; echo \$? +decho \"# Test label: success\" +tar --test-label --file=iamanarchive 'iamalabel'; echo \$? +decho \"# Test label: failure\" +tar --test-label --file=iamanarchive 'amalabel'; echo \$? +decho \"# Test label: unlabeled\" +tar --test-label --file=unlabeled.tar 'amalabel'; echo \$? +decho \"# Test label, verbose: success\" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo \$? +decho \"# Test label, verbose: failure\" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo \$? +decho \"# Test label: multiple arguments\" +tar --test-label --file=iamanarchive a iamalabel b; echo \$? +decho \"# Test label: wildcards\" +tar --test-label --file=iamanarchive --wildcards '*label'; echo \$? +)" +echo label03.at:28 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho "# Display label" +tar --test-label --file=iamanarchive; echo $? +decho "# Display label: unlabeled" +tar --test-label --file=unlabeled.tar; echo $? +decho "# Test label: success" +tar --test-label --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label: failure" +tar --test-label --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: unlabeled" +tar --test-label --file=unlabeled.tar 'amalabel'; echo $? +decho "# Test label, verbose: success" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label, verbose: failure" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: multiple arguments" +tar --test-label --file=iamanarchive a iamalabel b; echo $? +decho "# Test label: wildcards" +tar --test-label --file=iamanarchive --wildcards '*label'; echo $? +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho "# Display label" +tar --test-label --file=iamanarchive; echo $? +decho "# Display label: unlabeled" +tar --test-label --file=unlabeled.tar; echo $? +decho "# Test label: success" +tar --test-label --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label: failure" +tar --test-label --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: unlabeled" +tar --test-label --file=unlabeled.tar 'amalabel'; echo $? +decho "# Test label, verbose: success" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label, verbose: failure" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: multiple arguments" +tar --test-label --file=iamanarchive a iamalabel b; echo $? +decho "# Test label: wildcards" +tar --test-label --file=iamanarchive --wildcards '*label'; echo $? +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "# Display label +# Display label: unlabeled +# Test label: success +# Test label: failure +# Test label: unlabeled +# Test label, verbose: success +# Test label, verbose: failure +tar: Archive label mismatch +# Test label: multiple arguments +# Test label: wildcards +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "# Display label +iamalabel +0 +# Display label: unlabeled +0 +# Test label: success +0 +# Test label: failure +1 +# Test label: unlabeled +1 +# Test label, verbose: success +iamalabel +0 +# Test label, verbose: failure +iamalabel +1 +# Test label: multiple arguments +0 +# Test label: wildcards +0 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label03.at:28" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/label03.at:28: mkdir oldgnu (cd oldgnu TEST_TAR_FORMAT=oldgnu @@ -15318,13 +16332,413 @@ export TAR_OPTIONS rm -rf * exec <&- -genfile --length 0 --file foo -genfile --length 12288 --file bar -genfile --length 12288 --file baz -tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz -tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho \"# Display label\" +tar --test-label --file=iamanarchive; echo \$? +decho \"# Display label: unlabeled\" +tar --test-label --file=unlabeled.tar; echo \$? +decho \"# Test label: success\" +tar --test-label --file=iamanarchive 'iamalabel'; echo \$? +decho \"# Test label: failure\" +tar --test-label --file=iamanarchive 'amalabel'; echo \$? +decho \"# Test label: unlabeled\" +tar --test-label --file=unlabeled.tar 'amalabel'; echo \$? +decho \"# Test label, verbose: success\" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo \$? +decho \"# Test label, verbose: failure\" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo \$? +decho \"# Test label: multiple arguments\" +tar --test-label --file=iamanarchive a iamalabel b; echo \$? +decho \"# Test label: wildcards\" +tar --test-label --file=iamanarchive --wildcards '*label'; echo \$? +)" +echo label03.at:28 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho "# Display label" +tar --test-label --file=iamanarchive; echo $? +decho "# Display label: unlabeled" +tar --test-label --file=unlabeled.tar; echo $? +decho "# Test label: success" +tar --test-label --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label: failure" +tar --test-label --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: unlabeled" +tar --test-label --file=unlabeled.tar 'amalabel'; echo $? +decho "# Test label, verbose: success" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label, verbose: failure" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: multiple arguments" +tar --test-label --file=iamanarchive a iamalabel b; echo $? +decho "# Test label: wildcards" +tar --test-label --file=iamanarchive --wildcards '*label'; echo $? +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho "# Display label" +tar --test-label --file=iamanarchive; echo $? +decho "# Display label: unlabeled" +tar --test-label --file=unlabeled.tar; echo $? +decho "# Test label: success" +tar --test-label --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label: failure" +tar --test-label --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: unlabeled" +tar --test-label --file=unlabeled.tar 'amalabel'; echo $? +decho "# Test label, verbose: success" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label, verbose: failure" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: multiple arguments" +tar --test-label --file=iamanarchive a iamalabel b; echo $? +decho "# Test label: wildcards" +tar --test-label --file=iamanarchive --wildcards '*label'; echo $? +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "# Display label +# Display label: unlabeled +# Test label: success +# Test label: failure +# Test label: unlabeled +# Test label, verbose: success +# Test label, verbose: failure +tar: Archive label mismatch +# Test label: multiple arguments +# Test label: wildcards +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "# Display label +iamalabel +0 +# Display label: unlabeled +0 +# Test label: success +0 +# Test label: failure +1 +# Test label: unlabeled +1 +# Test label, verbose: success +iamalabel +0 +# Test label, verbose: failure +iamalabel +1 +# Test label: multiple arguments +0 +# Test label: wildcards +0 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label03.at:28" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/label03.at:28: +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H posix\" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho \"# Display label\" +tar --test-label --file=iamanarchive; echo \$? +decho \"# Display label: unlabeled\" +tar --test-label --file=unlabeled.tar; echo \$? +decho \"# Test label: success\" +tar --test-label --file=iamanarchive 'iamalabel'; echo \$? +decho \"# Test label: failure\" +tar --test-label --file=iamanarchive 'amalabel'; echo \$? +decho \"# Test label: unlabeled\" +tar --test-label --file=unlabeled.tar 'amalabel'; echo \$? +decho \"# Test label, verbose: success\" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo \$? +decho \"# Test label, verbose: failure\" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo \$? +decho \"# Test label: multiple arguments\" +tar --test-label --file=iamanarchive a iamalabel b; echo \$? +decho \"# Test label: wildcards\" +tar --test-label --file=iamanarchive --wildcards '*label'; echo \$? +)" +echo label03.at:28 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS="-H posix" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho "# Display label" +tar --test-label --file=iamanarchive; echo $? +decho "# Display label: unlabeled" +tar --test-label --file=unlabeled.tar; echo $? +decho "# Test label: success" +tar --test-label --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label: failure" +tar --test-label --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: unlabeled" +tar --test-label --file=unlabeled.tar 'amalabel'; echo $? +decho "# Test label, verbose: success" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label, verbose: failure" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: multiple arguments" +tar --test-label --file=iamanarchive a iamalabel b; echo $? +decho "# Test label: wildcards" +tar --test-label --file=iamanarchive --wildcards '*label'; echo $? +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS="-H posix" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +tar -c --label='iamalabel' --file iamanarchive file +tar -c --file unlabeled.tar file +decho "# Display label" +tar --test-label --file=iamanarchive; echo $? +decho "# Display label: unlabeled" +tar --test-label --file=unlabeled.tar; echo $? +decho "# Test label: success" +tar --test-label --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label: failure" +tar --test-label --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: unlabeled" +tar --test-label --file=unlabeled.tar 'amalabel'; echo $? +decho "# Test label, verbose: success" +tar --test-label --verbose --file=iamanarchive 'iamalabel'; echo $? +decho "# Test label, verbose: failure" +tar --test-label --verbose --file=iamanarchive 'amalabel'; echo $? +decho "# Test label: multiple arguments" +tar --test-label --file=iamanarchive a iamalabel b; echo $? +decho "# Test label: wildcards" +tar --test-label --file=iamanarchive --wildcards '*label'; echo $? +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "# Display label +# Display label: unlabeled +# Test label: success +# Test label: failure +# Test label: unlabeled +# Test label, verbose: success +# Test label, verbose: failure +tar: Archive label mismatch +# Test label: multiple arguments +# Test label: wildcards +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "# Display label +iamalabel +0 +# Display label: unlabeled +0 +# Test label: success +0 +# Test label: failure +1 +# Test label: unlabeled +1 +# Test label, verbose: success +iamalabel +0 +# Test label, verbose: failure +iamalabel +1 +# Test label: multiple arguments +0 +# Test label: wildcards +0 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label03.at:28" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_43 +#AT_START_44 +# 44. label04.at:25: label with non-create option +at_setup_line='label04.at:25' +at_desc="label with non-create option" +$at_quiet $as_echo_n " 44: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "44. label04.at:25: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/label04.at:28: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho \"# Create volume\" +tar -c -f archive --label='New volume' file +decho \"# Update: wrong label\" +tar -rf archive --label='My volume' file; echo \$? +decho \"# Update: right label\" +tar -rf archive --label='New volume' file )" -echo label02.at:22 >"$at_check_line_file" +echo label04.at:28 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive --label='New volume' file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive --label='New volume' file +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive --label='New volume' file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive --label='New volume' file +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "# Create volume +# Update: wrong label +tar: Volume \`New volume' does not match \`My volume' +tar: Error is not recoverable: exiting now +# Update: right label +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "# Create volume +# Update: wrong label +2 +# Update: right label +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label04.at:28" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/label04.at:28: +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H oldgnu\" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho \"# Create volume\" +tar -c -f archive --label='New volume' file +decho \"# Update: wrong label\" +tar -rf archive --label='My volume' file; echo \$? +decho \"# Update: right label\" +tar -rf archive --label='New volume' file +)" +echo label04.at:28 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then @@ -15338,11 +16752,13 @@ export TAR_OPTIONS rm -rf * exec <&- -genfile --length 0 --file foo -genfile --length 12288 --file bar -genfile --length 12288 --file baz -tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz -tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +genfile --file file +decho "# Create volume" +tar -c -f archive --label='New volume' file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive --label='New volume' file ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -15356,29 +16772,37 @@ export TAR_OPTIONS rm -rf * exec <&- -genfile --length 0 --file foo -genfile --length 12288 --file bar -genfile --length 12288 --file baz -tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz -tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +genfile --file file +decho "# Create volume" +tar -c -f archive --label='New volume' file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive --label='New volume' file ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false -at_func_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Test Volume 1 -foo -bar -baz +echo >>"$at_stderr"; $as_echo "# Create volume +# Update: wrong label +tar: Volume \`New volume' does not match \`My volume' +tar: Error is not recoverable: exiting now +# Update: right label +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "# Create volume +# Update: wrong label +2 +# Update: right label " | \ $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/label02.at:22" +at_func_check_status 0 $at_status "$at_srcdir/label04.at:28" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/label02.at:22: +$as_echo "$at_srcdir/label04.at:28: mkdir posix (cd posix TEST_TAR_FORMAT=posix @@ -15388,13 +16812,15 @@ export TAR_OPTIONS rm -rf * exec <&- -genfile --length 0 --file foo -genfile --length 12288 --file bar -genfile --length 12288 --file baz -tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz -tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +genfile --file file +decho \"# Create volume\" +tar -c -f archive --label='New volume' file +decho \"# Update: wrong label\" +tar -rf archive --label='My volume' file; echo \$? +decho \"# Update: right label\" +tar -rf archive --label='New volume' file )" -echo label02.at:22 >"$at_check_line_file" +echo label04.at:28 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then @@ -15408,11 +16834,13 @@ export TAR_OPTIONS rm -rf * exec <&- -genfile --length 0 --file foo -genfile --length 12288 --file bar -genfile --length 12288 --file baz -tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz -tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +genfile --file file +decho "# Create volume" +tar -c -f archive --label='New volume' file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive --label='New volume' file ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -15426,23 +16854,31 @@ export TAR_OPTIONS rm -rf * exec <&- -genfile --length 0 --file foo -genfile --length 12288 --file bar -genfile --length 12288 --file baz -tar --label=Test -cM -L10 -f 1.tar -f 2.tar -f 3.tar -f 4.tar foo bar baz -tar -Mt -f 1.tar -f 2.tar -f 3.tar -f 4.tar +genfile --file file +decho "# Create volume" +tar -c -f archive --label='New volume' file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive --label='New volume' file ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false -at_func_diff_devnull "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Test Volume 1 -foo -bar -baz +echo >>"$at_stderr"; $as_echo "# Create volume +# Update: wrong label +tar: Volume \`New volume' does not match \`My volume' +tar: Error is not recoverable: exiting now +# Update: right label +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "# Create volume +# Update: wrong label +2 +# Update: right label " | \ $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/label02.at:22" +at_func_check_status 0 $at_status "$at_srcdir/label04.at:28" $at_failed && at_func_log_failure $at_traceon; } @@ -15454,17 +16890,287 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_33 -#AT_START_34 -# 34. backup01.at:33: extracting existing dir with --backup +#AT_STOP_44 +#AT_START_45 +# 45. label05.at:22: label with non-create option +at_setup_line='label05.at:22' +at_desc="label with non-create option" +$at_quiet $as_echo_n " 45: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "45. label05.at:22: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/label05.at:25: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho \"# Create volume\" +tar -c -f archive file +decho \"# Update: wrong label\" +tar -rf archive --label='My volume' file; echo \$? +decho \"# Update: right label\" +tar -rf archive file +)" +echo label05.at:25 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive file +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive file +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "# Create volume +# Update: wrong label +tar: Archive not labeled to match \`My volume' +tar: Error is not recoverable: exiting now +# Update: right label +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "# Create volume +# Update: wrong label +2 +# Update: right label +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label05.at:25" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/label05.at:25: +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H oldgnu\" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho \"# Create volume\" +tar -c -f archive file +decho \"# Update: wrong label\" +tar -rf archive --label='My volume' file; echo \$? +decho \"# Update: right label\" +tar -rf archive file +)" +echo label05.at:25 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive file +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive file +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "# Create volume +# Update: wrong label +tar: Archive not labeled to match \`My volume' +tar: Error is not recoverable: exiting now +# Update: right label +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "# Create volume +# Update: wrong label +2 +# Update: right label +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label05.at:25" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/label05.at:25: +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H posix\" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho \"# Create volume\" +tar -c -f archive file +decho \"# Update: wrong label\" +tar -rf archive --label='My volume' file; echo \$? +decho \"# Update: right label\" +tar -rf archive file +)" +echo label05.at:25 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS="-H posix" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive file +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS="-H posix" +export TAR_OPTIONS +rm -rf * + +exec <&- +genfile --file file +decho "# Create volume" +tar -c -f archive file +decho "# Update: wrong label" +tar -rf archive --label='My volume' file; echo $? +decho "# Update: right label" +tar -rf archive file +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "# Create volume +# Update: wrong label +tar: Archive not labeled to match \`My volume' +tar: Error is not recoverable: exiting now +# Update: right label +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "# Create volume +# Update: wrong label +2 +# Update: right label +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/label05.at:25" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_45 +#AT_START_46 +# 46. backup01.at:33: extracting existing dir with --backup at_setup_line='backup01.at:33' at_desc="extracting existing dir with --backup" -$at_quiet $as_echo_n " 34: $at_desc " +$at_quiet $as_echo_n " 46: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "34. backup01.at:33: testing ..." + $as_echo "46. backup01.at:33: testing ..." $at_traceon @@ -15484,7 +17190,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp )" echo backup01.at:36 >"$at_check_line_file" @@ -15502,7 +17208,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -15518,7 +17224,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -15548,7 +17254,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp )" echo backup01.at:36 >"$at_check_line_file" @@ -15566,7 +17272,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -15582,7 +17288,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -15612,7 +17318,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp )" echo backup01.at:36 >"$at_check_line_file" @@ -15630,7 +17336,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -15646,7 +17352,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -15676,7 +17382,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp )" echo backup01.at:36 >"$at_check_line_file" @@ -15694,7 +17400,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -15710,7 +17416,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -15740,7 +17446,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp )" echo backup01.at:36 >"$at_check_line_file" @@ -15758,7 +17464,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -15774,7 +17480,7 @@ rm -rf * mkdir dir1 dir2 echo bla > dir1/file1 tar cf test.tar dir1 dir2 -tar xfv test.tar --backup +tar xfv test.tar --backup --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -15798,16 +17504,16 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_34 -#AT_START_35 -# 35. gzip.at:23: gzip +#AT_STOP_46 +#AT_START_47 +# 47. gzip.at:23: gzip at_setup_line='gzip.at:23' at_desc="gzip" -$at_quiet $as_echo_n " 35: $at_desc " +$at_quiet $as_echo_n " 47: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "35. gzip.at:23: testing ..." + $as_echo "47. gzip.at:23: testing ..." $at_traceon @@ -15819,7 +17525,10 @@ $as_echo "$at_srcdir/gzip.at:28: cat /dev/null | gzip - > /dev/null 2>&1 || exit 77 -tar xfvz /dev/null +tar xfvz /dev/null 2>err +RC=\$? +sed -n '/^tar:/p' err >&2 +exit \$RC " echo gzip.at:28 >"$at_check_line_file" @@ -15829,7 +17538,10 @@ if { echo 'Not enabling shell tracing (command contains an embedded newline)' cat /dev/null | gzip - > /dev/null 2>&1 || exit 77 -tar xfvz /dev/null +tar xfvz /dev/null 2>err +RC=$? +sed -n '/^tar:/p' err >&2 +exit $RC ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -15837,14 +17549,15 @@ else cat /dev/null | gzip - > /dev/null 2>&1 || exit 77 -tar xfvz /dev/null +tar xfvz /dev/null 2>err +RC=$? +sed -n '/^tar:/p' err >&2 +exit $RC ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false -echo >>"$at_stderr"; $as_echo " -gzip: stdin: unexpected end of file -tar: Child returned status 1 +echo >>"$at_stderr"; $as_echo "tar: Child returned status 1 tar: Error is not recoverable: exiting now " | \ $at_diff - "$at_stderr" || at_failed=: @@ -15859,17 +17572,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_35 -#AT_START_36 -# 36. incremental.at:23: incremental +#AT_STOP_47 +#AT_START_48 +# 48. incremental.at:23: incremental at_setup_line='incremental.at:23' at_desc="incremental" -$at_quiet $as_echo_n " 36: $at_desc " +$at_quiet $as_echo_n " 48: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "36. incremental.at:23: testing ..." + $as_echo "48. incremental.at:23: testing ..." $at_traceon @@ -16273,17 +17986,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_36 -#AT_START_37 -# 37. incr01.at:27: restore broken symlinks from incremental +#AT_STOP_48 +#AT_START_49 +# 49. incr01.at:27: restore broken symlinks from incremental at_setup_line='incr01.at:27' at_desc="restore broken symlinks from incremental" -$at_quiet $as_echo_n " 37: $at_desc " +$at_quiet $as_echo_n " 49: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "37. incr01.at:27: testing ..." + $as_echo "49. incr01.at:27: testing ..." $at_traceon @@ -16309,9 +18022,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp )" echo incr01.at:30 >"$at_check_line_file" @@ -16335,9 +18048,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -16359,9 +18072,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -16398,9 +18111,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp )" echo incr01.at:30 >"$at_check_line_file" @@ -16424,9 +18137,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -16448,9 +18161,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -16487,9 +18200,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp )" echo incr01.at:30 >"$at_check_line_file" @@ -16513,9 +18226,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -16537,9 +18250,9 @@ tar -cf archive.1 -g db directory mv directory orig -tar xvfg archive.0 /dev/null +tar xvfg archive.0 /dev/null --warning=no-timestamp echo separator -tar xvfg archive.1 /dev/null +tar xvfg archive.1 /dev/null --warning=no-timestamp ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -16564,17 +18277,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_37 -#AT_START_38 -# 38. incr02.at:32: restoring timestamps from incremental +#AT_STOP_49 +#AT_START_50 +# 50. incr02.at:32: restoring timestamps from incremental at_setup_line='incr02.at:32' at_desc="restoring timestamps from incremental" -$at_quiet $as_echo_n " 38: $at_desc " +$at_quiet $as_echo_n " 50: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "38. incr02.at:32: testing ..." + $as_echo "50. incr02.at:32: testing ..." $at_traceon @@ -17044,17 +18757,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_38 -#AT_START_39 -# 39. listed01.at:26: --listed for individual files +#AT_STOP_50 +#AT_START_51 +# 51. listed01.at:26: --listed for individual files at_setup_line='listed01.at:26' at_desc="--listed for individual files" -$at_quiet $as_echo_n " 39: $at_desc " +$at_quiet $as_echo_n " 51: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "39. listed01.at:26: testing ..." + $as_echo "51. listed01.at:26: testing ..." $at_traceon @@ -17314,17 +19027,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_39 -#AT_START_40 -# 40. listed02.at:28: working --listed +#AT_STOP_51 +#AT_START_52 +# 52. listed02.at:28: working --listed at_setup_line='listed02.at:28' at_desc="working --listed" -$at_quiet $as_echo_n " 40: $at_desc " +$at_quiet $as_echo_n " 52: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "40. listed02.at:28: testing ..." + $as_echo "52. listed02.at:28: testing ..." $at_traceon @@ -17617,288 +19330,424 @@ at_func_check_status 0 $at_status "$at_srcdir/listed02.at:31" $at_failed && at_func_log_failure $at_traceon; } - { $at_traceoff -$as_echo "$at_srcdir/listed02.at:31: -mkdir oldgnu -(cd oldgnu -TEST_TAR_FORMAT=oldgnu -export TEST_TAR_FORMAT -TAR_OPTIONS=\"-H oldgnu\" -export TAR_OPTIONS -rm -rf * - + { $at_traceoff +$as_echo "$at_srcdir/listed02.at:31: +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H oldgnu\" +export TAR_OPTIONS +rm -rf * + + +test -z "`sort < /dev/null 2>&1`" || exit 77 + +echo Create directories + +mkdir tart +sleep 1 +mkdir tart/c0 +sleep 1 +mkdir tart/c1 +sleep 1 + +for file in tart/a1 tart/b1 tart/c0/cq1 tart/c0/cq2 tart/c1/ca1 tart/c1/ca2 +do + echo File \$file > \$file + sleep 1 +done + +sleep 1 +echo Creating main archive +echo >&2 \"Creating main archive\" +tar -c -v --listed-incremental=tart.incr1 -f archive.1 tart 2> err || exit 1 + +# The above prints two lines to stderr announcing the new directories c0 and c1. +# Ensure that they appear in this script's stderr in sorted order. +sort err 1>&2; rm -f err + +sleep 1 +echo Modifying filesystem +rm tart/a1 + +mv tart/b1 tart/b2 +mv tart/c1 tart/c2 +touch tart/c2/ca3 + +echo Directory contents +find tart -print | sort 2>/dev/null + +sleep 1 +echo Creating incremental archive +echo >&2 \"Creating incremental archive\" +cp -p tart.incr1 tart.incr2 +tar -c -v --listed-incremental=tart.incr2 -f archive.2 tart || exit 1 + +sleep 1 + +rm -rf tart/* +echo Extracting main archive +echo >&2 \"Extracting main archive\" +tar -x -v --listed-incremental=tart.incr1 -f archive.1 || exit 1 +echo Extracting incremental archive +# This command should produce three messages about deletion +# of the existing files, that may appear in any order. Piping +# to sort makes sure we don't depend on any particular ordering. +tar -x -v --listed-incremental=tart.incr2 -f archive.2 | sort 2>/dev/null + +echo Final files: +find tart -print | sort 2>/dev/null +)" +echo listed02.at:31 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + + +test -z "`sort < /dev/null 2>&1`" || exit 77 + +echo Create directories + +mkdir tart +sleep 1 +mkdir tart/c0 +sleep 1 +mkdir tart/c1 +sleep 1 + +for file in tart/a1 tart/b1 tart/c0/cq1 tart/c0/cq2 tart/c1/ca1 tart/c1/ca2 +do + echo File $file > $file + sleep 1 +done + +sleep 1 +echo Creating main archive +echo >&2 "Creating main archive" +tar -c -v --listed-incremental=tart.incr1 -f archive.1 tart 2> err || exit 1 + +# The above prints two lines to stderr announcing the new directories c0 and c1. +# Ensure that they appear in this script's stderr in sorted order. +sort err 1>&2; rm -f err + +sleep 1 +echo Modifying filesystem +rm tart/a1 + +mv tart/b1 tart/b2 +mv tart/c1 tart/c2 +touch tart/c2/ca3 + +echo Directory contents +find tart -print | sort 2>/dev/null + +sleep 1 +echo Creating incremental archive +echo >&2 "Creating incremental archive" +cp -p tart.incr1 tart.incr2 +tar -c -v --listed-incremental=tart.incr2 -f archive.2 tart || exit 1 + +sleep 1 + +rm -rf tart/* +echo Extracting main archive +echo >&2 "Extracting main archive" +tar -x -v --listed-incremental=tart.incr1 -f archive.1 || exit 1 +echo Extracting incremental archive +# This command should produce three messages about deletion +# of the existing files, that may appear in any order. Piping +# to sort makes sure we don't depend on any particular ordering. +tar -x -v --listed-incremental=tart.incr2 -f archive.2 | sort 2>/dev/null + +echo Final files: +find tart -print | sort 2>/dev/null +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + + +test -z "`sort < /dev/null 2>&1`" || exit 77 + +echo Create directories + +mkdir tart +sleep 1 +mkdir tart/c0 +sleep 1 +mkdir tart/c1 +sleep 1 + +for file in tart/a1 tart/b1 tart/c0/cq1 tart/c0/cq2 tart/c1/ca1 tart/c1/ca2 +do + echo File $file > $file + sleep 1 +done + +sleep 1 +echo Creating main archive +echo >&2 "Creating main archive" +tar -c -v --listed-incremental=tart.incr1 -f archive.1 tart 2> err || exit 1 + +# The above prints two lines to stderr announcing the new directories c0 and c1. +# Ensure that they appear in this script's stderr in sorted order. +sort err 1>&2; rm -f err + +sleep 1 +echo Modifying filesystem +rm tart/a1 + +mv tart/b1 tart/b2 +mv tart/c1 tart/c2 +touch tart/c2/ca3 + +echo Directory contents +find tart -print | sort 2>/dev/null + +sleep 1 +echo Creating incremental archive +echo >&2 "Creating incremental archive" +cp -p tart.incr1 tart.incr2 +tar -c -v --listed-incremental=tart.incr2 -f archive.2 tart || exit 1 + +sleep 1 + +rm -rf tart/* +echo Extracting main archive +echo >&2 "Extracting main archive" +tar -x -v --listed-incremental=tart.incr1 -f archive.1 || exit 1 +echo Extracting incremental archive +# This command should produce three messages about deletion +# of the existing files, that may appear in any order. Piping +# to sort makes sure we don't depend on any particular ordering. +tar -x -v --listed-incremental=tart.incr2 -f archive.2 | sort 2>/dev/null + +echo Final files: +find tart -print | sort 2>/dev/null +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "Creating main archive +tar: tart/c0: Directory is new +tar: tart/c1: Directory is new +tar: tart: Directory is new +Creating incremental archive +tar: tart/c2: Directory has been renamed from \`tart/c1' +Extracting main archive +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "Create directories +Creating main archive +tart/ +tart/c0/ +tart/c1/ +tart/a1 +tart/b1 +tart/c0/cq1 +tart/c0/cq2 +tart/c1/ca1 +tart/c1/ca2 +Modifying filesystem +Directory contents +tart +tart/b2 +tart/c0 +tart/c0/cq1 +tart/c0/cq2 +tart/c2 +tart/c2/ca1 +tart/c2/ca2 +tart/c2/ca3 +Creating incremental archive +tart/ +tart/c0/ +tart/c2/ +tart/b2 +tart/c2/ca3 +Extracting main archive +tart/ +tart/c0/ +tart/c1/ +tart/a1 +tart/b1 +tart/c0/cq1 +tart/c0/cq2 +tart/c1/ca1 +tart/c1/ca2 +Extracting incremental archive +tar: Deleting \`tart/a1' +tar: Deleting \`tart/b1' +tart/ +tart/b2 +tart/c0/ +tart/c2/ +tart/c2/ca3 +Final files: +tart +tart/b2 +tart/c0 +tart/c0/cq1 +tart/c0/cq2 +tart/c2 +tart/c2/ca1 +tart/c2/ca2 +tart/c2/ca3 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/listed02.at:31" + +$at_failed && at_func_log_failure +$at_traceon; } + -test -z "`sort < /dev/null 2>&1`" || exit 77 -echo Create directories -mkdir tart -sleep 1 -mkdir tart/c0 -sleep 1 -mkdir tart/c1 -sleep 1 + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_52 +#AT_START_53 +# 53. listed03.at:22: incremental dump when the parent directory is unreadable +at_setup_line='listed03.at:22' +at_desc="incremental dump when the parent directory is unreadable" +$at_quiet $as_echo_n " 53: $at_desc" +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "53. listed03.at:22: testing ..." + $at_traceon -for file in tart/a1 tart/b1 tart/c0/cq1 tart/c0/cq2 tart/c1/ca1 tart/c1/ca2 -do - echo File \$file > \$file - sleep 1 -done -sleep 1 -echo Creating main archive -echo >&2 \"Creating main archive\" -tar -c -v --listed-incremental=tart.incr1 -f archive.1 tart 2> err || exit 1 -# The above prints two lines to stderr announcing the new directories c0 and c1. -# Ensure that they appear in this script's stderr in sorted order. -sort err 1>&2; rm -f err -sleep 1 -echo Modifying filesystem -rm tart/a1 -mv tart/b1 tart/b2 -mv tart/c1 tart/c2 -touch tart/c2/ca3 + { $at_traceoff +$as_echo "$at_srcdir/listed03.at:25: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * -echo Directory contents -find tart -print | sort 2>/dev/null -sleep 1 -echo Creating incremental archive -echo >&2 \"Creating incremental archive\" -cp -p tart.incr1 tart.incr2 -tar -c -v --listed-incremental=tart.incr2 -f archive.2 tart || exit 1 +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 -sleep 1 -rm -rf tart/* -echo Extracting main archive -echo >&2 \"Extracting main archive\" -tar -x -v --listed-incremental=tart.incr1 -f archive.1 || exit 1 -echo Extracting incremental archive -# This command should produce three messages about deletion -# of the existing files, that may appear in any order. Piping -# to sort makes sure we don't depend on any particular ordering. -tar -x -v --listed-incremental=tart.incr2 -f archive.2 | sort 2>/dev/null +mkdir dir +mkdir dir/sub +mkdir dir/sub/a +genfile --file dir/sub/a/file +cd dir/sub -echo Final files: -find tart -print | sort 2>/dev/null +chmod a-r .. +tar -c -f archive.tar --listed-incremental=db.1 -v a +status=\$? +chmod a+r .. +exit \$status )" -echo listed02.at:31 >"$at_check_line_file" +echo listed03.at:25 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then ( $at_traceon; -mkdir oldgnu -(cd oldgnu -TEST_TAR_FORMAT=oldgnu +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu export TEST_TAR_FORMAT -TAR_OPTIONS="-H oldgnu" +TAR_OPTIONS="-H gnu" export TAR_OPTIONS rm -rf * -test -z "`sort < /dev/null 2>&1`" || exit 77 - -echo Create directories - -mkdir tart -sleep 1 -mkdir tart/c0 -sleep 1 -mkdir tart/c1 -sleep 1 - -for file in tart/a1 tart/b1 tart/c0/cq1 tart/c0/cq2 tart/c1/ca1 tart/c1/ca2 -do - echo File $file > $file - sleep 1 -done - -sleep 1 -echo Creating main archive -echo >&2 "Creating main archive" -tar -c -v --listed-incremental=tart.incr1 -f archive.1 tart 2> err || exit 1 - -# The above prints two lines to stderr announcing the new directories c0 and c1. -# Ensure that they appear in this script's stderr in sorted order. -sort err 1>&2; rm -f err - -sleep 1 -echo Modifying filesystem -rm tart/a1 - -mv tart/b1 tart/b2 -mv tart/c1 tart/c2 -touch tart/c2/ca3 - -echo Directory contents -find tart -print | sort 2>/dev/null - -sleep 1 -echo Creating incremental archive -echo >&2 "Creating incremental archive" -cp -p tart.incr1 tart.incr2 -tar -c -v --listed-incremental=tart.incr2 -f archive.2 tart || exit 1 +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 -sleep 1 -rm -rf tart/* -echo Extracting main archive -echo >&2 "Extracting main archive" -tar -x -v --listed-incremental=tart.incr1 -f archive.1 || exit 1 -echo Extracting incremental archive -# This command should produce three messages about deletion -# of the existing files, that may appear in any order. Piping -# to sort makes sure we don't depend on any particular ordering. -tar -x -v --listed-incremental=tart.incr2 -f archive.2 | sort 2>/dev/null +mkdir dir +mkdir dir/sub +mkdir dir/sub/a +genfile --file dir/sub/a/file +cd dir/sub -echo Final files: -find tart -print | sort 2>/dev/null +chmod a-r .. +tar -c -f archive.tar --listed-incremental=db.1 -v a +status=$? +chmod a+r .. +exit $status ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else ( :; -mkdir oldgnu -(cd oldgnu -TEST_TAR_FORMAT=oldgnu +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu export TEST_TAR_FORMAT -TAR_OPTIONS="-H oldgnu" +TAR_OPTIONS="-H gnu" export TAR_OPTIONS rm -rf * -test -z "`sort < /dev/null 2>&1`" || exit 77 - -echo Create directories - -mkdir tart -sleep 1 -mkdir tart/c0 -sleep 1 -mkdir tart/c1 -sleep 1 - -for file in tart/a1 tart/b1 tart/c0/cq1 tart/c0/cq2 tart/c1/ca1 tart/c1/ca2 -do - echo File $file > $file - sleep 1 -done - -sleep 1 -echo Creating main archive -echo >&2 "Creating main archive" -tar -c -v --listed-incremental=tart.incr1 -f archive.1 tart 2> err || exit 1 - -# The above prints two lines to stderr announcing the new directories c0 and c1. -# Ensure that they appear in this script's stderr in sorted order. -sort err 1>&2; rm -f err - -sleep 1 -echo Modifying filesystem -rm tart/a1 - -mv tart/b1 tart/b2 -mv tart/c1 tart/c2 -touch tart/c2/ca3 - -echo Directory contents -find tart -print | sort 2>/dev/null - -sleep 1 -echo Creating incremental archive -echo >&2 "Creating incremental archive" -cp -p tart.incr1 tart.incr2 -tar -c -v --listed-incremental=tart.incr2 -f archive.2 tart || exit 1 +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 -sleep 1 -rm -rf tart/* -echo Extracting main archive -echo >&2 "Extracting main archive" -tar -x -v --listed-incremental=tart.incr1 -f archive.1 || exit 1 -echo Extracting incremental archive -# This command should produce three messages about deletion -# of the existing files, that may appear in any order. Piping -# to sort makes sure we don't depend on any particular ordering. -tar -x -v --listed-incremental=tart.incr2 -f archive.2 | sort 2>/dev/null +mkdir dir +mkdir dir/sub +mkdir dir/sub/a +genfile --file dir/sub/a/file +cd dir/sub -echo Final files: -find tart -print | sort 2>/dev/null +chmod a-r .. +tar -c -f archive.tar --listed-incremental=db.1 -v a +status=$? +chmod a+r .. +exit $status ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false -echo >>"$at_stderr"; $as_echo "Creating main archive -tar: tart/c0: Directory is new -tar: tart/c1: Directory is new -tar: tart: Directory is new -Creating incremental archive -tar: tart/c2: Directory has been renamed from \`tart/c1' -Extracting main archive +echo >>"$at_stderr"; $as_echo "tar: a: Directory is new " | \ $at_diff - "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "Create directories -Creating main archive -tart/ -tart/c0/ -tart/c1/ -tart/a1 -tart/b1 -tart/c0/cq1 -tart/c0/cq2 -tart/c1/ca1 -tart/c1/ca2 -Modifying filesystem -Directory contents -tart -tart/b2 -tart/c0 -tart/c0/cq1 -tart/c0/cq2 -tart/c2 -tart/c2/ca1 -tart/c2/ca2 -tart/c2/ca3 -Creating incremental archive -tart/ -tart/c0/ -tart/c2/ -tart/b2 -tart/c2/ca3 -Extracting main archive -tart/ -tart/c0/ -tart/c1/ -tart/a1 -tart/b1 -tart/c0/cq1 -tart/c0/cq2 -tart/c1/ca1 -tart/c1/ca2 -Extracting incremental archive -tar: Deleting \`tart/a1' -tar: Deleting \`tart/b1' -tart/ -tart/b2 -tart/c0/ -tart/c2/ -tart/c2/ca3 -Final files: -tart -tart/b2 -tart/c0 -tart/c0/cq1 -tart/c0/cq2 -tart/c2 -tart/c2/ca1 -tart/c2/ca2 -tart/c2/ca3 +echo >>"$at_stdout"; $as_echo "a/ +a/file " | \ $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/listed02.at:31" +at_func_check_status 0 $at_status "$at_srcdir/listed03.at:25" $at_failed && at_func_log_failure $at_traceon; } @@ -17910,17 +19759,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_40 -#AT_START_41 -# 41. incr03.at:28: renamed files in incrementals +#AT_STOP_53 +#AT_START_54 +# 54. incr03.at:28: renamed files in incrementals at_setup_line='incr03.at:28' at_desc="renamed files in incrementals" -$at_quiet $as_echo_n " 41: $at_desc " +$at_quiet $as_echo_n " 54: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "41. incr03.at:28: testing ..." + $as_echo "54. incr03.at:28: testing ..." $at_traceon @@ -17960,11 +19809,11 @@ echo Listing of archive.2 tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db +tar -xf archive.2 -g db --warning=no-timestamp find directory | sort )" echo incr03.at:31 >"$at_check_line_file" @@ -18003,11 +19852,11 @@ echo Listing of archive.2 tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db +tar -xf archive.2 -g db --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -18044,11 +19893,11 @@ echo Listing of archive.2 tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db +tar -xf archive.2 -g db --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -18110,11 +19959,11 @@ echo Listing of archive.2 tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db +tar -xf archive.2 -g db --warning=no-timestamp find directory | sort )" echo incr03.at:31 >"$at_check_line_file" @@ -18153,11 +20002,11 @@ echo Listing of archive.2 tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db +tar -xf archive.2 -g db --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -18194,11 +20043,11 @@ echo Listing of archive.2 tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db +tar -xf archive.2 -g db --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -18260,11 +20109,11 @@ echo Listing of archive.2 tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db +tar -xf archive.2 -g db --warning=no-timestamp find directory | sort )" echo incr03.at:31 >"$at_check_line_file" @@ -18303,11 +20152,11 @@ echo Listing of archive.2 tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db +tar -xf archive.2 -g db --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -18344,11 +20193,11 @@ echo Listing of archive.2 tar -tf archive.2 | sort echo Directory after first restore -tar -xf archive.1 -g db +tar -xf archive.1 -g db --warning=no-timestamp find directory | sort echo Directory after second restore -tar -xf archive.2 -g db +tar -xf archive.2 -g db --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -18384,17 +20233,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_41 -#AT_START_42 -# 42. incr04.at:29: proper icontents initialization +#AT_STOP_54 +#AT_START_55 +# 55. incr04.at:29: proper icontents initialization at_setup_line='incr04.at:29' at_desc="proper icontents initialization" -$at_quiet $as_echo_n " 42: $at_desc " +$at_quiet $as_echo_n " 55: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "42. incr04.at:29: testing ..." + $as_echo "55. incr04.at:29: testing ..." $at_traceon @@ -19136,17 +20985,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_42 -#AT_START_43 -# 43. incr05.at:19: incremental dumps with -C +#AT_STOP_55 +#AT_START_56 +# 56. incr05.at:19: incremental dumps with -C at_setup_line='incr05.at:19' at_desc="incremental dumps with -C" -$at_quiet $as_echo_n " 43: $at_desc " +$at_quiet $as_echo_n " 56: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "43. incr05.at:19: testing ..." + $as_echo "56. incr05.at:19: testing ..." $at_traceon @@ -19430,17 +21279,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_43 -#AT_START_44 -# 44. incr06.at:19: incremental dumps of nested directories +#AT_STOP_56 +#AT_START_57 +# 57. incr06.at:19: incremental dumps of nested directories at_setup_line='incr06.at:19' at_desc="incremental dumps of nested directories" -$at_quiet $as_echo_n " 44: $at_desc " +$at_quiet $as_echo_n " 57: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "44. incr06.at:19: testing ..." + $as_echo "57. incr06.at:19: testing ..." $at_traceon @@ -19868,17 +21717,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_44 -#AT_START_45 -# 45. filerem01.at:34: file removed as we read it (ca. 22 seconds) +#AT_STOP_57 +#AT_START_58 +# 58. filerem01.at:34: file removed as we read it (ca. 22 seconds) at_setup_line='filerem01.at:34' at_desc="file removed as we read it (ca. 22 seconds)" -$at_quiet $as_echo_n " 45: $at_desc " +$at_quiet $as_echo_n " 58: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "45. filerem01.at:34: testing ..." + $as_echo "58. filerem01.at:34: testing ..." $at_traceon @@ -20093,17 +21942,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_45 -#AT_START_46 -# 46. filerem02.at:24: toplevel file removed (ca. 24 seconds) +#AT_STOP_58 +#AT_START_59 +# 59. filerem02.at:24: toplevel file removed (ca. 24 seconds) at_setup_line='filerem02.at:24' at_desc="toplevel file removed (ca. 24 seconds)" -$at_quiet $as_echo_n " 46: $at_desc " +$at_quiet $as_echo_n " 59: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "46. filerem02.at:24: testing ..." + $as_echo "59. filerem02.at:24: testing ..." $at_traceon @@ -20183,11 +22032,7 @@ genfile --run --checkpoint=3 --exec 'rm -rf dir2' -- \ fi at_status=$? at_failed=false -echo >>"$at_stderr"; $as_echo "tar: dir2: Cannot stat: No such file or directory -tar: dir2/file1: File removed before we read it -tar: Exiting with failure status due to previous errors -" | \ - $at_diff - "$at_stderr" || at_failed=: +echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" at_func_check_status 2 $at_status "$at_srcdir/filerem02.at:27" @@ -20267,11 +22112,7 @@ genfile --run --checkpoint=3 --exec 'rm -rf dir2' -- \ fi at_status=$? at_failed=false -echo >>"$at_stderr"; $as_echo "tar: dir2: Cannot stat: No such file or directory -tar: dir2/file1: File removed before we read it -tar: Exiting with failure status due to previous errors -" | \ - $at_diff - "$at_stderr" || at_failed=: +echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" at_func_check_status 2 $at_status "$at_srcdir/filerem02.at:27" @@ -20281,23 +22122,26 @@ $at_traceon; } +# Ignore stdout and stderr because their contents depend on +# the file system implementation. + # Timing information: see filerem01.at $at_traceoff $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_46 -#AT_START_47 -# 47. rename01.at:24: renamed dirs in incrementals +#AT_STOP_59 +#AT_START_60 +# 60. rename01.at:24: renamed dirs in incrementals at_setup_line='rename01.at:24' at_desc="renamed dirs in incrementals" -$at_quiet $as_echo_n " 47: $at_desc " +$at_quiet $as_echo_n " 60: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "47. rename01.at:24: testing ..." + $as_echo "60. rename01.at:24: testing ..." $at_traceon @@ -20806,17 +22650,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_47 -#AT_START_48 -# 48. rename02.at:24: move between hierarchies +#AT_STOP_60 +#AT_START_61 +# 61. rename02.at:24: move between hierarchies at_setup_line='rename02.at:24' at_desc="move between hierarchies" -$at_quiet $as_echo_n " 48: $at_desc " +$at_quiet $as_echo_n " 61: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "48. rename02.at:24: testing ..." + $as_echo "61. rename02.at:24: testing ..." $at_traceon @@ -20856,14 +22700,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo \"Begin directory listing 1\" find foo | sort echo \"End directory listing 1\" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -20904,14 +22748,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -20950,14 +22794,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21044,14 +22888,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo \"Begin directory listing 1\" find foo | sort echo \"End directory listing 1\" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21092,14 +22936,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21138,14 +22982,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21232,14 +23076,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo \"Begin directory listing 1\" find foo | sort echo \"End directory listing 1\" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21280,14 +23124,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21326,14 +23170,14 @@ tar -g incr -cf arch.2 -v foo mv foo old -tar xfg arch.1 /dev/null 2>tmperr +tar xfg arch.1 /dev/null --warning=no-timestamp 2>tmperr sort tmperr >&2 echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21394,17 +23238,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_48 -#AT_START_49 -# 49. rename03.at:23: cyclic renames +#AT_STOP_61 +#AT_START_62 +# 62. rename03.at:23: cyclic renames at_setup_line='rename03.at:23' at_desc="cyclic renames" -$at_quiet $as_echo_n " 49: $at_desc " +$at_quiet $as_echo_n " 62: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "49. rename03.at:23: testing ..." + $as_echo "62. rename03.at:23: testing ..." $at_traceon @@ -21457,13 +23301,13 @@ echo \"Second dump\" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo \"Begin directory listing 1\" find foo | sort echo \"End directory listing 1\" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21517,13 +23361,13 @@ echo "Second dump" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21575,13 +23419,13 @@ echo "Second dump" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21694,13 +23538,13 @@ echo \"Second dump\" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo \"Begin directory listing 1\" find foo | sort echo \"End directory listing 1\" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21754,13 +23598,13 @@ echo "Second dump" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21812,13 +23656,13 @@ echo "Second dump" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21931,13 +23775,13 @@ echo \"Second dump\" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo \"Begin directory listing 1\" find foo | sort echo \"End directory listing 1\" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -21991,13 +23835,13 @@ echo "Second dump" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -22049,13 +23893,13 @@ echo "Second dump" >&2 tar -g incr -cf arch.2 -v foo 2>tmperr sort tmperr >&2 -tar xfg arch.1 /dev/null +tar xfg arch.1 /dev/null --warning=no-timestamp echo "Begin directory listing 1" find foo | sort echo "End directory listing 1" -tar xfgv arch.2 /dev/null +tar xfgv arch.2 /dev/null --warning=no-timestamp echo Begin directory listing 2 find foo | sort echo End directory listing 2 @@ -22129,17 +23973,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_49 -#AT_START_50 -# 50. rename04.at:27: renamed directory containing subdirectories +#AT_STOP_62 +#AT_START_63 +# 63. rename04.at:27: renamed directory containing subdirectories at_setup_line='rename04.at:27' at_desc="renamed directory containing subdirectories" -$at_quiet $as_echo_n " 50: $at_desc " +$at_quiet $as_echo_n " 63: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "50. rename04.at:27: testing ..." + $as_echo "63. rename04.at:27: testing ..." $at_traceon @@ -22603,17 +24447,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_50 -#AT_START_51 -# 51. rename05.at:24: renamed subdirectories +#AT_STOP_63 +#AT_START_64 +# 64. rename05.at:24: renamed subdirectories at_setup_line='rename05.at:24' at_desc="renamed subdirectories" -$at_quiet $as_echo_n " 51: $at_desc " +$at_quiet $as_echo_n " 64: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "51. rename05.at:24: testing ..." + $as_echo "64. rename05.at:24: testing ..." $at_traceon @@ -22653,11 +24497,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort )" echo rename05.at:27 >"$at_check_line_file" @@ -22696,11 +24540,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -22737,11 +24581,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -22806,11 +24650,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort )" echo rename05.at:27 >"$at_check_line_file" @@ -22849,11 +24693,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -22890,11 +24734,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -22959,11 +24803,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort )" echo rename05.at:27 >"$at_check_line_file" @@ -23002,11 +24846,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -23043,11 +24887,11 @@ tar -cf archive.2 -g db.2 dir mv dir orig decho First restore -tar -xf archive.1 -g db.1 +tar -xf archive.1 -g db.1 --warning=no-timestamp find directory | sort decho Second restore -tar -xf archive.2 -g db.2 +tar -xf archive.2 -g db.2 --warning=no-timestamp find dir | sort ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -23086,17 +24930,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_51 -#AT_START_52 -# 52. chtype.at:27: changed file types in incrementals +#AT_STOP_64 +#AT_START_65 +# 65. chtype.at:27: changed file types in incrementals at_setup_line='chtype.at:27' at_desc="changed file types in incrementals" -$at_quiet $as_echo_n " 52: $at_desc " +$at_quiet $as_echo_n " 65: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "52. chtype.at:27: testing ..." + $as_echo "65. chtype.at:27: testing ..." $at_traceon @@ -23139,9 +24983,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort )" echo chtype.at:30 >"$at_check_line_file" @@ -23183,9 +25027,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -23225,9 +25069,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -23286,9 +25130,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort )" echo chtype.at:30 >"$at_check_line_file" @@ -23330,9 +25174,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -23372,9 +25216,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -23433,9 +25277,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort )" echo chtype.at:30 >"$at_check_line_file" @@ -23477,9 +25321,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -23519,9 +25363,9 @@ tar --create --file=archive.2 --listed-incremental=db.2 directory rm -r directory echo Restore archive.1 -tar -xf archive.1 --listed-incremental=/dev/null +tar -xf archive.1 --listed-incremental=/dev/null --warning=no-timestamp echo Restore archive.2 -tar -xf archive.2 --listed-incremental=/dev/null +tar -xf archive.2 --listed-incremental=/dev/null --warning=no-timestamp find directory | sort ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -23551,17 +25395,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_52 -#AT_START_53 -# 53. ignfail.at:23: ignfail +#AT_STOP_65 +#AT_START_66 +# 66. ignfail.at:23: ignfail at_setup_line='ignfail.at:23' at_desc="ignfail" -$at_quiet $as_echo_n " 53: $at_desc " +$at_quiet $as_echo_n " 66: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "53. ignfail.at:23: testing ..." + $as_echo "66. ignfail.at:23: testing ..." $at_traceon @@ -24480,17 +26324,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_53 -#AT_START_54 -# 54. link01.at:33: link count gt 2 +#AT_STOP_66 +#AT_START_67 +# 67. link01.at:33: link count gt 2 at_setup_line='link01.at:33' at_desc="link count gt 2" -$at_quiet $as_echo_n " 54: $at_desc " +$at_quiet $as_echo_n " 67: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "54. link01.at:33: testing ..." + $as_echo "67. link01.at:33: testing ..." $at_traceon @@ -24517,7 +26361,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 )" @@ -24544,7 +26388,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stder1" @@ -24569,7 +26413,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stderr" @@ -24605,7 +26449,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 )" @@ -24632,7 +26476,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stder1" @@ -24657,7 +26501,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stderr" @@ -24693,7 +26537,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 )" @@ -24720,7 +26564,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stder1" @@ -24745,7 +26589,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stderr" @@ -24781,7 +26625,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 )" @@ -24808,7 +26652,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stder1" @@ -24833,7 +26677,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stderr" @@ -24869,7 +26713,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 )" @@ -24896,7 +26740,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stder1" @@ -24921,7 +26765,7 @@ ln directory/test1/test.txt directory/test2/test.txt || exit 77 tar cf archive directory/test1/test.txt directory/test1/test.txt rm -r directory -tar xf archive +tar xf archive --warning=no-timestamp ls directory/test1 ) ) >"$at_stdout" 2>"$at_stderr" @@ -24944,17 +26788,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_54 -#AT_START_55 -# 55. link02.at:32: preserve hard links with --remove-files +#AT_STOP_67 +#AT_START_68 +# 68. link02.at:32: preserve hard links with --remove-files at_setup_line='link02.at:32' at_desc="preserve hard links with --remove-files" -$at_quiet $as_echo_n " 55: $at_desc " +$at_quiet $as_echo_n " 68: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "55. link02.at:32: testing ..." + $as_echo "68. link02.at:32: testing ..." $at_traceon @@ -24972,9 +26816,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' )" @@ -24992,9 +26836,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stder1" @@ -25010,9 +26854,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stderr" @@ -25041,9 +26885,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' )" @@ -25061,9 +26905,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stder1" @@ -25079,9 +26923,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stderr" @@ -25110,9 +26954,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' )" @@ -25130,9 +26974,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stder1" @@ -25148,9 +26992,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stderr" @@ -25179,9 +27023,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' )" @@ -25199,9 +27043,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stder1" @@ -25217,9 +27061,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stderr" @@ -25248,9 +27092,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' )" @@ -25268,9 +27112,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stder1" @@ -25286,9 +27130,9 @@ export TAR_OPTIONS rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 tar -c -f archive --remove-files file1 file2 file3 file4 tar tfv archive | sed -n 's/.*file[2-4] link to //p' ) ) >"$at_stdout" 2>"$at_stderr" @@ -25313,17 +27157,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_55 -#AT_START_56 -# 56. link03.at:24: working -l with --remove-files +#AT_STOP_68 +#AT_START_69 +# 69. link03.at:24: working -l with --remove-files at_setup_line='link03.at:24' at_desc="working -l with --remove-files" -$at_quiet $as_echo_n " 56: $at_desc " +$at_quiet $as_echo_n " 69: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "56. link03.at:24: testing ..." + $as_echo "69. link03.at:24: testing ..." $at_traceon @@ -25344,17 +27188,17 @@ rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 echo archive.1 tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 echo archive.2 tar -c -f archive.2 -l --remove-files file1 file2 file3 @@ -25376,17 +27220,17 @@ rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 echo archive.1 tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 echo archive.2 tar -c -f archive.2 -l --remove-files file1 file2 file3 @@ -25406,17 +27250,453 @@ rm -rf * genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "tar: Missing links to \`file1'. +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "archive.1 +archive.2 +testing archive.2 +file1 +file1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/link03.at:34" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/link03.at:34: +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H oldgnu\" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +)" +echo link03.at:34 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir oldgnu +(cd oldgnu +TEST_TAR_FORMAT=oldgnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H oldgnu" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "tar: Missing links to \`file1'. +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "archive.1 +archive.2 +testing archive.2 +file1 +file1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/link03.at:34" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/link03.at:34: +mkdir ustar +(cd ustar +TEST_TAR_FORMAT=ustar +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H ustar\" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +)" +echo link03.at:34 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir ustar +(cd ustar +TEST_TAR_FORMAT=ustar +export TEST_TAR_FORMAT +TAR_OPTIONS="-H ustar" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir ustar +(cd ustar +TEST_TAR_FORMAT=ustar +export TEST_TAR_FORMAT +TAR_OPTIONS="-H ustar" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "tar: Missing links to \`file1'. +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "archive.1 +archive.2 +testing archive.2 +file1 +file1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/link03.at:34" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/link03.at:34: +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H posix\" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +)" +echo link03.at:34 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS="-H posix" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir posix +(cd posix +TEST_TAR_FORMAT=posix +export TEST_TAR_FORMAT +TAR_OPTIONS="-H posix" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "tar: Missing links to \`file1'. +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "archive.1 +archive.2 +testing archive.2 +file1 +file1 +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/link03.at:34" + +$at_failed && at_func_log_failure +$at_traceon; } + + { $at_traceoff +$as_echo "$at_srcdir/link03.at:34: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +)" +echo link03.at:34 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.1 +tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 + +echo archive.2 +tar -c -f archive.2 -l --remove-files file1 file2 file3 +echo testing archive.2 +tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + + +genfile -l 64 -f file1 +ln file1 file2 +ln file2 file3 +ln file3 file4 echo archive.1 tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +ln file1 file2 +ln file2 file3 +ln file3 file4 echo archive.2 tar -c -f archive.2 -l --remove-files file1 file2 file3 @@ -25438,11 +27718,144 @@ file1 $at_diff - "$at_stdout" || at_failed=: at_func_check_status 0 $at_status "$at_srcdir/link03.at:34" +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_69 +#AT_START_70 +# 70. link04.at:29: link count is 1 but multiple occurrences +at_setup_line='link04.at:29' +at_desc="link count is 1 but multiple occurrences" +$at_quiet $as_echo_n " 70: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "70. link04.at:29: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/link04.at:32: +mkdir v7 +(cd v7 +TEST_TAR_FORMAT=v7 +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H v7\" +export TAR_OPTIONS +rm -rf * + +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 + +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort + +echo == + +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort +)" +echo link04.at:32 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir v7 +(cd v7 +TEST_TAR_FORMAT=v7 +export TEST_TAR_FORMAT +TAR_OPTIONS="-H v7" +export TAR_OPTIONS +rm -rf * + +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 + +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort + +echo == + +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir v7 +(cd v7 +TEST_TAR_FORMAT=v7 +export TEST_TAR_FORMAT +TAR_OPTIONS="-H v7" +export TAR_OPTIONS +rm -rf * + +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 + +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort + +echo == + +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "dir/ +dir/ +dir/file +dir/file link to dir/file +dir/symlink -> file +dir/symlink link to dir/symlink +== +dir/ +dir/FOO +dir/FOO link to dir/FOO +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/link04.at:32" + $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/link03.at:34: +$as_echo "$at_srcdir/link04.at:32: mkdir oldgnu (cd oldgnu TEST_TAR_FORMAT=oldgnu @@ -25451,26 +27864,25 @@ TAR_OPTIONS=\"-H oldgnu\" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort )" -echo link03.at:34 >"$at_check_line_file" +echo link04.at:32 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then @@ -25483,24 +27895,23 @@ TAR_OPTIONS="-H oldgnu" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -25513,45 +27924,47 @@ TAR_OPTIONS="-H oldgnu" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false -echo >>"$at_stderr"; $as_echo "tar: Missing links to \`file1'. -" | \ - $at_diff - "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "archive.1 -archive.2 -testing archive.2 -file1 -file1 +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "dir/ +dir/ +dir/file +dir/file link to dir/file +dir/symlink -> file +dir/symlink link to dir/symlink +== +dir/ +dir/FOO +dir/FOO link to dir/FOO " | \ $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/link03.at:34" +at_func_check_status 0 $at_status "$at_srcdir/link04.at:32" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/link03.at:34: +$as_echo "$at_srcdir/link04.at:32: mkdir ustar (cd ustar TEST_TAR_FORMAT=ustar @@ -25560,26 +27973,25 @@ TAR_OPTIONS=\"-H ustar\" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort )" -echo link03.at:34 >"$at_check_line_file" +echo link04.at:32 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then @@ -25592,24 +28004,23 @@ TAR_OPTIONS="-H ustar" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -25622,45 +28033,47 @@ TAR_OPTIONS="-H ustar" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +echo == -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false -echo >>"$at_stderr"; $as_echo "tar: Missing links to \`file1'. -" | \ - $at_diff - "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "archive.1 -archive.2 -testing archive.2 -file1 -file1 +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "dir/ +dir/ +dir/file +dir/file link to dir/file +dir/symlink -> file +dir/symlink link to dir/symlink +== +dir/ +dir/FOO +dir/FOO link to dir/FOO " | \ $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/link03.at:34" +at_func_check_status 0 $at_status "$at_srcdir/link04.at:32" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/link03.at:34: +$as_echo "$at_srcdir/link04.at:32: mkdir posix (cd posix TEST_TAR_FORMAT=posix @@ -25669,26 +28082,25 @@ TAR_OPTIONS=\"-H posix\" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 - -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort )" -echo link03.at:34 >"$at_check_line_file" +echo link04.at:32 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then @@ -25701,24 +28113,23 @@ TAR_OPTIONS="-H posix" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -25731,45 +28142,47 @@ TAR_OPTIONS="-H posix" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false -echo >>"$at_stderr"; $as_echo "tar: Missing links to \`file1'. -" | \ - $at_diff - "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "archive.1 -archive.2 -testing archive.2 -file1 -file1 +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "dir/ +dir/ +dir/file +dir/file link to dir/file +dir/symlink -> file +dir/symlink link to dir/symlink +== +dir/ +dir/FOO +dir/FOO link to dir/FOO " | \ $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/link03.at:34" +at_func_check_status 0 $at_status "$at_srcdir/link04.at:32" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/link03.at:34: +$as_echo "$at_srcdir/link04.at:32: mkdir gnu (cd gnu TEST_TAR_FORMAT=gnu @@ -25778,26 +28191,25 @@ TAR_OPTIONS=\"-H gnu\" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort )" -echo link03.at:34 >"$at_check_line_file" +echo link04.at:32 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then @@ -25810,24 +28222,23 @@ TAR_OPTIONS="-H gnu" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -25840,39 +28251,41 @@ TAR_OPTIONS="-H gnu" export TAR_OPTIONS rm -rf * +mkdir dir +echo TEST > dir/file +ln -s file dir/symlink || exit 77 -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 - -echo archive.1 -tar -c -f archive.1 -l --remove-files file1 file2 file3 file4 +tar cf archive dir dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, +' | sort -genfile -l 64 -f file1 -link file1 file2 -link file2 file3 -link file3 file4 +echo == -echo archive.2 -tar -c -f archive.2 -l --remove-files file1 file2 file3 -echo testing archive.2 -tar tfv archive.2 | sed -n 's/.*file[2-3] link to //p' +tar chf archive dir +tar tvf archive | sed ' + s,.*[0-9] dir/,dir/, + s,file,FOO,g + s,symlink,FOO,g +' | sort ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false -echo >>"$at_stderr"; $as_echo "tar: Missing links to \`file1'. -" | \ - $at_diff - "$at_stderr" || at_failed=: -echo >>"$at_stdout"; $as_echo "archive.1 -archive.2 -testing archive.2 -file1 -file1 +at_func_diff_devnull "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "dir/ +dir/ +dir/file +dir/file link to dir/file +dir/symlink -> file +dir/symlink link to dir/symlink +== +dir/ +dir/FOO +dir/FOO link to dir/FOO " | \ $at_diff - "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/link03.at:34" +at_func_check_status 0 $at_status "$at_srcdir/link04.at:32" $at_failed && at_func_log_failure $at_traceon; } @@ -25884,17 +28297,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_56 -#AT_START_57 -# 57. longv7.at:24: long names in V7 archives +#AT_STOP_70 +#AT_START_71 +# 71. longv7.at:24: long names in V7 archives at_setup_line='longv7.at:24' at_desc="long names in V7 archives" -$at_quiet $as_echo_n " 57: $at_desc " +$at_quiet $as_echo_n " 71: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "57. longv7.at:24: testing ..." + $as_echo "71. longv7.at:24: testing ..." $at_traceon @@ -25982,17 +28395,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_57 -#AT_START_58 -# 58. long01.at:28: long file names divisible by block size +#AT_STOP_71 +#AT_START_72 +# 72. long01.at:28: long file names divisible by block size at_setup_line='long01.at:28' at_desc="long file names divisible by block size" -$at_quiet $as_echo_n " 58: $at_desc " +$at_quiet $as_echo_n " 72: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "58. long01.at:28: testing ..." + $as_echo "72. long01.at:28: testing ..." $at_traceon @@ -26140,17 +28553,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_58 -#AT_START_59 -# 59. lustar01.at:21: ustar: unsplittable file name +#AT_STOP_72 +#AT_START_73 +# 73. lustar01.at:21: ustar: unsplittable file name at_setup_line='lustar01.at:21' at_desc="ustar: unsplittable file name" -$at_quiet $as_echo_n " 59: $at_desc " +$at_quiet $as_echo_n " 73: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "59. lustar01.at:21: testing ..." + $as_echo "73. lustar01.at:21: testing ..." $at_traceon @@ -26222,17 +28635,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_59 -#AT_START_60 -# 60. lustar02.at:21: ustar: unsplittable path name +#AT_STOP_73 +#AT_START_74 +# 74. lustar02.at:21: ustar: unsplittable path name at_setup_line='lustar02.at:21' at_desc="ustar: unsplittable path name" -$at_quiet $as_echo_n " 60: $at_desc " +$at_quiet $as_echo_n " 74: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "60. lustar02.at:21: testing ..." + $as_echo "74. lustar02.at:21: testing ..." $at_traceon @@ -26311,17 +28724,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_60 -#AT_START_61 -# 61. lustar03.at:21: ustar: splitting long names +#AT_STOP_74 +#AT_START_75 +# 75. lustar03.at:21: ustar: splitting long names at_setup_line='lustar03.at:21' at_desc="ustar: splitting long names" -$at_quiet $as_echo_n " 61: $at_desc " +$at_quiet $as_echo_n " 75: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "61. lustar03.at:21: testing ..." + $as_echo "75. lustar03.at:21: testing ..." $at_traceon @@ -26406,17 +28819,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_61 -#AT_START_62 -# 62. multiv01.at:23: multivolume dumps from pipes +#AT_STOP_75 +#AT_START_76 +# 76. multiv01.at:23: multivolume dumps from pipes at_setup_line='multiv01.at:23' at_desc="multivolume dumps from pipes" -$at_quiet $as_echo_n " 62: $at_desc " +$at_quiet $as_echo_n " 76: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "62. multiv01.at:23: testing ..." + $as_echo "76. multiv01.at:23: testing ..." $at_traceon @@ -26460,7 +28873,7 @@ tar -c --multi-volume --tape-length=\$TAPE_LENGTH \\ mkdir extract-dir-pipe dd bs=4096 count=\$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=\$PATH \${TRUSS} tar -f t1-pipe.tar -f - \\ - -C extract-dir-pipe -x --multi-volume \\ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \\ --tape-length=\$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -26502,7 +28915,7 @@ tar -c --multi-volume --tape-length=$TAPE_LENGTH \ mkdir extract-dir-pipe dd bs=4096 count=$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=$PATH ${TRUSS} tar -f t1-pipe.tar -f - \ - -C extract-dir-pipe -x --multi-volume \ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \ --tape-length=$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -26542,7 +28955,7 @@ tar -c --multi-volume --tape-length=$TAPE_LENGTH \ mkdir extract-dir-pipe dd bs=4096 count=$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=$PATH ${TRUSS} tar -f t1-pipe.tar -f - \ - -C extract-dir-pipe -x --multi-volume \ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \ --tape-length=$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -26591,7 +29004,7 @@ tar -c --multi-volume --tape-length=\$TAPE_LENGTH \\ mkdir extract-dir-pipe dd bs=4096 count=\$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=\$PATH \${TRUSS} tar -f t1-pipe.tar -f - \\ - -C extract-dir-pipe -x --multi-volume \\ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \\ --tape-length=\$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -26633,7 +29046,7 @@ tar -c --multi-volume --tape-length=$TAPE_LENGTH \ mkdir extract-dir-pipe dd bs=4096 count=$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=$PATH ${TRUSS} tar -f t1-pipe.tar -f - \ - -C extract-dir-pipe -x --multi-volume \ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \ --tape-length=$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -26673,7 +29086,7 @@ tar -c --multi-volume --tape-length=$TAPE_LENGTH \ mkdir extract-dir-pipe dd bs=4096 count=$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=$PATH ${TRUSS} tar -f t1-pipe.tar -f - \ - -C extract-dir-pipe -x --multi-volume \ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \ --tape-length=$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -26722,7 +29135,7 @@ tar -c --multi-volume --tape-length=\$TAPE_LENGTH \\ mkdir extract-dir-pipe dd bs=4096 count=\$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=\$PATH \${TRUSS} tar -f t1-pipe.tar -f - \\ - -C extract-dir-pipe -x --multi-volume \\ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \\ --tape-length=\$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -26764,7 +29177,7 @@ tar -c --multi-volume --tape-length=$TAPE_LENGTH \ mkdir extract-dir-pipe dd bs=4096 count=$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=$PATH ${TRUSS} tar -f t1-pipe.tar -f - \ - -C extract-dir-pipe -x --multi-volume \ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \ --tape-length=$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -26804,7 +29217,7 @@ tar -c --multi-volume --tape-length=$TAPE_LENGTH \ mkdir extract-dir-pipe dd bs=4096 count=$TAPE_LENGTH if=t2-pipe.tar 2>/dev/null | PATH=$PATH ${TRUSS} tar -f t1-pipe.tar -f - \ - -C extract-dir-pipe -x --multi-volume \ + -C extract-dir-pipe -x --multi-volume --warning=no-timestamp \ --tape-length=$TAPE_LENGTH --read-full-records || exit 1 cmp file1 extract-dir-pipe/file1 @@ -26827,17 +29240,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_62 -#AT_START_63 -# 63. multiv02.at:28: skipping a straddling member +#AT_STOP_76 +#AT_START_77 +# 77. multiv02.at:28: skipping a straddling member at_setup_line='multiv02.at:28' at_desc="skipping a straddling member" -$at_quiet $as_echo_n " 63: $at_desc " +$at_quiet $as_echo_n " 77: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "63. multiv02.at:28: testing ..." + $as_echo "77. multiv02.at:28: testing ..." $at_traceon @@ -26863,7 +29276,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 )" echo multiv02.at:31 >"$at_check_line_file" @@ -26887,7 +29300,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -26909,7 +29322,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -26943,7 +29356,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 )" echo multiv02.at:31 >"$at_check_line_file" @@ -26967,7 +29380,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -26989,7 +29402,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -27023,7 +29436,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 )" echo multiv02.at:31 >"$at_check_line_file" @@ -27047,7 +29460,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else @@ -27069,7 +29482,7 @@ exec <&- tar -c -f A.tar -f B.tar -f C.tar -M -L 30 en to tre fire || exit 1 echo separator -tar -v -x -f A.tar -f B.tar -f C.tar -M en || exit 1 +tar -v -x -f A.tar -f B.tar -f C.tar -M en --warning=no-timestamp || exit 1 ) ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -27091,17 +29504,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_63 -#AT_START_64 -# 64. multiv03.at:30: MV archive & long filenames +#AT_STOP_77 +#AT_START_78 +# 78. multiv03.at:30: MV archive & long filenames at_setup_line='multiv03.at:30' at_desc="MV archive & long filenames" -$at_quiet $as_echo_n " 64: $at_desc " +$at_quiet $as_echo_n " 78: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "64. multiv03.at:30: testing ..." + $as_echo "78. multiv03.at:30: testing ..." $at_traceon @@ -27146,7 +29559,7 @@ tar -M -L 10 -c -f arch.1 -f arch.2 \$BFILE || exit 1 echo separator-2 mv \$BFILE bfile -tar -M -x -f arch.1 -f arch.2 || exit 1 +tar -M -x -f arch.1 -f arch.2 --warning=no-timestamp || exit 1 cmp \$BFILE bfile )" echo multiv03.at:33 >"$at_check_line_file" @@ -27190,7 +29603,7 @@ tar -M -L 10 -c -f arch.1 -f arch.2 $BFILE || exit 1 echo separator-2 mv $BFILE bfile -tar -M -x -f arch.1 -f arch.2 || exit 1 +tar -M -x -f arch.1 -f arch.2 --warning=no-timestamp || exit 1 cmp $BFILE bfile ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -27232,7 +29645,7 @@ tar -M -L 10 -c -f arch.1 -f arch.2 $BFILE || exit 1 echo separator-2 mv $BFILE bfile -tar -M -x -f arch.1 -f arch.2 || exit 1 +tar -M -x -f arch.1 -f arch.2 --warning=no-timestamp || exit 1 cmp $BFILE bfile ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -27283,7 +29696,7 @@ tar -M -L 10 -c -f arch.1 -f arch.2 \$BFILE || exit 1 echo separator-2 mv \$BFILE bfile -tar -M -x -f arch.1 -f arch.2 || exit 1 +tar -M -x -f arch.1 -f arch.2 --warning=no-timestamp || exit 1 cmp \$BFILE bfile )" echo multiv03.at:33 >"$at_check_line_file" @@ -27327,7 +29740,7 @@ tar -M -L 10 -c -f arch.1 -f arch.2 $BFILE || exit 1 echo separator-2 mv $BFILE bfile -tar -M -x -f arch.1 -f arch.2 || exit 1 +tar -M -x -f arch.1 -f arch.2 --warning=no-timestamp || exit 1 cmp $BFILE bfile ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -27369,7 +29782,7 @@ tar -M -L 10 -c -f arch.1 -f arch.2 $BFILE || exit 1 echo separator-2 mv $BFILE bfile -tar -M -x -f arch.1 -f arch.2 || exit 1 +tar -M -x -f arch.1 -f arch.2 --warning=no-timestamp || exit 1 cmp $BFILE bfile ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -27389,17 +29802,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_64 -#AT_START_65 -# 65. multiv04.at:36: split directory members in a MV archive +#AT_STOP_78 +#AT_START_79 +# 79. multiv04.at:36: split directory members in a MV archive at_setup_line='multiv04.at:36' at_desc="split directory members in a MV archive" -$at_quiet $as_echo_n " 65: $at_desc " +$at_quiet $as_echo_n " 79: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "65. multiv04.at:36: testing ..." + $as_echo "79. multiv04.at:36: testing ..." $at_traceon @@ -27613,17 +30026,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_65 -#AT_START_66 -# 66. multiv05.at:26: Restoring after an out of sync volume +#AT_STOP_79 +#AT_START_80 +# 80. multiv05.at:26: Restoring after an out of sync volume at_setup_line='multiv05.at:26' at_desc="Restoring after an out of sync volume" -$at_quiet $as_echo_n " 66: $at_desc " +$at_quiet $as_echo_n " 80: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "66. multiv05.at:26: testing ..." + $as_echo "80. multiv05.at:26: testing ..." $at_traceon @@ -27786,17 +30199,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_66 -#AT_START_67 -# 67. multiv06.at:27: Multivolumes with L=record_size +#AT_STOP_80 +#AT_START_81 +# 81. multiv06.at:27: Multivolumes with L=record_size at_setup_line='multiv06.at:27' at_desc="Multivolumes with L=record_size" -$at_quiet $as_echo_n " 67: $at_desc " +$at_quiet $as_echo_n " 81: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "67. multiv06.at:27: testing ..." + $as_echo "81. multiv06.at:27: testing ..." $at_traceon @@ -27958,19 +30371,19 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_67 -#AT_START_68 -# 68. multiv07.at:26: volumes split at an extended header +#AT_STOP_81 +#AT_START_82 +# 82. multiv07.at:26: volumes split at an extended header at_setup_line='multiv07.at:26' at_desc="volumes split at an extended header" -$at_quiet $as_echo_n " 68: $at_desc " +$at_quiet $as_echo_n " 82: $at_desc " at_xfail=no test -f \$XFAILFILE && at_xfail=yes test -f $XFAILFILE && at_xfail=yes test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "68. multiv07.at:26: testing ..." + $as_echo "82. multiv07.at:26: testing ..." $at_traceon @@ -27985,6 +30398,8 @@ tarball_prereq xsplit-1.tar 0e008c84c517e48fbf23ca6a7033cde6 $TEST_DATA_DIR $TES test -z "$TEST_DATA_DIR" && exit 77 tarball_prereq xsplit-2.tar 03150b9852d285458f43734e9e0b9a45 $TEST_DATA_DIR $TEST_DATA_URL || exit 77 +exec <&- + cd \$TEST_DATA_DIR tar -t -M -fxsplit-1.tar -fxsplit-2.tar " @@ -28001,6 +30416,8 @@ tarball_prereq xsplit-1.tar 0e008c84c517e48fbf23ca6a7033cde6 $TEST_DATA_DIR $TES test -z "$TEST_DATA_DIR" && exit 77 tarball_prereq xsplit-2.tar 03150b9852d285458f43734e9e0b9a45 $TEST_DATA_DIR $TEST_DATA_URL || exit 77 +exec <&- + cd $TEST_DATA_DIR tar -t -M -fxsplit-1.tar -fxsplit-2.tar ) >"$at_stdout" 2>"$at_stder1" @@ -28015,6 +30432,8 @@ tarball_prereq xsplit-1.tar 0e008c84c517e48fbf23ca6a7033cde6 $TEST_DATA_DIR $TES test -z "$TEST_DATA_DIR" && exit 77 tarball_prereq xsplit-2.tar 03150b9852d285458f43734e9e0b9a45 $TEST_DATA_DIR $TEST_DATA_URL || exit 77 +exec <&- + cd $TEST_DATA_DIR tar -t -M -fxsplit-1.tar -fxsplit-2.tar ) >"$at_stdout" 2>"$at_stderr" @@ -28037,16 +30456,114 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_68 -#AT_START_69 -# 69. old.at:23: old archives +#AT_STOP_82 +#AT_START_83 +# 83. multiv08.at:23: multivolume header creation +at_setup_line='multiv08.at:23' +at_desc="multivolume header creation" +$at_quiet $as_echo_n " 83: $at_desc " +at_xfail=no + test -f $XFAILFILE && at_xfail=yes +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "83. multiv08.at:23: testing ..." + $at_traceon + + + + + + { $at_traceoff +$as_echo "$at_srcdir/multiv08.at:26: +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS=\"-H gnu\" +export TAR_OPTIONS +rm -rf * + +genfile --length 9472 --file a +genfile --length 9984 --file b +decho Creating +tar -c -M -L10 -f A.tar -f B.tar -f C.tar a b +decho Testing +tar -tMR -f A.tar -f B.tar -f C.tar +)" +echo multiv08.at:26 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +genfile --length 9472 --file a +genfile --length 9984 --file b +decho Creating +tar -c -M -L10 -f A.tar -f B.tar -f C.tar a b +decho Testing +tar -tMR -f A.tar -f B.tar -f C.tar +) ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir gnu +(cd gnu +TEST_TAR_FORMAT=gnu +export TEST_TAR_FORMAT +TAR_OPTIONS="-H gnu" +export TAR_OPTIONS +rm -rf * + +genfile --length 9472 --file a +genfile --length 9984 --file b +decho Creating +tar -c -M -L10 -f A.tar -f B.tar -f C.tar a b +decho Testing +tar -tMR -f A.tar -f B.tar -f C.tar +) ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "Creating +Testing +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo >>"$at_stdout"; $as_echo "Creating +Testing +block 0: a +block 21: b +block 43: ** Block of NULs ** +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/multiv08.at:26" + +$at_failed && at_func_log_failure +$at_traceon; } + + + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_83 +#AT_START_84 +# 84. old.at:23: old archives at_setup_line='old.at:23' at_desc="old archives" -$at_quiet $as_echo_n " 69: $at_desc " +$at_quiet $as_echo_n " 84: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "69. old.at:23: testing ..." + $as_echo "84. old.at:23: testing ..." $at_traceon @@ -28092,17 +30609,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_69 -#AT_START_70 -# 70. recurse.at:21: recurse +#AT_STOP_84 +#AT_START_85 +# 85. recurse.at:21: recurse at_setup_line='recurse.at:21' at_desc="recurse" -$at_quiet $as_echo_n " 70: $at_desc " +$at_quiet $as_echo_n " 85: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "70. recurse.at:21: testing ..." + $as_echo "85. recurse.at:21: testing ..." $at_traceon @@ -28421,17 +30938,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_70 -#AT_START_71 -# 71. same-order01.at:26: working -C with --same-order +#AT_STOP_85 +#AT_START_86 +# 86. same-order01.at:26: working -C with --same-order at_setup_line='same-order01.at:26' at_desc="working -C with --same-order" -$at_quiet $as_echo_n " 71: $at_desc " +$at_quiet $as_echo_n " 86: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "71. same-order01.at:26: testing ..." + $as_echo "86. same-order01.at:26: testing ..." $at_traceon @@ -28457,7 +30974,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort )" @@ -28483,7 +31000,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stder1" @@ -28507,7 +31024,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stderr" @@ -28543,7 +31060,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort )" @@ -28569,7 +31086,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stder1" @@ -28593,7 +31110,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stderr" @@ -28629,7 +31146,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort )" @@ -28655,7 +31172,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stder1" @@ -28679,7 +31196,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stderr" @@ -28715,7 +31232,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort )" @@ -28741,7 +31258,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stder1" @@ -28765,7 +31282,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stderr" @@ -28801,7 +31318,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort )" @@ -28827,7 +31344,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stder1" @@ -28851,7 +31368,7 @@ genfile -l 1024 -f file2 tar cf archive file1 file2 mkdir directory -tar -xf archive --same-order -C directory || exit 1 +tar -xf archive --same-order -C directory --warning=no-timestamp || exit 1 ls directory|sort ) ) >"$at_stdout" 2>"$at_stderr" @@ -28875,17 +31392,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_71 -#AT_START_72 -# 72. same-order02.at:25: multiple -C options +#AT_STOP_86 +#AT_START_87 +# 87. same-order02.at:25: multiple -C options at_setup_line='same-order02.at:25' at_desc="multiple -C options" -$at_quiet $as_echo_n " 72: $at_desc " +$at_quiet $as_echo_n " 87: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "72. same-order02.at:25: testing ..." + $as_echo "87. same-order02.at:25: testing ..." $at_traceon @@ -28910,7 +31427,9 @@ mkdir en mkdir to HERE=\`pwd\` -tar -xf archive --same-order -C \$HERE/en file1 -C \$HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \\ + -C \$HERE/en file1 \\ + -C \$HERE/to file2 || exit 1 ls en echo separator @@ -28937,7 +31456,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -28962,7 +31483,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -29000,7 +31523,9 @@ mkdir en mkdir to HERE=\`pwd\` -tar -xf archive --same-order -C \$HERE/en file1 -C \$HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \\ + -C \$HERE/en file1 \\ + -C \$HERE/to file2 || exit 1 ls en echo separator @@ -29027,7 +31552,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -29052,7 +31579,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -29090,7 +31619,9 @@ mkdir en mkdir to HERE=\`pwd\` -tar -xf archive --same-order -C \$HERE/en file1 -C \$HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \\ + -C \$HERE/en file1 \\ + -C \$HERE/to file2 || exit 1 ls en echo separator @@ -29117,7 +31648,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -29142,7 +31675,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -29180,7 +31715,9 @@ mkdir en mkdir to HERE=\`pwd\` -tar -xf archive --same-order -C \$HERE/en file1 -C \$HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \\ + -C \$HERE/en file1 \\ + -C \$HERE/to file2 || exit 1 ls en echo separator @@ -29207,7 +31744,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -29232,7 +31771,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -29270,7 +31811,9 @@ mkdir en mkdir to HERE=\`pwd\` -tar -xf archive --same-order -C \$HERE/en file1 -C \$HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \\ + -C \$HERE/en file1 \\ + -C \$HERE/to file2 || exit 1 ls en echo separator @@ -29297,7 +31840,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -29322,7 +31867,9 @@ mkdir en mkdir to HERE=`pwd` -tar -xf archive --same-order -C $HERE/en file1 -C $HERE/to file2 || exit 1 +tar -xf archive --same-order --warning=no-timestamp \ + -C $HERE/en file1 \ + -C $HERE/to file2 || exit 1 ls en echo separator @@ -29349,17 +31896,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_72 -#AT_START_73 -# 73. shortrec.at:25: short records +#AT_STOP_87 +#AT_START_88 +# 88. shortrec.at:25: short records at_setup_line='shortrec.at:25' at_desc="short records" -$at_quiet $as_echo_n " 73: $at_desc " +$at_quiet $as_echo_n " 88: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "73. shortrec.at:25: testing ..." + $as_echo "88. shortrec.at:25: testing ..." $at_traceon @@ -29728,17 +32275,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_73 -#AT_START_74 -# 74. sparse01.at:21: sparse files +#AT_STOP_88 +#AT_START_89 +# 89. sparse01.at:21: sparse files at_setup_line='sparse01.at:21' at_desc="sparse files" -$at_quiet $as_echo_n " 74: $at_desc " +$at_quiet $as_echo_n " 89: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "74. sparse01.at:21: testing ..." + $as_echo "89. sparse01.at:21: testing ..." $at_traceon @@ -29764,7 +32311,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile )" @@ -29790,7 +32337,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile ) ) >"$at_stdout" 2>"$at_stder1" @@ -29814,7 +32361,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile ) ) >"$at_stdout" 2>"$at_stderr" @@ -29847,7 +32394,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile )" @@ -29873,7 +32420,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile ) ) >"$at_stdout" 2>"$at_stder1" @@ -29897,7 +32444,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile ) ) >"$at_stdout" 2>"$at_stderr" @@ -29930,7 +32477,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile )" @@ -29956,7 +32503,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile ) ) >"$at_stdout" 2>"$at_stder1" @@ -29980,7 +32527,7 @@ echo separator tar tfv archive echo separator mkdir directory -tar Cxf directory archive +tar Cxf directory archive --warning=no-timestamp genfile --stat=name,size sparsefile cmp sparsefile directory/sparsefile ) ) >"$at_stdout" 2>"$at_stderr" @@ -30019,17 +32566,17 @@ done $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_74 -#AT_START_75 -# 75. sparse02.at:21: extracting sparse file over a pipe +#AT_STOP_89 +#AT_START_90 +# 90. sparse02.at:21: extracting sparse file over a pipe at_setup_line='sparse02.at:21' at_desc="extracting sparse file over a pipe" -$at_quiet $as_echo_n " 75: $at_desc " +$at_quiet $as_echo_n " 90: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "75. sparse02.at:21: testing ..." + $as_echo "90. sparse02.at:21: testing ..." $at_traceon @@ -30248,17 +32795,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_75 -#AT_START_76 -# 76. sparse03.at:21: storing sparse files > 8G +#AT_STOP_90 +#AT_START_91 +# 91. sparse03.at:21: storing sparse files > 8G at_setup_line='sparse03.at:21' at_desc="storing sparse files > 8G" -$at_quiet $as_echo_n " 76: $at_desc " +$at_quiet $as_echo_n " 91: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "76. sparse03.at:21: testing ..." + $as_echo "91. sparse03.at:21: testing ..." $at_traceon @@ -30378,17 +32925,17 @@ done $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_76 -#AT_START_77 -# 77. sparsemv.at:21: sparse files in MV archives +#AT_STOP_91 +#AT_START_92 +# 92. sparsemv.at:21: sparse files in MV archives at_setup_line='sparsemv.at:21' at_desc="sparse files in MV archives" -$at_quiet $as_echo_n " 77: $at_desc " +$at_quiet $as_echo_n " 92: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "77. sparsemv.at:21: testing ..." + $as_echo "92. sparsemv.at:21: testing ..." $at_traceon @@ -30633,17 +33180,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_77 -#AT_START_78 -# 78. spmvp00.at:21: sparse files in PAX MV archives, v.0.0 +#AT_STOP_92 +#AT_START_93 +# 93. spmvp00.at:21: sparse files in PAX MV archives, v.0.0 at_setup_line='spmvp00.at:21' at_desc="sparse files in PAX MV archives, v.0.0" -$at_quiet $as_echo_n " 78: $at_desc " +$at_quiet $as_echo_n " 93: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "78. spmvp00.at:21: testing ..." + $as_echo "93. spmvp00.at:21: testing ..." $at_traceon @@ -30770,17 +33317,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_78 -#AT_START_79 -# 79. spmvp01.at:21: sparse files in PAX MV archives, v.0.1 +#AT_STOP_93 +#AT_START_94 +# 94. spmvp01.at:21: sparse files in PAX MV archives, v.0.1 at_setup_line='spmvp01.at:21' at_desc="sparse files in PAX MV archives, v.0.1" -$at_quiet $as_echo_n " 79: $at_desc " +$at_quiet $as_echo_n " 94: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "79. spmvp01.at:21: testing ..." + $as_echo "94. spmvp01.at:21: testing ..." $at_traceon @@ -30907,17 +33454,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_79 -#AT_START_80 -# 80. spmvp10.at:21: sparse files in PAX MV archives, v.1.0 +#AT_STOP_94 +#AT_START_95 +# 95. spmvp10.at:21: sparse files in PAX MV archives, v.1.0 at_setup_line='spmvp10.at:21' at_desc="sparse files in PAX MV archives, v.1.0" -$at_quiet $as_echo_n " 80: $at_desc " +$at_quiet $as_echo_n " 95: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "80. spmvp10.at:21: testing ..." + $as_echo "95. spmvp10.at:21: testing ..." $at_traceon @@ -31044,17 +33591,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_80 -#AT_START_81 -# 81. update.at:28: update unchanged directories +#AT_STOP_95 +#AT_START_96 +# 96. update.at:28: update unchanged directories at_setup_line='update.at:28' at_desc="update unchanged directories" -$at_quiet $as_echo_n " 81: $at_desc " +$at_quiet $as_echo_n " 96: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "81. update.at:28: testing ..." + $as_echo "96. update.at:28: testing ..." $at_traceon @@ -31513,17 +34060,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_81 -#AT_START_82 -# 82. update01.at:29: update directories +#AT_STOP_96 +#AT_START_97 +# 97. update01.at:29: update directories at_setup_line='update01.at:29' at_desc="update directories" -$at_quiet $as_echo_n " 82: $at_desc " +$at_quiet $as_echo_n " 97: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "82. update01.at:29: testing ..." + $as_echo "97. update01.at:29: testing ..." $at_traceon @@ -32047,17 +34594,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_82 -#AT_START_83 -# 83. update02.at:26: update changed files +#AT_STOP_97 +#AT_START_98 +# 98. update02.at:26: update changed files at_setup_line='update02.at:26' at_desc="update changed files" -$at_quiet $as_echo_n " 83: $at_desc " +$at_quiet $as_echo_n " 98: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "83. update02.at:26: testing ..." + $as_echo "98. update02.at:26: testing ..." $at_traceon @@ -32581,17 +35128,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_83 -#AT_START_84 -# 84. volume.at:23: volume +#AT_STOP_98 +#AT_START_99 +# 99. volume.at:23: volume at_setup_line='volume.at:23' at_desc="volume" -$at_quiet $as_echo_n " 84: $at_desc " +$at_quiet $as_echo_n " 99: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "84. volume.at:23: testing ..." + $as_echo "99. volume.at:23: testing ..." $at_traceon @@ -32809,17 +35356,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_84 -#AT_START_85 -# 85. volsize.at:29: volume header size +#AT_STOP_99 +#AT_START_100 +# 100. volsize.at:29: volume header size at_setup_line='volsize.at:29' at_desc="volume header size" -$at_quiet $as_echo_n " 85: $at_desc " +$at_quiet $as_echo_n "100: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "85. volsize.at:29: testing ..." + $as_echo "100. volsize.at:29: testing ..." $at_traceon @@ -33328,17 +35875,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_85 -#AT_START_86 -# 86. comprec.at:21: compressed format recognition +#AT_STOP_100 +#AT_START_101 +# 101. comprec.at:21: compressed format recognition at_setup_line='comprec.at:21' at_desc="compressed format recognition" -$at_quiet $as_echo_n " 86: $at_desc " +$at_quiet $as_echo_n "101: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "86. comprec.at:21: testing ..." + $as_echo "101. comprec.at:21: testing ..." $at_traceon @@ -33364,7 +35911,7 @@ echo \"separator\" tar cfz archive file1 echo \"separator\" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 )" echo comprec.at:25 >"$at_check_line_file" @@ -33388,7 +35935,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -33410,7 +35957,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -33445,7 +35992,7 @@ echo \"separator\" tar cfz archive file1 echo \"separator\" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 )" echo comprec.at:25 >"$at_check_line_file" @@ -33469,7 +36016,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -33491,7 +36038,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -33526,7 +36073,7 @@ echo \"separator\" tar cfz archive file1 echo \"separator\" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 )" echo comprec.at:25 >"$at_check_line_file" @@ -33550,7 +36097,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -33572,7 +36119,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -33607,7 +36154,7 @@ echo \"separator\" tar cfz archive file1 echo \"separator\" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 )" echo comprec.at:25 >"$at_check_line_file" @@ -33631,7 +36178,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -33653,7 +36200,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -33688,7 +36235,7 @@ echo \"separator\" tar cfz archive file1 echo \"separator\" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 )" echo comprec.at:25 >"$at_check_line_file" @@ -33712,7 +36259,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? @@ -33734,7 +36281,7 @@ echo "separator" tar cfz archive file1 echo "separator" mv file1 orig -tar xfv archive +tar xfv archive --warning=no-timestamp cmp orig file1 ) ) >"$at_stdout" 2>"$at_stderr" fi @@ -33758,17 +36305,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_86 -#AT_START_87 -# 87. shortfile.at:26: short input files +#AT_STOP_101 +#AT_START_102 +# 102. shortfile.at:26: short input files at_setup_line='shortfile.at:26' at_desc="short input files" -$at_quiet $as_echo_n " 87: $at_desc " +$at_quiet $as_echo_n "102: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "87. shortfile.at:26: testing ..." + $as_echo "102. shortfile.at:26: testing ..." $at_traceon @@ -33838,17 +36385,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_87 -#AT_START_88 -# 88. shortupd.at:29: updating short archives +#AT_STOP_102 +#AT_START_103 +# 103. shortupd.at:29: updating short archives at_setup_line='shortupd.at:29' at_desc="updating short archives" -$at_quiet $as_echo_n " 88: $at_desc " +$at_quiet $as_echo_n "103: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "88. shortupd.at:29: testing ..." + $as_echo "103. shortupd.at:29: testing ..." $at_traceon @@ -34127,17 +36674,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_88 -#AT_START_89 -# 89. truncate.at:29: truncate +#AT_STOP_103 +#AT_START_104 +# 104. truncate.at:29: truncate at_setup_line='truncate.at:29' at_desc="truncate" -$at_quiet $as_echo_n " 89: $at_desc " +$at_quiet $as_echo_n "104: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "89. truncate.at:29: testing ..." + $as_echo "104. truncate.at:29: testing ..." $at_traceon @@ -34541,17 +37088,17 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_89 -#AT_START_90 -# 90. grow.at:24: grow +#AT_STOP_104 +#AT_START_105 +# 105. grow.at:24: grow at_setup_line='grow.at:24' at_desc="grow" -$at_quiet $as_echo_n " 90: $at_desc " +$at_quiet $as_echo_n "105: $at_desc " at_xfail=no test -f $XFAILFILE && at_xfail=yes echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "90. grow.at:24: testing ..." + $as_echo "105. grow.at:24: testing ..." $at_traceon @@ -34870,16 +37417,16 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_90 -#AT_START_91 -# 91. remfiles01.at:28: remove-files with compression +#AT_STOP_105 +#AT_START_106 +# 106. remfiles01.at:28: remove-files with compression at_setup_line='remfiles01.at:28' at_desc="remove-files with compression" -$at_quiet $as_echo_n " 91: $at_desc " +$at_quiet $as_echo_n "106: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "91. remfiles01.at:28: testing ..." + $as_echo "106. remfiles01.at:28: testing ..." $at_traceon @@ -34888,6 +37435,14 @@ unset TAR_OPTIONS { $at_traceoff $as_echo "$at_srcdir/remfiles01.at:32: +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + cat /dev/null | gzip - > /dev/null 2>&1 || exit 77 @@ -34912,7 +37467,9 @@ EC=\$? sed -n '/(child)/p' err >&2 rm err find . | sort -exit \$EC +# Gzip exit code is propagated to the shell. Usually it is +# 141. We convert all non-zero exits to 2 to make it predictable. +test \$EC && exit 2 " echo remfiles01.at:32 >"$at_check_line_file" @@ -34920,6 +37477,14 @@ if { echo 'Not enabling shell tracing (command contains an embedded newline)' false; }; then ( $at_traceon; +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + cat /dev/null | gzip - > /dev/null 2>&1 || exit 77 @@ -34944,12 +37509,22 @@ EC=$? sed -n '/(child)/p' err >&2 rm err find . | sort -exit $EC +# Gzip exit code is propagated to the shell. Usually it is +# 141. We convert all non-zero exits to 2 to make it predictable. +test $EC && exit 2 ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else ( :; +echo "test" > $$ +chmod 0 $$ +cat $$ > /dev/null 2>&1 +result=$? +rm -f $$ +test $result -eq 0 && exit 77 + + cat /dev/null | gzip - > /dev/null 2>&1 || exit 77 @@ -34974,7 +37549,9 @@ EC=$? sed -n '/(child)/p' err >&2 rm err find . | sort -exit $EC +# Gzip exit code is propagated to the shell. Usually it is +# 141. We convert all non-zero exits to 2 to make it predictable. +test $EC && exit 2 ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? @@ -34999,16 +37576,16 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_91 -#AT_START_92 -# 92. remfiles02.at:28: remove-files with compression: grand-child +#AT_STOP_106 +#AT_START_107 +# 107. remfiles02.at:28: remove-files with compression: grand-child at_setup_line='remfiles02.at:28' at_desc="remove-files with compression: grand-child" -$at_quiet $as_echo_n " 92: $at_desc " +$at_quiet $as_echo_n "107: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "92. remfiles02.at:28: testing ..." + $as_echo "107. remfiles02.at:28: testing ..." $at_traceon @@ -35107,16 +37684,144 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_92 -#AT_START_93 -# 93. gtarfail.at:21: gtarfail +#AT_STOP_107 +#AT_START_108 +# 108. remfiles03.at:28: remove-files with symbolic links +at_setup_line='remfiles03.at:28' +at_desc="remove-files with symbolic links" +$at_quiet $as_echo_n "108: $at_desc " +at_xfail=no +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "108. remfiles03.at:28: testing ..." + $at_traceon + + + +{ $at_traceoff +$as_echo "$at_srcdir/remfiles03.at:31: +mkdir a +mkdir a/b +ln -s b a/c || exit 77 +tar --remove-files -cf a.tar a +genfile --stat a +" +echo remfiles03.at:31 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +mkdir a +mkdir a/b +ln -s b a/c || exit 77 +tar --remove-files -cf a.tar a +genfile --stat a + ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +mkdir a +mkdir a/b +ln -s b a/c || exit 77 +tar --remove-files -cf a.tar a +genfile --stat a + ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo >>"$at_stderr"; $as_echo "genfile: stat(a) failed: No such file or directory +" | \ + $at_diff - "$at_stderr" || at_failed=: +at_func_diff_devnull "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/remfiles03.at:31" + +$at_failed && at_func_log_failure +$at_traceon; } + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_108 +#AT_START_109 +# 109. sigpipe.at:19: sigpipe handling +at_setup_line='sigpipe.at:19' +at_desc="sigpipe handling" +$at_quiet $as_echo_n "109: $at_desc " +at_xfail=no +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "109. sigpipe.at:19: testing ..." + $at_traceon + + + +# Description: Tar 1.23 ignored sigpipe which lead to spurious "write +# error" diagnostics when piping output to another programs. +# Reported-by: "Dmitry V. Levin" +# References: http://lists.gnu.org/archive/html/bug-tar/2010-03/msg00039.html +# <20100319184141.GC30047@wo.int.altlinux.org> + +{ $at_traceoff +$as_echo "$at_srcdir/sigpipe.at:28: +genfile --length 2048 --file first +genfile --length 2048 --file second +genfile --length 2049 --file third + +tar cf archive first second third + +tar tf archive | : +" +echo sigpipe.at:28 >"$at_check_line_file" + +if { echo 'Not enabling shell tracing (command contains an embedded newline)' + false; }; then + ( $at_traceon; +genfile --length 2048 --file first +genfile --length 2048 --file second +genfile --length 2049 --file third + +tar cf archive first second third + +tar tf archive | : + ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; +genfile --length 2048 --file first +genfile --length 2048 --file second +genfile --length 2049 --file third + +tar cf archive first second third + +tar tf archive | : + ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +at_func_diff_devnull "$at_stdout" || at_failed=: +at_func_check_status 0 $at_status "$at_srcdir/sigpipe.at:28" + +$at_failed && at_func_log_failure +$at_traceon; } + + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_109 +#AT_START_110 +# 110. gtarfail.at:21: gtarfail at_setup_line='gtarfail.at:21' at_desc="gtarfail" -$at_quiet $as_echo_n " 93: $at_desc " +$at_quiet $as_echo_n "110: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "93. gtarfail.at:21: testing ..." + $as_echo "110. gtarfail.at:21: testing ..." $at_traceon @@ -35176,16 +37881,16 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_93 -#AT_START_94 -# 94. gtarfail2.at:21: gtarfail2 +#AT_STOP_110 +#AT_START_111 +# 111. gtarfail2.at:21: gtarfail2 at_setup_line='gtarfail2.at:21' at_desc="gtarfail2" -$at_quiet $as_echo_n " 94: $at_desc " +$at_quiet $as_echo_n "111: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "94. gtarfail2.at:21: testing ..." + $as_echo "111. gtarfail2.at:21: testing ..." $at_traceon @@ -35246,16 +37951,16 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_94 -#AT_START_95 -# 95. multi-fail.at:21: multi-fail +#AT_STOP_111 +#AT_START_112 +# 112. multi-fail.at:21: multi-fail at_setup_line='multi-fail.at:21' at_desc="multi-fail" -$at_quiet $as_echo_n " 95: $at_desc " +$at_quiet $as_echo_n "112: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "95. multi-fail.at:21: testing ..." + $as_echo "112. multi-fail.at:21: testing ..." $at_traceon @@ -35376,16 +38081,16 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_95 -#AT_START_96 -# 96. ustar-big-2g.at:21: ustar-big-2g +#AT_STOP_112 +#AT_START_113 +# 113. ustar-big-2g.at:21: ustar-big-2g at_setup_line='ustar-big-2g.at:21' at_desc="ustar-big-2g" -$at_quiet $as_echo_n " 96: $at_desc " +$at_quiet $as_echo_n "113: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "96. ustar-big-2g.at:21: testing ..." + $as_echo "113. ustar-big-2g.at:21: testing ..." $at_traceon @@ -35463,16 +38168,16 @@ done $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_96 -#AT_START_97 -# 97. ustar-big-8g.at:21: ustar-big-8g +#AT_STOP_113 +#AT_START_114 +# 114. ustar-big-8g.at:21: ustar-big-8g at_setup_line='ustar-big-8g.at:21' at_desc="ustar-big-8g" -$at_quiet $as_echo_n " 97: $at_desc " +$at_quiet $as_echo_n "114: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "97. ustar-big-8g.at:21: testing ..." + $as_echo "114. ustar-big-8g.at:21: testing ..." $at_traceon @@ -35550,16 +38255,16 @@ done $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_97 -#AT_START_98 -# 98. pax-big-10g.at:21: pax-big-10g +#AT_STOP_114 +#AT_START_115 +# 115. pax-big-10g.at:21: pax-big-10g at_setup_line='pax-big-10g.at:21' at_desc="pax-big-10g" -$at_quiet $as_echo_n " 98: $at_desc " +$at_quiet $as_echo_n "115: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "98. pax-big-10g.at:21: testing ..." + $as_echo "115. pax-big-10g.at:21: testing ..." $at_traceon @@ -35637,4 +38342,4 @@ done $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_98 +#AT_STOP_115 diff --git a/tests/testsuite.at b/tests/testsuite.at index f581071..c386892 100644 --- a/tests/testsuite.at +++ b/tests/testsuite.at @@ -41,13 +41,13 @@ $1)],$2,$3,$4,$5,$6) m4_define([AT_TAR_WITH_HOOK],[ m4_pushdef([AT_TAR_CHECK_HOOK],[$1]) $2 - + m4_popdef([AT_TAR_CHECK_HOOK])]) m4_define([TAR_IGNREC_HOOK],[ AT_CHECK([grep -v '^.*tar: Record size = ' stderr; exit 0]) ]) - + m4_define([RE_CHECK],[ AT_DATA([$1.re],[$2]) awk '{print NR " " $[]0}' $1 > $[]$.1 @@ -123,6 +123,7 @@ m4_include([append01.at]) m4_include([append02.at]) m4_include([xform-h.at]) +m4_include([xform01.at]) m4_include([exclude.at]) m4_include([exclude01.at]) @@ -130,6 +131,7 @@ m4_include([exclude02.at]) m4_include([exclude03.at]) m4_include([exclude04.at]) m4_include([exclude05.at]) +m4_include([exclude06.at]) m4_include([delete01.at]) m4_include([delete02.at]) @@ -145,9 +147,19 @@ m4_include([extrac05.at]) m4_include([extrac06.at]) m4_include([extrac07.at]) m4_include([extrac08.at]) +m4_include([extrac09.at]) +m4_include([extrac10.at]) +m4_include([extrac11.at]) +m4_include([extrac12.at]) +m4_include([extrac13.at]) +m4_include([extrac14.at]) +m4_include([extrac15.at]) m4_include([label01.at]) m4_include([label02.at]) +m4_include([label03.at]) +m4_include([label04.at]) +m4_include([label05.at]) m4_include([backup01.at]) @@ -158,6 +170,7 @@ m4_include([incr01.at]) m4_include([incr02.at]) m4_include([listed01.at]) m4_include([listed02.at]) +m4_include([listed03.at]) m4_include([incr03.at]) m4_include([incr04.at]) m4_include([incr05.at]) @@ -178,6 +191,7 @@ m4_include([ignfail.at]) m4_include([link01.at]) m4_include([link02.at]) m4_include([link03.at]) +m4_include([link04.at]) m4_include([longv7.at]) m4_include([long01.at]) @@ -192,6 +206,7 @@ m4_include([multiv04.at]) m4_include([multiv05.at]) m4_include([multiv06.at]) m4_include([multiv07.at]) +m4_include([multiv08.at]) m4_include([old.at]) @@ -226,6 +241,9 @@ m4_include([grow.at]) m4_include([remfiles01.at]) m4_include([remfiles02.at]) +m4_include([remfiles03.at]) + +m4_include([sigpipe.at]) m4_include([star/gtarfail.at]) m4_include([star/gtarfail2.at]) diff --git a/tests/update01.at b/tests/update01.at index 161b06f..374b971 100644 --- a/tests/update01.at +++ b/tests/update01.at @@ -55,4 +55,3 @@ a/c ]) AT_CLEANUP - diff --git a/tests/update02.at b/tests/update02.at index 40f90b9..09b7f0b 100644 --- a/tests/update02.at +++ b/tests/update02.at @@ -52,4 +52,3 @@ a/b ]) AT_CLEANUP - diff --git a/tests/volsize.at b/tests/volsize.at index 74ba28b..282e03a 100644 --- a/tests/volsize.at +++ b/tests/volsize.at @@ -57,5 +57,3 @@ abc/CCC AT_CLEANUP # End of volsize.at - - diff --git a/tests/volume.at b/tests/volume.at index 30b405f..87a910b 100644 --- a/tests/volume.at +++ b/tests/volume.at @@ -55,4 +55,3 @@ tar: Error is not recoverable: exiting now [],[],[gnu, oldgnu]) AT_CLEANUP - diff --git a/tests/xform-h.at b/tests/xform-h.at index 28de384..d51a0a6 100644 --- a/tests/xform-h.at +++ b/tests/xform-h.at @@ -1,7 +1,7 @@ # Process this file with autom4te to create testsuite. -*- Autotest -*- # Test suite for GNU tar. -# Copyright (C) 2009 Free Software Foundation, Inc. +# Copyright (C) 2009, 2010 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -30,7 +30,7 @@ AT_SETUP([transforming hard links on create]) AT_KEYWORDS([transform xform xform-h]) -m4_define([xform],[ +m4_pushdef([xformtest],[ echo "$1" tar cf archive --transform="s,^basedir/,,$2" basedir/test basedir/test_link tar tvf archive | sed -n 's/.*test_link link to //p' @@ -41,9 +41,9 @@ mkdir basedir echo "hello" > basedir/test ln basedir/test basedir/test_link -xform(Default transform scope) -xform(Transforming hard links,h) -xform(Not transforming hard links,H) +xformtest(Default transform scope) +xformtest(Transforming hard links,h) +xformtest(Not transforming hard links,H) ], [0], [Default transform scope @@ -54,6 +54,8 @@ Not transforming hard links basedir/test ]) +m4_popdef([xformtest]) + AT_CLEANUP # End of xform-h.at \ No newline at end of file diff --git a/tests/xform01.at b/tests/xform01.at new file mode 100644 index 0000000..71dcc43 --- /dev/null +++ b/tests/xform01.at @@ -0,0 +1,43 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute 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, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301, USA. + +# Transformations should not apply to GNU volume labels. +# Reported by: Thomas Graf +# References: <4C72AB8D.3070706@askja.de> +# http://lists.gnu.org/archive/html/bug-tar/2010-08/msg00035.html + +AT_SETUP([transformations and GNU volume labels]) +AT_KEYWORDS([transform xform xform01 volume]) + +AT_TAR_CHECK([ +genfile --file file +tar -cf archive.tar -V /label/ file +tar tf archive.tar +], +[0], +[/label/ +file +], +[],[],[],[gnu]) + +AT_CLEANUP + + + -- 2.45.2